2012-07-24 56 views
1

我開發了一個servlet,輸出我的JBoss 7.1的server.log文件以方便調試。JBoss server.log輸出定製

我想要做的是自定義JBoss的輸出,並顯示每行產生的輸出。

爲了更好地理解這是一個示例輸出現在:

server log as a servlet

什麼,我想還是要輸出的東西,將標識從中部署這個輸出是從哪裏來的。

每個輸出我發現7001端口是爲每個不同的部署後,許多URL後,但不知道如何與戰爭文件相關聯的是....

任何人有一個想法我該怎麼做?

在此先感謝

UPDATE

,我發現這個網頁約http://java.dzone.com/articles/configuring-logging-jboss JBoss的配置上,但不幸的是另一個版本。這裏解釋瞭如何讓log4j在每個部署中創建不同的日誌文件。這對我來說是最終的解決方案。

回答

1

首先,它似乎(從日誌的內容),您使用的System.out.println和通信System.err.println。

如果您打開記錄到SLF4J,log4j的,共享記錄和課程的jboss-記錄的(謝謝你,詹姆斯)就可以看到你是從什麼記錄包。

一旦您使用正確的日誌記錄功能,您可以通過編輯配置文件按類別進行過濾。

還記錄將顯示更多可讀即:

05:21:42,272 INFO [org.jboss.as.connector.subsystems.datasources] (ServerService Thread Pool -- 27) JBAS010403: Deploying JDBC-compliant driver class org.h2.Driver (version 1.3) 

我會假設你使用在$ JBOSS_HOME獨立配置/單機/配置/ standalone.xml

你需要找到記錄子系統

<subsystem xmlns="urn:jboss:domain:logging:1.1"> 

,創造型週期性旋轉文件處理程序的一個新的appender:

 <periodic-rotating-file-handler name="APPLOG1"> 
      <formatter> 
       <pattern-formatter pattern="%d{HH:mm:ss,SSS} %-5p [%c] (%t) %s%E%n"/> 
      </formatter> 
      <file relative-to="jboss.server.log.dir" path="applog1.log"/> 
      <suffix value=".yyyy-MM-dd"/> 
      <append value="true"/> 
     </periodic-rotating-file-handler> 

然後添加過濾器:

  <logger category="com.yourapppackage"> 
      <level name="INFO"/> 
      <handler name="APPLOG1"/> 
     </logger> 

這應該做的工作。

如果我沒有記錯,你也可以從管理控制檯和CLI

問候

+1

我想補充你可以使用JBoss記錄過於創建追加程序和類別過濾器。這就是服務器使用的。 – 2012-07-24 18:02:00

+0

我還沒有添加任何日誌記錄工具。它的默認值。是的,我有獨立安裝 – MaVRoSCy 2012-07-24 19:45:52

+0

是你的應用程序的那些日誌語句? – 2012-07-24 21:41:46