問題タブ [traceswitch]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
507 参照

c# - プロジェクト全体またはアプリケーション全体の TraceSwitch を設計のどこに配置すればよいですか?

によって提供されるいくつかのログ機能を使用して、プログラムを強化しようとしていSystem.Diagnosticsます。私のソリューションは複数のプロジェクトで構成されているため、アプリケーション全体とプロジェクトごとに 1 つのスイッチを作成したいと考えました。

問題は、どうすればこれを達成できるか、スイッチ定義をどこに置くべきかということです。

アプリケーション全体のスイッチから始めて、私が理解しているようにC#にはグローバル変数のようなものがないので、どうすればこれを達成できますか?

入れます

すべてのクラスで一度これを解決しますか、それとも同じ名前のクラスと同じ数のスイッチを作成しますか? (私の推測では後者です)

または、初期化を別のクラスに一度入れるべきですか

このような他のすべてのクラスからの参照

これにより、プロジェクト全体で 1 つのスイッチを使用することが解決されますが、これは良い方法ですか?

アプリケーション全体の切り替えに関しては、GlobalSwitchクラスを含むプロジェクトを他のすべてのプロジェクトで参照する必要がありますが、これはできれば避けたいと思います。

これをスマートな方法で行う方法に関するいくつかの手がかりをいただければ幸いです。

0 投票する
1 に答える
1198 参照

c# - 実行時の TraceSwitch の切り替え

アプリケーションの .NET System.Net トレース機能で利用できる診断情報にアクセスしようとしています。

適切な .config を使用してトレース レベルを設定できることは承知していますが、プログラムでスイッチを切り替えられるようにしたいと考えていました。(つまり、プログラム実行の特定の部分でトレースをオンにします)。

コードで System.Net トレース機能によって使用される TraceSwitch/TraceSources を切り替える方法はありますか?

This SO questionは承知していますが、問題のライブラリが書き込み呼び出しごとに新しい TraceSwitch を作成しているという根本的な問題があるため、その状況は異なるようです。

0 投票する
3 に答える
4369 参照

.net - TraceSwitchとSourceSwitch-違いは何ですか?

だから私はおそらくここで明白なことを見逃していますが、実際にはTraceSwitchSourceSwitchクラスの機能の違いは何ですか?

それらは両方とも同一の要約説明を提供します:

コードを再コンパイルせずにトレースとデバッグ出力を制御するためのマルチレベルスイッチを提供します。

備考欄は妙に私の目に似ていますか?誰かが彼らの機能と使用例の違いを明確にしてくれませんか?

TraceSource(完全を期すために、古い静的クラスではなく、オブジェクトでスイッチを使用していますが、Trace大きな違いはないと思います。)

0 投票する
2 に答える
2243 参照

c# - イベントIDによってリッスンされたトレースをフィルタリングする方法は?

次の方法を使用してトレースレコードを追加しています。

ここで、Int32はイベントIDを表します。

では、TraceSwitchでフィルタリングして、指定されたイベントIDのみでリッスンする方法はありますか?これは不可能ですか?

0 投票する
1 に答える
438 参照

c# - 一部のマシンで DLL.config ファイルがロードされない理由

C# で記述された Outlook アドイン MyAddin.dll があり、これには構成ファイル MyAddin.dll.config があります。どちらも同じディレクトリに保存されます。それらはそこに配置され、インストーラーによってインストールされます。ほとんどのインストールでは、構成ファイルの検索と読み取りに問題はありません。ただし、いくつかのインストール (まったく同じバージョン、インストールなど) では、.config が開かれません。

構成ファイルの内容は次のようになります...

クラスの 1 つでアドインの呼び出しを使用して、この構成ファイルを暗黙的にロードします...

私が言ったように、これは多くのインストールで機能しますが、少数では機能しません. PROCMON を実行して、構成ファイルのファイル イベントを監視しました。ファイルが読み込まれるシステムでは、PROCMON がトレースに表示します。ロードされないシステムでは、PROCMON は設定ファイルについて何も表示しません。

C# でコンパイルされたアプリケーション拡張機能 (DLL) が、あるインスタンスでは正しく読み込まれるのに、別のインスタンスでは構成ファイルを読み込もうとしないのはなぜですか? または、これを診断するための提案をお願いできますか? どこを見るかなど

詳細: アドインは「任意の CPU」でコンパイルされ、Windows 7 x64 にインストールされます。Office 2010 (Outlook) の 32 ビット バージョンがインストールされています。これらのパラメーターはすべて、作業バージョンと構成ファイルを開かないバージョンの両方に当てはまります。

詳細(2012/2/21): アドインはリリースモードでビルドされています。VS2008 Project Properties>Build の下で、「Define TRACE constant」がチェックされます。このソリューションは、.NET 3.5 Framework を対象としています。これが失敗したマシンでの System.Diagnostics.TraceSwitch の実装は、他のマシンとは異なるようです。プロセス エクスプローラーを使用して、故障したマシンと動作中のマシンを比較しましたが、主な違いは、故障したマシンにはほとんどプリコンパイル済みのアセンブリがあり、動作中のマシンには含まれていないことです。それは重要ですか?