BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース .NETアプリ用の改善されたトレースとインストラメンテーション

.NETアプリ用の改善されたトレースとインストラメンテーション

原文(投稿日:2012/07/16)へのリンク

 

.NET 4.5で導入されたEventSourceEventListenerは、アプリケーションに単純なメカニズムを提供し、Event Tracing for Windows (ETW)におけるアプリケーションイベントをトレースできる。PerfViewのような分析ツールと組み合わせて、.NETアプリケーションをより良くトレースできるようになる。

.NET 4.5は、EventSource クラスを導入したが、これは、開発者が自分のEvent Sourceを継承したり、書いたりできるベースクラスを提供する。次に開発者は、ログを望むあらゆる異なるタイプ用に新しいメソッドを加えることができる。これらのメソッドは、適切な場所でアプリケーションから呼ぶことができる。内部的に、これらのメソッドは、ベースメソッドWriteEvent()を呼び、これは順に、予約されたイベントをEventListenerに送る。この中には、そのロギングメッセージをETWに送る、組込みのリスナも含まれる。Vance Morrison氏がこのことを詳しく書いている

リファレンスガイド「強く型づけされたイベント(EasyETW)」で述べられているように、 Morrison氏は以下のように投稿している。

ETWは、Windowsの高パフォーマンスのイベントシステムで、Windowsカーネルと多くのWindowsサブシステムの両方で広範囲に使われている。これらの組込みETWソースは、素晴らしい「低レベル」な価値(CPU, ディスク、ネットワークのアクティビティが発生している所を示している)。 EventSourceは、この上に作られ、プログラマは、「高レベル」なセマンティックなアクション(例えば、ユーザーコマンドや高レベルなイベント)にマークを付けることができ、こうして、リソース消費を高レベルタスクに割り当てることができる。

またETWに情報を送る以外のことができるカスタムなEventListenerも実装できる。例えば、もしsilverlight アプリなら、ネットワークでホストマシンにトレースデータを送りたいだろう。

PerfViewは、Microsoftからのパフォーマンス解析ツールである。単一のexeとしてデプロイされ、あらゆるアプリケーションのCPUとメモリ調査をサポートするが、また特にマネージコードのプロファイリングのための、幾つもの役立つフィーチャを提供している。このツールの使い方は、氏が投稿した これらのビデオで学ぶと良い。

 

この記事に星をつける

おすすめ度
スタイル

BT