@@ -92,6 +92,7 @@ public class LoggingFilter implements ContainerRequestFilter, ClientRequestFilte
9292 private static final String REQUEST_PREFIX = "> " ;
9393 private static final String RESPONSE_PREFIX = "< " ;
9494 private static final String ENTITY_LOGGER_PROPERTY = LoggingFilter .class .getName () + ".entityLogger" ;
95+ private static final String LOGGING_ID_PROPERTY = LoggingFilter .class .getName () + ".id" ;
9596
9697 private static final Comparator <Map .Entry <String , List <String >>> COMPARATOR =
9798 new Comparator <Map .Entry <String , List <String >>>() {
@@ -228,6 +229,7 @@ private InputStream logInboundEntity(final StringBuilder b, InputStream stream,
228229 @ Override
229230 public void filter (final ClientRequestContext context ) throws IOException {
230231 final long id = this ._id .incrementAndGet ();
232+ context .setProperty (LOGGING_ID_PROPERTY , id );
231233 final StringBuilder b = new StringBuilder ();
232234
233235 printRequestLine (b , "Sending client request" , id , context .getMethod (), context .getUri ());
@@ -246,7 +248,7 @@ public void filter(final ClientRequestContext context) throws IOException {
246248 @ Override
247249 public void filter (final ClientRequestContext requestContext , final ClientResponseContext responseContext )
248250 throws IOException {
249- final long id = this . _id . incrementAndGet ( );
251+ final long id = ( Long ) requestContext . getProperty ( LOGGING_ID_PROPERTY );
250252 final StringBuilder b = new StringBuilder ();
251253
252254 printResponseLine (b , "Client response received" , id , responseContext .getStatus ());
@@ -263,6 +265,7 @@ public void filter(final ClientRequestContext requestContext, final ClientRespon
263265 @ Override
264266 public void filter (final ContainerRequestContext context ) throws IOException {
265267 final long id = this ._id .incrementAndGet ();
268+ context .setProperty (LOGGING_ID_PROPERTY , id );
266269 final StringBuilder b = new StringBuilder ();
267270
268271 printRequestLine (b , "Server has received a request" , id , context .getMethod (), context .getUriInfo ().getRequestUri ());
@@ -279,7 +282,7 @@ public void filter(final ContainerRequestContext context) throws IOException {
279282 @ Override
280283 public void filter (final ContainerRequestContext requestContext , final ContainerResponseContext responseContext )
281284 throws IOException {
282- final long id = this . _id . incrementAndGet ( );
285+ long id = ( Long ) requestContext . getProperty ( LOGGING_ID_PROPERTY );
283286 final StringBuilder b = new StringBuilder ();
284287
285288 printResponseLine (b , "Server responded with a response" , id , responseContext .getStatus ());
0 commit comments