3

log4net を使用する Windows サービスがあります。問題のサービスの実行速度が非常に遅いことに気付き、デバッガーをアタッチしてステップスルーしました。log4net を介してログにエントリを書き込もうとするたびに、次のコード行が実行されるまでに 10 ~ 30 秒かかるようです。明らかにこれは加算されます...

サービスは 2.0 .net です。log4Net 1.2.0.30714 を使用しています。Vista を実行しているマシンと Windows Server 2003 を実行しているマシンでこれをテストしたところ、同じまたは類似の結果が得られました。

4

6 に答える 6

1

Jeff はPodcast 20で Log4Net のパフォーマンスの問題について言及しました。同様の問題が発生している可能性があります。

于 2008-11-10T22:15:49.370 に答える
1

誰かが設定ファイルに SMPTAppender を追加し、アプリの設定ファイルを上書きしていたことが判明しました。その結果、誤った SMPT サーバー アドレスに到達できませんでした。log4net は、リクエストごとに 1 分間エラーをログに記録しようとしましたが、あきらめて次のコード行に進みました。SMTPアドレスを修正すると問題が解決しました。

于 2008-11-13T22:05:29.057 に答える
0

構成ファイルで Log4Net 設定を確認してください。Log4Net は、リモート マシンにログを記録するように構成できます。接続が遅い場合は、ログ速度も遅くなります。

于 2008-11-10T23:06:16.897 に答える
0

adonet アペンダーを使用して log4net を使用していますが、Windows サービスのパフォーマンスが低下することはありません。どのアペンダーを使用していますか?

于 2008-11-10T22:16:10.510 に答える
0

まあ、私はリモートではありません...これは、実行中のマシンのログファイルに書き込んでいます。これが私のアペンダー設定です:

<appender name="RollingFileAppender" type="log4net.Appender.RollingFileAppender,log4net">
      <file value="D:\\ROPLogFiles\\FileProcessor.txt" />
      <appendToFile value="true" />
      <datePattern value="yyyyMMdd" />
      <rollingStyle value="Date" />
      <layout type="log4net.Layout.PatternLayout,log4net">
        <param name="ConversionPattern" value="%d [%t] %-5p %c [%x] - %m%n" />
      </layout>
      <threshold value="INFO" />
    </appender>
于 2008-11-11T15:52:18.753 に答える
0

デフォルトの最大ファイル サイズは 10mb です。ファイルがこの程度のサイズで、ファイル システムが非常にいっぱいで、おそらく断片化が激しい場合は、そこに問題がある可能性があります。ログファイルの大きさは?ギガバイトサイズのログファイルで同様の問題が発生しました。

于 2008-11-11T16:31:31.670 に答える