2011-01-19 13 views
2

Log4NetはDB2接続用のappenderをロードできません。理由はわかりません。ログはファイルシステムに正常に書き込まれますが、DB2ロギングは発生していません。 Log4Netのバージョンはv1.2.10.0です。Log4Net Appender Not Loading

<log4net> 
    <appender name="AdoNetAppender" type="log4net.Appender.AdoNetAppender"> 
    <bufferSize value="100" /> 
    <connectionType value="IBM.Data.DB2.DB2Connection,IBM.Data.DB2, Version=8.1.2.1" /> 
    <connectionString value="server=db2Server;database=dbName;user Id=userId1;password=password;persist security info=true" /> 
    <commandText value="INSERT INTO GOSDDL.EXCEPTION_LOG (APP_LOG_TS,THREAD,LEVEL,LOGGER,MESSAGE,EXCEPTION) VALUES (@log_date,@thread,@log_level,@logger,@message,@exception)" /> 
    <parameter> 
     <parameterName value="@log_date" /> 
     <dbType value="DateTime" /> 
     <layout type="log4net.Layout.RawTimeStampLayout"> 
     <conversionPattern value="%utcdate" /> 
     </layout> 
    </parameter> 
    <parameter> 
     <parameterName value="@thread" /> 
     <dbType value="String" /> 
     <size value="255" /> 
     <layout type="log4net.Layout.PatternLayout"> 
     <conversionPattern value="%thread" /> 
     </layout> 
    </parameter> 
    <parameter> 
     <parameterName value="@log_level" /> 
     <dbType value="String" /> 
     <size value="50" /> 
     <layout type="log4net.Layout.PatternLayout"> 
     <conversionPattern value="%level" /> 
     </layout> 
    </parameter> 
    <parameter> 
     <parameterName value="@logger" /> 
     <dbType value="String" /> 
     <size value="255" /> 
     <layout type="log4net.Layout.PatternLayout"> 
     <conversionPattern value="%logger" /> 
     </layout> 
    </parameter> 
    <parameter> 
     <parameterName value="@message" /> 
     <dbType value="String" /> 
     <size value="4000" /> 
     <layout type="log4net.Layout.PatternLayout"> 
     <conversionPattern value="%message" /> 
     </layout> 
    </parameter> 
    <parameter> 
     <parameterName value="@exception" /> 
     <dbType value="String" /> 
     <size value="2000" /> 
     <layout type="log4net.Layout.ExceptionLayout" /> 
    </parameter> 
    </appender> 

    <appender name="RollingFile" type="log4net.Appender.RollingFileAppender"> 
    <file value="../logs" /> 
    <appendToFile value="true"/> 
    <maximumFileSize value="512KB"/> 
    <maxSizeRollBackups value="2"/> 
    <rollingStyle value="Date"/> 
    <datePattern value=".yyyy-MM-dd.lo" /> 
    <staticLogFileName value="false" /> 
    <layout type="log4net.Layout.PatternLayout"> 
     <conversionPattern value="%d %l %-2p - %m%n"/> 
    </layout> 
    <filter type="log4net.Filter.LevelRangeFilter"> 
     <levelMin value="INFO"/> 
     <levelMax value="FATAL"/> 
    </filter> 
    </appender> 

    <root> 
    <level value="INFO"/> 
    <appender-ref ref="RollingFile"/> 
    </root> 
</log4net> 
+0

log4netで内部デバッグを有効にして、疑わしいものが見つかったかどうかを確認してください。 http://logging.apache.org/log4net/release/faq.htmlセクション「log4netの内部デバッグを有効にする方法」を参照してください。 –

+0

ありがとうございました。私はこれを有効にしました。これは、アペンダーがピックアップされていないことがわかった方法です。それは私が追加しようとしているアペンダーを認識していないようです。しかし、私の問題が何であるかはわかりません。 Log4net:Logger:logger [System.Exception]リポジトリ[log4net-default-repository]に対してアペンダーが見つかりませんでした。 – Nic

答えて

3

投稿した設定ファイルは実際にはAdoNetAppenderを使用していません。これは2番目の最後の行でRollingFileをAdoNetAppenderに置き換える問題でしょうか?

そうでない場合は、残りの設定ファイルを投稿できますか?

+0

時には明白な点だけが必要です。最終的なノードにも注意を払ってくれてありがとうございました。 – Nic