2017-07-23 3 views
1

Ich benutze Jersey 2.22. Ich habe eine LoggingFeature registriert, die Anfragen, Antworten, Header, Payload usw. auf der Grundlage der Ausführlichkeit protokolliert, die ich eingestellt habe, aber ich möchte meinen eigenen benutzerdefinierten Protokollierungsfilter implementieren, den diese Funktion verwenden wird.Verwenden des benutzerdefinierten Protokollierungsfilters mit LoggingFeature für Jersey Client.

Mit Blick auf die Quelle von LoggingFeature, scheint dies nicht möglich. Dies scheint sehr unflexibel zu sein. Mit früheren Versionen von Jersey war es sehr einfach, ein LoggingFilter zu implementieren und es auf dem Client zu registrieren.

Ich würde gerne meine eigene Version von ClientLoggingFilter implementieren, damit ich eine saubere Zeile in mein Protokoll schreiben kann.

Irgendwelche Vorschläge? Die Dokumentation fehlt IMO. https://jersey.github.io/documentation/latest/logging_chapter.html#d0e15744

+0

Sie Frage ist sehr breit, können Sie genauer sein, was möchten Sie protokollieren und mit was genau, wie wäre es mit Code zeigt, was Sie bereits versucht haben? – svarog

+0

Ich habe nichts versucht, weil von dem, was ich Ihnen sagen kann, kann nicht Sie eigene Antwort Filter erweitern/implementieren, wie Sie mit einem LoggingFilter aufgrund der LoggingFeature im Weg sein könnten. Ich möchte Aspekte der Anfrage/Antwort auf die gleiche Weise protokollieren, wie der Standardfilter protokolliert, möchte aber, dass er nach meinen Bedürfnissen formatiert ist. Ich könnte Code anzeigen, wie ich die Protokollierungsfunktion registriere, die funktioniert, aber danach sehe ich keinen Pfad weiter. Ich denke, ich vermisse etwas. –

+0

Können Sie genauer erklären, was Sie meinen, dass Sie Protokollnachrichten nach Ihren Bedürfnissen formatieren möchten? –

Antwort

0

Die Lösung für mich war die Implementierung meiner eigenen Version eines LoggingFeature mit einem benutzerdefinierten Anfrage/Antwort-Container injiziert. Innerhalb des Containers habe ich genau die Protokollierung vorgenommen, die wir benötigt haben.

Scheint wie ein Schritt zurück, nicht in der Lage, einen einfachen Filter zu implementieren und auf den Client für Dinge wie benutzerdefinierte Protokollierung anwenden.

Verwandte Themen