如何在Tomcat控制台日志中记录sessionId?

时间:2019-02-05 16:45:17

标签: tomcat logging

tomcat中发生服务器(500)错误时,我们至少会获得2条日志条目:

  1. 访问日志中的一个
  2. 控制台日志中的一个或多个消息(和/或堆栈跟踪)

为了使控制台中的错误与访问错误相关联,我们想使用在访问日志中通过{​​{1}}(server.xml)获得的会话ID。

我们如何在控制台中获取会话ID?

1 个答案:

答案 0 :(得分:1)

使用此文档中提供的示例配置激活Request Dumper Filter

要在控制台日志中看到(比专用日志更好的主意?),需要将处理程序更改为:

org.apache.catalina.filters.RequestDumperFilter.handlers = java.util.logging.ConsoleHandler

然后您应该在catalina.out中看到类似的内容,同时提供JSESSIONDID和状态代码(在您的情况下为500):

06-Feb-2019 16:59:40.499 INFO [http-nio-8080-exec-1] org.apache.catalina.filters.RequestDumperFilter.doLog http-nio-8080-exec-1             header=Set-Cookie=JSESSIONID=E44588D6574AB1489540509E2A710934; Path=/manager; HttpOnly
..
06-Feb-2019 16:59:40.499 INFO [http-nio-8080-exec-1] org.apache.catalina.filters.RequestDumperFilter.doLog http-nio-8080-exec-1             status=200

您也可以看看此answer