連載:Visual Studioデバッグ手法

第2回 Visual Studio 2010の新機能「IntelliTrace」

亀川 和史
2010/07/28
Page1 Page2 Page2 Page4

Windows AzureとIntelliTrace

 米国で開催されたTech・Ed 2010において、Windows AzureでもIntelliTraceが使用可能になることが発表された。Windows Azureのデバッグには苦労されている方も多いと思うので、これはデバッグの強力な助けになるだろう。

 IntelliTraceを使用するためには、Windows Azure Tools 1.2(2010年6月版)を使用し、Windows Azureにデプロイする際にIntelliTraceを有効にする必要がある。

 Windows Azureそのものの開発やデプロイに関する解説は行わないので、以下のページを参考にしてほしい。

 Visual Studio 2010ではWindows Azureへのデプロイは非常に簡単になっている。次の画面のように、[ソリューション エクスプローラー]でWindows Azureクラウド・サービスのプロジェクトを右クリックして、表示されるコンテキスト・メニューから[発行]を選択すればよい。

Visual Studio 2010におけるWindows Azureへのデプロイ

 [発行]を選択すると、以下のダイアログが表示される。

[クラウド サービスの発行]ダイアログ
[ソリューション エクスプローラー]でWindows Azureクラウド・サービスのプロジェクトを右クリックして、表示されるコンテキスト・メニューから[発行]を選択すると、このダイアログが表示される。
  .NET Framework 4でビルドされたロールでのIntelliTraceを有効にする。
  IntelliTraceの内容を設定する。

 Windows AzureでIntelliTraceを有効にするには、.NET Framework 4をターゲットにしたプロジェクトでなくてはならないため、注意が必要である。IntelliTraceの設定方法は、前述したものとほぼ同じである。しかし、すぐ手元にあるサーバ環境とは異なるクラウド環境のWindows Azureであるため、以下の画面のように、デフォルトで有効になっているIntelliTraceイベントが多く選択されている。

Windows Azureクラウド・サービスにおけるデフォルトの[IntelliTrace の設定]:[全般]タブ
オンプレミスでの開発と異なり、クラウド環境のWindows Azureクラウド・サービスでは、既定で[IntelliTrace イベントと呼び出し情報]を取得するという設定になっている。

Windows Azureクラウド・サービスにおけるデフォルトの[IntelliTrace の設定]:[モジュール]タブ
IntelliTraceデータを取得しないアセンブリの設定。Windows Azure向けのアセンブリが既定で除外されている。

Windows Azureクラウド・サービスにおけるデフォルトの[IntelliTrace の設定]:[IntelliTrace イベント]タブ
IntelliTraceで採取するイベント一覧。オンプレミス用のプロジェクトと異なり、既定で多くのイベントが選択されている。

Windows Azureクラウド・サービスにおけるデフォルトの[IntelliTrace の設定]:[詳細設定]タブ
IntelliTraceの実行情報を格納する容量。

 Windows Azureへの発行が完了すると、以下の画面のようにVisual Studioの[サーバー エクスプローラー]から直接IntelliTraceログのダウンロードや閲覧が行える。



[サーバー エクスプローラー]でデプロイ先のWindows Azureコンピューティングのインスタンスの右クリック・メニューから[IntelliTrace ログの表示]を選択

[サーバー エクスプローラー]でのIntelliTraceログのダウンロード&閲覧

 IntelliTraceログのダウンロードの完了後、[Windows Azure のアクティビティ ログ]ウィンドウに表示されている「状態の行」(上の画面の赤枠の部分)をダブルクリックすると、以下の画面のようにIntelliTraceのログが表示される。

Visual StudioのIDEに表示されたWindows AzureアプリケーションのIntelliTraceログ

 ここでオンプレミス側のプロジェクトと同様にIntelliTraceのログを閲覧し、ソース・コードでの例外発生場所を検索することもできる。具体的には次の画面のように、IntelliTraceログに表示される[例外データ]欄から例外を選択して[デバッグの開始]ボタンを押せば、その例外が発生した位置からデバッグを開始できる。

IntelliTraceログからソース・コード検索

 いかがだっただろうか? 今回はIntelliTraceについて解説を行った。IntelliTraceはVisual Studio 2010 Ultimateでしか使用できないが、非常に有用な機能なので、使える環境であればぜひ活用してほしい。

 Visual Studio 2010 Ultimateは手元にないが試してみたいという方には、マイクロソフトが評価用に提供している英語版のVisual Studio 2010のHyper-Vイメージを使用して、評価を行うこともできる。このHyper-Vイメージは、英語版のOSとVisual Studioではあるが、サンプル・ソースが含まれ、しかも環境構築済みであるため、いろんなテストを行いやすいはずだ。

 Windows Server 2008以降で使用可能なHyper-Vイメージ、Windows 7用のVirtual PC用のイメージ、Windows VistaおよびWindows XPで使用可能なVirtual PC 2007 SP1用のイメージの3種類が用意されているので、ほとんどの環境で試すことができる。付属のドキュメントには「仮想マシンには3GBytesのメモリの割り当てを推奨する」と書かれいている。32bit OSで実行する場合、2GBytes程度しか割り当てられないと思うが、手順を確認する程度の評価であれば問題ない。

 次回は、このデバッグ機能を使用した、さまざまなアプリケーションのデバッグ方法について解説する。End of Article


 INDEX
  [連載]Visual Studioデバッグ手法
  第2回 Visual Studio 2010の新機能「IntelliTrace」
    1. IntelliTraceとは?
    2. IntelliTraceでのデバッグ実践
    3. チーム開発におけるIntelliTrace
  4. Windows AzureとIntelliTrace

インデックス・ページヘ 「連載:Visual Studioデバッグ手法」


Insider.NET フォーラム 新着記事
  • 第2回 簡潔なコーディングのために (2017/7/26)
     ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている
  • 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
     Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう
  • 第1回 明瞭なコーディングのために (2017/7/19)
     C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える
  • Presentation Translator (2017/7/18)
     Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
@ITメールマガジン 新着情報やスタッフのコラムがメールで届きます(無料)
- PR -

注目のテーマ

業務アプリInsider 記事ランキング

本日 月間
ソリューションFLASH