私の同僚は、CLR 4.0 にはEvent Tracing for Windowsに関連するいくつかの主要な改善点があると述べましたが、正確に何が新しいのかの詳細を見つけることができませんでした。改善点についてのみ言及し、正確な新機能についての詳細を提供していないブログ投稿はほとんどありません。誰かがそれについてより多くの洞察を持っていますか?
3 に答える
CLR 4.0 の ETW イベントの一覧を次に示します。
- ランタイム情報 ETW イベント
- 例外 Thrown_V1 ETW イベント
- 競合 ETW イベント
- スレッド プールの ETW イベント
- ローダー ETW イベント
- メソッド ETW イベント
- ガベージ コレクション ETW イベント
- JIT トレース ETW イベント
- 相互運用 ETW イベント アプリケーション
- ドメイン リソース監視 (ARM) ETW イベント
- セキュリティ ETW イベント
- スタック ETW イベント
これらの詳細な説明については、msdnでそれらを読むことができます
また、XPERF は ETW でマネージド スタックをデコードできないため、BCL チームは使用可能な Perfmonitor と呼ばれるコードプレックスで別のツールをリリースしました。
HTH
- アプリケーション ドメイン リソースの監視は、マネージおよびネイティブ ホスティング API と Windows (ETW) のイベント トレースを通じて利用できます。
- 診断目的で ETW イベントにアクセスして、パフォーマンスを向上させることができるようになりました。
http://msdn.microsoft.com/en-us/library/ms171868.aspx#core_new_features_and_improvements
上記のリンクのいくつかを掘り下げた場合におそらく見つかる 2 つの改善点は、新しいEventProviderTraceListenerクラスと新しいEventProviderクラスです。
EventProviderTraceListener は、(他の TraceListener と同様に) TraceSource をリッスンし、TraceSource メッセージを ETW システムにルーティングできます。
EventProvider クラスを使用すると、メッセージを ETW システムに直接記録できます。
これらのクラスは、Vista 以降でのみ使用できます (実際には、使用している OS のレベルに関係なく、.NET Framework 4.0 で「使用可能」ですが、XP 以下では機能しません)。
私はこれらのクラスを使用したことはありません (ETW も使用したことはありません) が、.NET アプリケーションから ETW を簡単に使用できるように思えます。ETW を使用する場合は、ETW 自体を構成するための作業がまだ残っています。
ETWの使い方を解説した記事はこちら。ETW に関する最新情報があるかどうかはわかりません。この記事は、新しい .NET ETW クラスが利用可能になる前に書かれたことに注意してください。