使用log4j2时如何清理记录的数据?

时间:2017-12-05 19:54:22

标签: filter log4j2 interceptor esapi

我需要使用log4j2验证当前正在编写的日志,以清理传递给它的输入。我看到ESAPI API提供了一个清除传递给它的输入的选项。

我的问题是我不确定如何将ESAPI用于日志记录方法。

我是否需要在登录我的方法时添加过滤器或拦截器,以便相应地透明地过滤和清理记录的文本,或者我应该编写一个扩展基本Logger类的自定义Logger类,然后通过相应的日志记录将调用包装到ESAPI api。

如果有人遇到类似的问题,请你帮我解决。

1 个答案:

答案 0 :(得分:1)

我猜测,使用“sanitize”,你的意思是混淆密码字符串,或者用标记替换ID。

Log4j2提供了一个Rewrite appender,允许您在将LogEvent传递到目标(例如File)Appender之前将其替换为另一个LogEvent。

或者,您可以使用Log4j2 Filters来阻止某些日志事件转到某些(或所有)appender。这可能对您的需求来说过于激烈。