所以我一直試圖在JBoss EAP 6.1的耳朵應用程序中使用自定義log4j.xml。我發現,如果我使用文件appender和直接的靜態文件名,它會按照我的預期登錄到該文件(在這種情況下,在我的war中使用log4j2.xml,但如果使用log4j.xml,它也會執行相同的操作與log4j的1.2):jboss eap 6.1自定義log4j到server.log
<?xml version="1.0" encoding="UTF-8" ?>
<Configuration status="debug">
<Appenders>
<Console name="STDOUT" target="SYSTEM_OUT">
<PatternLayout pattern="%d %-5p [%t] %C{2} (%F:%L) - %m%n" />
</Console>
<File name="A1" fileName="server.log">
<PatternLayout pattern="%t %-5p %c{2} - %m%n" />
</File>
</Appenders>
<Loggers>
<Logger name="com.xxx.yyy" level="debug" additivity="false">
<AppenderRef ref="A1" />
</Logger>
</Loggers>
</Configuration>
但是,這將導致它記錄到[JBoss的-EAP] /bin/server.log。我可以把替換變量把它指向JBoss的日誌目錄下的文件(在EAP的情況下,[的jboss-EAP] /standalone/log/test.log):
<?xml version="1.0" encoding="UTF-8" ?>
<Configuration status="debug">
<Appenders>
<Console name="STDOUT" target="SYSTEM_OUT">
<PatternLayout pattern="%d %-5p [%t] %C{2} (%F:%L) - %m%n" />
</Console>
<File name="A1" fileName="${sys:jboss.server.log.dir}/test.log">
<PatternLayout pattern="%t %-5p %c{2} - %m%n" />
</File>
</Appenders>
<Loggers>
<Logger name="com.xxx.yyy" level="debug" additivity="false">
<AppenderRef ref="A1" />
</Logger>
</Loggers>
</Configuration>
,我可以看到,它正在替換我:
16:16:28,626 INFO [stdout] (ServerService Thread Pool -- 71) 2014-10-30 16:16:28,626
DEBUG Starting FileManager C:\Users\xxxxxx\Apps\jbossdevstudio\runtimes\jboss-
eap\standalone\log/test.log
輸出將實際顯示在test.log中。但我真正想要的只是將日誌記錄到標準的server.log中。如果我嘗試上面的替換,但使用server.log而不是test.log,則實際上沒有記錄。我嘗試過的另一件事是使用控制檯的appender,但後來我得到的日誌時間戳兩次,並有兩個日誌級別指標很長的輸出線:
16:24:08,038 INFO [stdout] (http-/0.0.0.0:8080-1) 2014-10-30 16:24:08,036 INFO
[http-/0.0.0.0:8080-1] com.xxx.TestServlet (TestServlet.java:25) - This is a test
當我真正想要的只是:
2014-10-30 16:24:08,036 INFO [http-/0.0.0.0:8080-1] com.xxx.TestServlet
(TestServlet.java:25) - This is a test
所以我不知道如何做到這一點。我們可以配置jboss內部日誌記錄配置,但在我們的組織中,在服務器中更改這些內容涉及我們的中間件團隊,如果需要調整某些類的日誌級別,我們寧願更改自定義log4j.xml。如果需要,我們可以使用更長的輸出,但我們也使用Splunk,並且我認爲它會在stdout輸出的日誌級別上感到困惑,而不是在嘗試按日誌級別過濾日誌時實際記錄的內容。
我會很感激任何意見,人們有。