2017-02-28 15 views
0

これは私の最初のロギングですが、同様の質問をしましたが、私の状況を把握していないようです。Log4Netは.txtファイルを作成していませんか?

Log4Netを使用して.txtファイルを作成しようとしています。私はweb.configやapp.configを持っていないので、Log4Netをセットアップするための独自の設定ファイルを作成しました(調査によって、私はこれを行うことができるはずです)。設定ファイルは以下の通りです:

Log4Net.config

<?xml version="1.0" encoding="utf-8" ?> 
<configuration> 
<configSections> 
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler, log4net"/> 
</configSections> 
<log4net debug="true"> 
<appender name="RollingLogFileAppender" type="log4net.Appender.RollingFileAppender"> 
    <file value="C:\myFolder\TestLog.txt" />//******Nothing Is Being Created Here**** 
    <appendToFile value="true" /> 
    <rollingStyle value="Size" /> 
    <maxSizeRollBackups value="10" /> 
    <maximumFileSize value="10MB" /> 
    <staticLogFileName value="true" /> 
    <layout type="log4net.Layout.PatternLayout"> 
    <conversionPattern value="%date [%thread] %level %logger - %message%newline" /> 
    </layout> 
</appender> 

<root> 
    <level value="DEBUG" /> 
    <appender-ref ref="RollingLogFileAppender" /> 
</root> 
</log4net> 
</configuration> 
私のAssemblyInfo.csで

[assembly: log4net.Config.XmlConfigurator(ConfigFile = 
      "Log4Net.config", Watch = true)] 

ロガーへの呼び出し

.... 
private static readonly ILog logger = LogManager.GetLogger("ExportLogger"); 
.... 
log4net.Config.XmlConfigurator.Configure();//I know this shouldnt be done here, just testing 
logger.Debug("Successfully logged something"); 

上記のコードのすべての実行間違いなく、私は間違いがどこにあるのか分かりません。私は設定の設定が間違っていると思う。誰でも私が間違っていること、なぜ.txtファイルが作成されていないのかを誰でも見ることができますか?

+0

チェック書き込みアクセス権「C:\ MyFolderを」 – Sergey

+1

はそれだけの権限ではないと仮定 - あなたは、スタンドアロンのlog4netのを使用しているとして、 app/web.configファイルにのみ適用されるので、おそらく ''と ''要素を削除するべきです。また、 'log4net.Config.XmlConfigurator.Configure()'のオーバーロードを使用して、そのファイルを渡すこともできます。 LogManager.GetRepository()。Configuredをチェックすると、設定がロードされているかどうかを確認できます。それでも動作しない場合は、[トレースリスナをデバッグ出力に追加](http://haacked.com/archive/2006/09/27/Log4Net_Troubleshooting.aspx/) – stuartd

+0

log4net.dllがbinディレクトリにありますか? –

答えて

0

あなたの属性でエラー:

[assembly: log4net.Config.XmlConfigurator(ConfigFile = 
     "Log4Net.config", Watch = true)] 

は、設定ファイルを定義しますが、設定のためのapp.configを使用しています。

これはあなたの問題を解決します:あなたのフォルダにアプリケーションプールユーザーの

[assembly: log4net.Config.XmlConfigurator()] 
関連する問題