在Spring中跨线程传递Log4j2 ThreadContext

时间:2016-05-03 22:14:40

标签: spring spring-mvc log4j2 spring-rest

目标是为每个请求的所有日志语句提供唯一的Id(由于AsynRestTemplate用法,它可以生成多个线程)。我有一种情况,其中“ListenableFutureCallback”onFailure()重新调整异常。抛出异常时,将编写Global Exception Handler扩展“ResponseEntityExceptionHandler”。我需要将log4j2 ThreadContext从onFailure传递给ResponseEntityExceptionHandler。 someErrorHandler()方法,以便log4j可以记录该请求的唯一ID,以关联该调用的内容。

我可以根据需要提供更多细节。感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

这只是猜测,但我会看看你是否可以将ThreadContext属性作为标题添加到响应中。我认为它们可以在你想要的所有地方使用。