Windows Virtual Desktop #59 ログ集約と活用 環境構築編

この記事のWVDは”Windows Virtual Desktop Spring 2020 Release”が対象です。

今回は、Windows Virtual Desktop のログを Azure Log Analytics に集約する話です。 Azure の標準機能で コントロールプレーンや仮想マシンのログを集約し、検索することが可能です。 なお、Virtual Machine編では Azure Virtual Machine の Metrics 情報の集約、ATP編では Defender ATP のログ集約もやってみます。

1. 関連ドキュメント

まずは Microsoft Docs で出来ること、設定手順を確認していきます。

ドキュメントによると以下のアクティビティを収集できるとのこと。

  1. 管理アクティビティ:
    • API または PowerShell を使用して Windows Virtual Desktop のオブジェクトを変更しようとした場合に、成功するかどうかを追跡する。 たとえば、ユーザーは PowerShell を使用してホスト プールを正常に作成できるか。
  2. フィード:
    • ユーザーが、正常にワークスペースにサブスクライブできるか。
    • ユーザーには、リモート デスクトップ クライアント上でパブリッシュされているすべてのリソースが表示されるか。
  3. 接続:
    • ユーザーがサービスへの接続を開始および完了する時点。
  4. ホスト登録:
    • 接続時にセッション ホストが正常にサービスに登録されたか。
  5. エラー:
    • 特定のアクティビティでユーザーに問題が発生しているか。 この機能では、情報がアクティビティと結合されている場合に、アクティビティ データを自動で追跡するテーブルを生成できます。
  6. チェックポイント:
    • アクティビティの有効期間内に到達した特定のステップ。 たとえば、セッション中に、ユーザーが特定のホストに負荷分散された後、接続中にそのユーザーへのサインオンが行われた、など。

また、構築の流れは以下になります。

  1. Azure Log Analytics のワークスペースを作成する
  2. WVD の診断データをLog Analytics に Push する設定を実施する

2. Azure Log Analytics の設定

2.1. Log Analytics ワークスペースの作成

すべてのリソースから “追加” をクリックします。 

“Log Analytics workspace” で検索し、ログ分析(OMS)を作成します。(名前が全く違うので混乱しました。)

基本画面ではサブスクリプションやリソースグループ、インスタンスの名前と配置するリージョンを指定します。

価格レベルは選択肢は1つしかなく、既定のものをそのまま選択します。

タグは必要に応じて指定します。

内容を確認し、作成します。

デプロイが完了しました。

2.2. ワークスペースIDと主キーの確認

あとで使うワークスペース ID と主キーを確認しておきます。

3. 診断データを Log Analytics に Push する設定

3.1. Host Pool の設定

Host Pool の診断設定から “診断設定を追加する”を実行します。

対象のログをチェックし、転送先となる Log Analytics の情報を指定します。

この設定は Host Pool 毎に必要です。 複数の Host Pool がある場合はそれぞれで設定します。

3.2. アプリケーショングループの設定

アプリケーショングループの診断設定を行っていきます。 基本的に Host Pool と同じ設定手順となります。

転送するログをクリックし、転送先のワークスペースを指定します。

アプリケーショングループが複数ある場合はそれぞれで設定します。

3.3. ワークスペースの設定

Windows Virtual Desktop のワークスペースの診断設定を設定します。

転送するログをクリックし、Log Analytics のワークスペースを指定します。

4. 収集したログの確認

Log Analytics のワークスペースから “ログ” 画面に移動します。

事前定義済の11個のクエリを利用可能です。

  1. Top 10 Connection Errors
  2. Top 10 Feed Errors
  3. Connection Errors
  4. Session duration
  5. Top 10 average session duration by user
  6. Top 10 most active users
  7. Average Session Duration by hostpool
  8. Published applications used
  9. Client OS
  10. RD Client version
  11. Average session logon time

以下は”Top 10 most active user “を実行した例です。

環境構築編はここまでとなります。

以上