9
Log4jでMySqlデータベースにエラーを記録しますが、これに関する公式文書はかなりまばらです(なぜ?)。 とにかく、ここでのlog4j.xml設定ファイルでの私の試みです:Log4jデータベース・アペンダー
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/">
<appender name="jdbcAppender" class="org.apache.log4j.jdbc.JDBCAppender">
<param name="URL" value="jdbc:mysql://my_host/my_database" />
<param name="Driver" value="com.mysql.jdbc.Driver" />
<param name="User" value="my_user_name" />
<param name="Password" value="my_passwod" />
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern"
value="INSERT INTO errorlogs (Date, log_level, Application, Message, Exception) VALUES (TIMESTAMP(now()),'%p', ?? '%m', '%e')"
/>
</layout>
</appender>
は、私は、カスタムする「アプリケーション」パラメータを必要とします。私は同じことを行うことができ、私はどのように思っていた
<parameter>
<parameterName value="?application" />
<dbType value="String" />
<size value="50" />
<layout type="log4net.Layout.PatternLayout">
<conversionPattern value="%property{Application}" />
</layout>
</parameter>
:
log4net.GlobalContext.Properties["Application"] = applciation;
と私のXML設定ファイルにそうようにそれを追加します。C#でlog4netのでは、私のコードで私はこのようにそれを追加しますlog4jで?
ありがとうございます!
はありませんので、長い時間前、私はこれを使用します。http://www.mannhaupt.com/danko/projects/が、DBは、ロギングはないような良いidea.Is資源があまりにも「exepensive」です。 – Cris
ええ、私はあなたのポイントを参照してください。将来、TCPAppenderを介してDBログを処理するWebサービスにログを送信したいと思います(これは正しいでしょうか?)。ただし、当面はデータベースに直接記録されます。 – Mathieu