代码之家  ›  专栏  ›  技术社区  ›  Marc

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

  •  1
  • Marc  · 技术社区  · 7 年前

    当tomcat中出现服务器(500)错误时,我们至少会得到2个日志条目:

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

    为了将控制台中的错误与访问错误关联起来,我们希望使用 %S (server.xml)访问日志。

    如何在控制台中获取会话id?

    1 回复  |  直到 7 年前
        1
  •  1
  •   Eugène Adell    7 年前

    激活 Request Dumper Filter 使用本文档中给出的示例配置。

    正如您希望在控制台日志中看到的那样(比专用日志更好吗?),您需要将处理程序更改为:

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

    那么你应该在卡塔利纳看到这样的情况。给出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 也