2017-12-27 25 views
0

ピーク時に要求応答のサイクルが速いWCFサービスがあります。これは、約5000〜8000回のリクエストが可能です。 接続に問題があり、応答コードが500件ありました。 私は、サーバー側で発生しているエラーをトレースするためにトレースリスナを有効にしました。 最終的に私はエラーを見つけることができますが、これは修正されています。 今WCFは正常に動作しています。 しかし、問題はWeb_tracelogファイルのサイズが指数関数的に増加していることです。 トレースビューアでファイルを開こうとすると、エラーや問題は表示されません。Web_tracelogのサイズが指数関数的に増加しています

ファイルを削除しました。

30分以内に、サイズは再び200 MBでした。 しかし、ファイルを開いたときにファイルに何もなかったので、ファイルからトレースがロードされていないと表示されます。

これを理解するのは少し難しいです。 tracelistenerを有効にしたままにしたい場合は、エラーがある場合はトレースすることができます。

答えて

0

例えば、通常VerboseErrorにあるトレース構成用のスイッチの設定を変更することを検討してください:

<add name="System.Net" value="Error"/> 

This postCriticalErrorVerboseWarning、およびInformationとして可能な値を説明します。詳細については説明しませんが、私はErrorVerbose以下の書き込みを行うと推論しています。

私は空のファイルの問題は、TextWriterTraceListenerでのキャッシングの動作と考えています。 autoflush=trueであっても、アプリケーション(この場合はWCFサービス)を停止してキャッシュをフラッシュし、ファイル内のすべてを取得する必要があります。 This postは、それを8kbのチャンクでバッファリングすると説明していますが、私はそれをさらに多くキャッシュしています。他の誰かがそれを説明するかもしれない。

関連する問題