2009-04-07 6 views
1

Log4Netを使用してSpring.Netにログを記録するのに問題があります。私はとりわけアスペクトのログを見ることに興味があります。 (すなわち、空のファイル)が作成されますが、何もそれに記録されませんLog4Netを使用したSpring.Netロギングが動作しない

... 
<logger name="Spring"> 
    <level value="DEBUG" /> <!-- Have tried INFO as well, no different --> 
    <appender-ref ref="SpringAppender"/> 
</logger> 

<appender name="SpringAppender" type="log4net.Appender.RollingFileAppender"> 
    <file value="..\Log\Spring_Log.txt"/> 
    <appendToFile value="true"/> 
    <maximumFileSize value="100MB"/> 
    <maxSizeRollBackups value="2"/> 
    <layout type="log4net.Layout.PatternLayout"> 
    <conversionPattern value="%date %-5level [%thread] %logger - %message%newline"/> 
    </layout> 
</appender> 
... 

ファイル「Spring_Log.txt」:私はMovieFinder例のアプリと同様の非常に単純なログの設定を、使用しています。 Log4Netは現在、NHibernateと私たちのカスタムアプリケーションロギングで正しくロギングしています。私はSpring.Net v1.2.0.20313とLog4Net v1.2.10.0を使用しています。

解決できた問題を他の誰かが持っていましたか?助けてもらって、ありがとう。

答えて

3

ためhttp://netcommon.sourceforge.net/documentation.htmlを参照してください。 あなたのlog4net設定ファイルは問題ありません。ここで私はあなたの設定ファイルを使用して持っているものです:

2009-05-02 19:08:40,890 DEBUG [10] Spring.Objects.Factory.Support.AbstractObjectDefinitionReader - Loading XML object definitions from config [C:\Documents and Settings\pczapla\My Documents\Visual Studio 2008\Projects\TimeLogger\TimeLogger\bin\Debug\TimeLogger.exe.config#spring/objects] 
2009-05-02 19:08:40,905 DEBUG [10] Spring.Objects.Factory.Support.AbstractObjectDefinitionReader - Using the following XmlReader implementation : System.Xml.XsdValidatingReader 
2009-05-02 19:08:40,921 DEBUG [10] Spring.Objects.Factory.Xml.DefaultObjectDefinitionDocumentReader - Loading object definitions. 
2009-05-02 19:08:40,921 DEBUG [10] Spring.Objects.Factory.Xml.ObjectDefinitionParserHelper - Loading object definitions... 

ここCommon.Loggingを設定するには、どのように迅速にガイドされています

は、それらが同梱されていCommon.Logging & Common.Logging.Log4Netアセンブリを追加libフォルダの春(C:\Program Files\Spring.NET 1.2.0\lib\Net\2.0\)。 は、その後、あなたのapp.configに次の設定を追加します。それ

<configuration> 
    </configSections> 
     ... 
     <sectionGroup name="common"> 
      <section name="logging" type="Common.Logging.ConfigurationSectionHandler, Common.Logging" /> 
     </sectionGroup> 
    </configSections> 
    ... 
    <common> 
     <logging> 
      <factoryAdapter type="Common.Logging.Log4Net.Log4NetLoggerFactoryAdapter, Common.Logging.Log4net"> 
       <!-- Common Logging assumes that log4net is initialized --> 
       <arg key="configType" value="EXTERNAL"/> 
       <!-- Or it can configure log4net for you 
       <arg key="configType" value="FILE-WATCH" /> 
       <arg key="configFile" value="path\to\your\log4net.config" /> 
       --> 
      </factoryAdapter> 
     </logging> 
    </common> 
</configuration> 

であること。今度は、春からデバッグメッセージを受け取るべきです。

1

Spring.NETはCommon.Loggingを使用します。 log4netにログするためにCommon.Loggingを設定しましたか?エーリッヒは、あなたがCommon.Loggingを設定する必要があり、言ったようにドキュメント

HTH、 エーリッヒ

関連する問題