在我的应用程序中,我习惯了以下调试输出:通常它会根据每个请求打印几行到 stderr,但会(通过 log4j)将大量信息记录到文件中。通常,对我来说最重要的是 stderr 输出(这就是为什么我希望它简洁),但是当某些内容未按预期工作时,我可以调查日志,每个请求很容易就会有数千行。
现在我正在将应用程序迁移到 WildFly,我发现服务器通过其日志系统传输所有 stderr 输出,因此它看起来像这样:
14:06:15,464 ERROR [stderr] (default task-13) ACTUAL-DEBUG-OUTPUT
Run Code Online (Sandbox Code Playgroud)
并且还被标记为错误。另外,stdout 输出似乎被重定向到 /dev/null...
我可以以某种方式配置 WildFly 让 stderr 输出按原样通过,而不添加无用的(对我来说)噪音和着色吗?如果可能的话,我想对标准输出做同样的事情。
小智 6
好的,通过一些谷歌搜索和黑客攻击,我得到了我想要的:
/subsystem=logging/console-handler=JUST-PRINT:add(formatter="%s%E%n")
/subsystem=logging/logger=stderr:add(use-parent-handlers="false", handlers=[JUST-PRINT])
/subsystem=logging/logger=stdout:add(use-parent-handlers="false", handlers=[JUST-PRINT])
Run Code Online (Sandbox Code Playgroud)