2011-10-28 3 views
6

私たちのアプリケーションではjbossロギングが有効になっています。現在、私たちは 'Rotating-file-handler'を使ってすべてをファイルに記録しています。これはjbossの 'standalone.xml'ファイルで定義されています。私たちは、情報の一部をロギングデータベースにロギングすることも検討しています。
JBoss AS 7のデータベースへのロギングの拡張

誰かがここで利用できるオプションを提供することができますか?私たちの最終目標は、物事がファイルに書き込まれるときです。私たちはそれを傍受してDBに書きます。それはブロッキングコールであるため、インラインで行う必要はありません。

答えて

0

AsyncAppenderを使用して、それにDBAppenderを添付します。非同期部分については、このような

何か:

<async-handler name="ASYNC"> 
    <level name="DEBUG"/> 
    <queue-length value="1024"/> 
    <overflow-action value="BLOCK"/> 
    <subhandlers> 
    <handler name="CONSOLE"/> <!-- if you have these defined --> 
    <handler name="FILE"/> <!-- if you have these defined --> 
    <handler name="DB"/> 
    </subhandlers> 
</async-handler> 

そして(インストールされているかに応じて、またはJDBCAppender)DBAppenderとしてDBを定義します。

<log4j-appender name="DB" class="org.apache.log4j.jdbc.JDBCAppender"> 
     <error-manager> 
     <only-once/> 
     </error-manager> 

    <level name="INFO"/> 
    <properties> 
     <property name="URL">jdbc:postgresql://localhost:5432/data</property> 
    <property name="driver">org.postgresql.Driver</property> 
    <property name="user">admin</property> 
    <property name="password">admin</property> 
    </properties> 

    <formatter> 
     <pattern-formatter pattern="insert into Log values (current_timestamp,'%c', '%t','%p','%m')" /> 
     </formatter> 
    </log4j-appender> 
+0

お願いします。 – shergill

+0

また、使用しているJBossのバージョンによって異なります。 –

+0

あなたはどのファイルを次のように変更していますか? standalone.xml? – shergill

関連する問題