Azureの小ネタ (改)

~Azureネタを中心に、色々とその他の技術的なことなどを~

Azure Diagnostics 診断機能 その2

Azure Diagnostics 診断機能 - Azureの小ネタの続きです。

設定

適当にWebロールなどを作成し、プロジェクトに、「diagnostics.wadcfg」という名前のXMLファイルを追加します。詳細は、スキーマを見ていただくとして、内容に以下を追加します。

<?xml version="1.0" encoding="utf-8" ?>
<DiagnosticMonitorConfiguration
  xmlns="http://schemas.microsoft.com/ServiceHosting/2010/10/DiagnosticsConfiguration"
      configurationChangePollInterval="PT1M"
      overallQuotaInMB="4096">

  <Directories bufferQuotaInMB="1024"
      scheduledTransferPeriod="PT1M">
    <!-- These three elements specify the special directories 
           that are set up for the log types -->
    <CrashDumps container="wad-crash-dumps" directoryQuotaInMB="256" />
    <FailedRequestLogs container="wad-frq" directoryQuotaInMB="256" />
    <IISLogs container="wad-iis" directoryQuotaInMB="256" />
  </Directories>
</DiagnosticMonitorConfiguration>

DiagnosticMonitorConfiguration要素のconfigurationChangePollInterval属性は、診断機能が変更をポーリングするための時間です。XML の Duration type で指定するみたいです。上の例だと1分毎。

Directories要素は、ディレクトリの内容をBLOBに転送するための設定。カスタムな場所も指定可能ですけども、上記3つはあらかじめに用意されていると。scheduledTransferPeriod属性が転送間隔で、こちらも1分単位。任意に決めていただいて構いません。


出力ディレクトリにコピーするにお忘れ無く。

ストレージの指定

Webロールの設定画面から、診断機能を有効化しつつ、ストレージアカウントの設定を行います。



SDK 1.6からVSを経由して配置すると、勝手にストレージアカウントが設定されてしまって難儀するので手動で設定しています。詳細は、SDK1.6から診断機能がデフォルトで有効になっているの件 - Azureの小ネタ辺りを参照してください。

念のため管理ポータル経由でデプロイすることにします。

ログの確認

デプロイが完了したら、適当にブラウザでアクセスしてください。しばらくするとIISのログが転送されてくるでしょう。適当なBLOBを参照するツールで確認してください。「wad-iis」したに、デプロイID - ロール名 - ロールインスタンス名...の下にログファイルが確認できます。



出力できたので、今日はここまで。