2016-03-03 329 views
0

我得到了生成日誌文件的log4j2.xml。下面是配置:如何使用Log4j2配置Apache Chainsaw中的端口

<Configuration status="INFO" advertiser="multicastdns"> 
    <Properties> 
     <Property name="layout">%d | %-5p | [%t] | %c{2} | %M | %m%n 
     </Property> 
    </Properties> 
    <Appenders> 
     <RollingFile name="LogFile" fileName="${sys:user.home}/logs/webapp.log" 
      filePattern="${sys:user.home}/logs/webapp-%d{yyyy-MM-dd}-%i.log" 
      bufferedIO="false" advertiseURI="file:///C://users/bilguuna/logs/webapp.log" 
      advertise="true"> 
      <PatternLayout pattern="${layout}" /> 
      <Policies> 
       <TimeBasedTriggeringPolicy /> 
       <SizeBasedTriggeringPolicy size="1 MB" /> 
      </Policies> 
      <DefaultRolloverStrategy max="10" /> 
     </RollingFile> 
    </Appenders> 
    <Loggers> 
     <Root level="INFO"> 
      <AppenderRef ref="LogFile" level="INFO" /> 
     </Root> 
    </Loggers> 
</Configuration> 

我能看到使用

文件中的日誌文件:/// C://users/bilguuna/logs/webapp.log

在瀏覽器上。

一個問題是,在ZeroConf選項卡上,我的appender「LogFile」出現連接狀態爲「已連接」。但是當我雙擊那一行時,它只是變成斷開/連接。當我檢查電鋸日誌。它說連接拒絕如下圖: enter image description here

我想這是因爲電鋸選擇4555作爲默認端口,這是我的機器上不打開。那麼應該選擇什麼端口以及如何在我的log4j2.xml文件中設置它?

感謝

更新:我使用的顯影液快照版本後爲@Scott建議,這似乎是「連接被拒絕」問題就走了。但是我仍然看不到日誌。當我點擊ZeroConf選項卡上的條目時,它仍將連接狀態更改爲已連接/未連接。這裏是從鏈鋸日誌選項卡的日誌: enter image description here

同樣,我應該看到實際的日誌,當我雙擊ZeroConf選項卡上的條目? 更新:我有以下我的控制檯上的異常:

WARNING: SocketListener(WS00943.local.).run() exception 
java.io.IOException: DNSIncoming corrupted message 
    at javax.jmdns.impl.DNSIncoming.<init>(DNSIncoming.java:239) 
    at javax.jmdns.impl.SocketListener.run(SocketListener.java:50) 
Caused by: java.lang.IllegalStateException: Can't overwrite cause with java.lang.IllegalStateException: Illegal access: this web application instance has been stopped already. Could not load [javax.jmdns.impl.constants.DNSResultCode]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the illegal access. 
    at java.lang.Throwable.initCause(Unknown Source) 
    at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForClassLoading(WebappClassLoaderBase.java:1344) 
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1206) 
    at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1167) 
    at javax.jmdns.impl.DNSIncoming.readAnswer(DNSIncoming.java:342) 
    at javax.jmdns.impl.DNSIncoming.<init>(DNSIncoming.java:229) 
    ... 1 more 
Caused by: java.lang.ClassNotFoundException 
    at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForClassLoading(WebappClassLoaderBase.java:1343) 
    ... 5 more 

回答

1

問題是你需要使用電鋸的最新開發快照與log4j2工作。 webstart可運行版本僅適用於log4j1。

開發快照,請訪問:http://home.apache.org/~sdeboy/

+0

謝謝斯科特,我已經使用了開發快照,但仍然沒有運氣。我已經更新了我的問題。如果您從更新的問題中看到圖像。 WS00943是我機器的本地域,smdi.com是網絡域,10.20.91.29是我機器的IP地址。它似乎試圖連接到WS00943.smdi.com/10.20.91.29:4555。這是應該的方式嗎? – Bilguun