8

.NET フレームワークの多くのクラス (特に、私が調べているソケット/ネットワーク クラス) は、System.Net.GlobalLog (内部クラス) を使用してトレース メッセージをどこかに記録します。SslState クラスの GlobalLog.Assert や GlobalLog.Print などの使用例を確認できます。

SslStream ソース コード

これは System.Net.Logging (これも内部) クラスとは異なり、その使用法はソケット/ネットワーク クラス全体でも見られます。

System.Net.Logging については、App.Config で <system.diagnostics> 構成ブロックを使用できることを知っています。適切に構成されていれば、System.Net.Logging メッセージがログに記録されます。ただし、これは System.Net.GlobalLog には影響しないようです。

約 1 時間検索した後、System.Net.GlobalLog の出力の場所に関する情報が見つからないようです。これの出力を見つけ/表示/制御する方法を知っている人はいますか?

4

2 に答える 2

2

おっしゃるとおり、GlobalLog は System.Net アセンブリの内部クラスです。System.Net アセンブリを変更できなければ、そのクラスにアクセスできません。

とはいえ、以下を確認することをお勧めします: http://www.123aspx.com/rotor/RotorSrc.aspx?rot=42941

それを機能させるには、コンパイラフラグTRAVEDEBUG設定して設定する必要があるようです..しかし、ログに記録された情報を実際にどこで処理するのかわかりません。コメントは、環境変数の設定を探して、システムのどこかにあるテキスト ファイルにログをダンプすることになっていることを示唆しています。ただし、そのページのコードは不完全であるか、単に完成していないようです。

私の推測では、必要なログ情報にアクセスするには別の方法を見つける必要があると思います。

于 2012-11-12T20:02:56.957 に答える