Logging 停止WLP将System.out写入messages.log

Logging 停止WLP将System.out写入messages.log,logging,websphere,websphere-liberty,websphere-8,Logging,Websphere,Websphere Liberty,Websphere 8,我有一个WebSphere应用程序,它使用一些第三方库将HTTP通信写入System.out/PrintWriter。默认情况下,WLP会将这些消息写入messages.log文件。我想禁用此功能,因为HTTP流量中可能存在我不想记录的合理数据 我只看到console.log LogLevel的设置,但没有看到messages.log的设置。是否有办法设置此文件的日志级别或仅禁用它?无法将Liberty配置为不将System.out消息存储在messages.log文件中 我从你上面的评论中看到

我有一个WebSphere应用程序,它使用一些第三方库将HTTP通信写入
System.out
/
PrintWriter
。默认情况下,WLP会将这些消息写入messages.log文件。我想禁用此功能,因为HTTP流量中可能存在我不想记录的合理数据


我只看到console.log LogLevel的设置,但没有看到messages.log的设置。是否有办法设置此文件的日志级别或仅禁用它?

无法将Liberty配置为不将System.out消息存储在messages.log文件中

我从你上面的评论中看到,你已经找到了这个特殊案例的解决方案。对于阅读本文的其他人来说,如果您真的陷入困境,您可以编写自己的PrintStream,并使用
System.setOut(PrintStream)
来过滤真正进入标准输出的内容。在委托给Liberty PrintStream之前,您的PrintStream可以在所有打印方法的开始处实现过滤器

PrintStream libertyPrintStream = System.out;
PrintStream myPrintStream = new MyPrintStream(libertyPrintStream);
System.setOut(myPrintStream);

您是否尝试将
元素添加到
server.xml
?如果框架使用的是标准的JUL日志记录,那么您可能可以定义lit,比如
com.your.third.party.packages.*=off
I刚刚通过更改引起问题的第三方库的日志记录配置解决了这个问题。但由于我认为这并不总是一个可行的解决方案,我将把这个问题留待讨论。