我犯了错误,并且在部署到生产之前没有从代码中删除调试行,并且一些不应该在日志中的信息在jboss日志文件中。如何让java程序通过keword过滤掉所有不需要的行?或者有没有这方面的工具?

有帮助吗?

解决方案

JBoss的日志记录由log4j处理,log4j配置文件是 conf / jboss-log4j.xml 。看看这个,如果有必要阅读log4j手册,它应该是相当不言自明的。如果您需要更多帮助,请提供一些您想要删除的行的示例。

其他提示

听起来你在问如何从现有日志中删除某些行。

以下是我在生产中启用调试后用于删除DEBUG消息的原因:

perl -w -n -i -e 'print unless ( /DEBUG/../ERROR|WARN|INFO|FATAL/ && !/ERROR|WARN|INFO|FATAL/)' server.log.1

您可以替换 perlre 中仅匹配您要删除的行内的任何内容,例如:

perl -w -n -i -e 'print unless ( /SensitiveDebugInfo/ )' server.log.1

我肯定只会在已经翻过的日志上运行此操作,以避免perl和amp;的潜在文件损坏。 jboss同时写入文件。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top