【问题标题】:Log current user in web app在 Web 应用程序中记录当前用户
【发布时间】:2016-09-05 18:01:37
【问题描述】:

我想记录我的网络应用程序的当前用户。我用自己的 StrLookup 接口实现尝试了这个,我调用了 Environment.getCurrentUser() 之类的东西,但是在记录器的初始化期间只执行一次查找。是否有线程特定的查找功能,每次都会执行,例如模式中的关键字?

【问题讨论】:

    标签: java html web log4j2


    【解决方案1】:

    我所做的是使用 servlet 过滤器或 Spring Interceptor 并在请求之前将项目添加到 Log4j2 ThreadContext,然后在请求之后将其删除。这将导致信息包含在每个记录事件中,并且可以通过 %X 转换器在模式布局中引用。

    有关示例,请参阅 http://logging.apache.org/log4j/2.x/manual/eventlogging.html

    如果您想编写一个必须对所涉及的客户或客户敏感但又不想通过每个方法都传递客户或客户 ID 的应用程序,这可能会很有用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-09-01
      • 1970-01-01
      • 1970-01-01
      • 2018-09-22
      • 1970-01-01
      • 2012-06-12
      • 2010-10-22
      • 1970-01-01
      相关资源
      最近更新 更多