アーキテクチャの概要
アーキテクチャ図(/ja-jp/citrix-virtual-apps-desktops/2507-ltsr/media/architecture-overview.png)
Always On Tracing (AOT) アーキテクチャは、Citrix Virtual Apps and Desktops™ (CVAD) 環境全体で継続的なリアルタイムトレース収集を提供するように設計されています。これにより、IT 管理者と Citrix サポートは、手動でのトレース開始や問題の再現を必要とせずに、ユーザーおよびインフラストラクチャの問題をトラブルシューティングできます。
AOT システムは、複数の Citrix インフラストラクチャ層からテレメトリログをキャプチャ、転送、および一元化されたリポジトリに保存するために、順次連携するいくつかの統合コンポーネントで構築されています。
主要コンポーネントとワークフロー
-
AOT ログジェネレーター (Citrix コアコンポーネント): Virtual Delivery Agent (VDA)、Delivery Controller™ (DDC)、StoreFront などの Citrix コンポーネントは、ログジェネレーターとして機能します。これらのコンポーネントにはテレメトリサービスが搭載されており、AOT API を使用してトレースデータをキャプチャし、事前定義されたステップトレースを記録し、ユーザーセッションとトランザクションに関連するエラーイベントをログに記録します。
-
ログ収集の有効化: 管理者がログ収集のリクエストを開始すると (通常は PowerShell コマンドを介して)、指示はブローカーに送信され、ブローカーはブローカーと VDA を含む関連コンポーネント全体でログ収集プロセスを調整します。管理者は、Storefront™ Server からログを収集するリクエストを (PowerShell コマンドを介して) 別途開始します。
-
テレメトリサービス: Storefront と DDC でログサーバーのアドレスとポートを設定した後、テレメトリサービスは新しいリアルタイム AOT リスナーをアクティブ化し、事前定義されたイベント、障害、またはトリガーポイントに基づいてログを収集します。
-
集中ログサーバーへのログ転送: ログが収集されると、テレメトリサービスはそれらを直接、集中ログサーバーに安全に転送します。エンドポイントが Citrix Gateway を介して外部ネットワークから接続されている環境では、安全でシームレスな転送を確保するために、通常、SOCKS トンネルを介して転送が行われます。
-
ログの保存と整理: 集中ログサーバーは、インデックス付きデータベースバックエンド (デフォルトでは OpenSearch) を使用して、AOT ログを構造化された検索可能な形式で受信、解析、保存します。ログはセッション、コンポーネント、タイムスタンプでタグ付けされ、容易なアクセスと効率的なトラブルシューティングを可能にします。
Citrix AOT システムのログは、構造化された検索可能な形式で保存され、容易なアクセスと効率的なトラブルシューティングを可能にするために、さまざまなフィールドでタグ付けされています。これらのタグには以下が含まれます。
- MachineName: ログが生成されたマシンの名前。
- MachineIP: マシンの IP アドレス。
- 役割: シトリックスコンポーネント(例:VDA、DDC、StoreFront)の役割。
- TimeStamp: ログイベントが発生した UTC タイムスタンプ。
- メッセージ: 実際のログメッセージの内容。単語で検索/フィルタリングできます。
- レベル: ログの重大度レベル(例:情報、警告、エラー)。
- モジュール: ログを生成した特定のソフトウェアモジュール。
- プロセス名: ログを生成したプロセスの名前。
- プロセスID: プロセスのID。
- スレッド: プロセス内のスレッドID。
- CPU: ログ発生時のCPU IDに関連する情報。
- セッションID: ログに関連付けられたユーザーセッションのID。
- クラス: モジュール内のクラスまたはコンポーネント。
これらの詳細なタグにより、管理者は特定の基準に基づいてログを迅速にフィルタリング、検索、分析でき、問題の特定と解決が容易になります。
要約すると、AOTワークフローは、Citrixコンポーネントが診断ログを生成することから始まります。これらのログを収集するための一元的なリクエストが開始され、Telemetry Serviceが関連コンポーネントからログを収集します。収集されたログは、インデックス作成、保存、およびその後の分析のために、一元的なログサーバーに安全に転送されます。
AOTの仕組み
Citrix Always On Tracing (AOT) は、環境内の主要コンポーネントから診断データを継続的に取得します。トリガーされると、ログは自動的に収集され、一元的なログサーバーに安全に転送され、分析のために保持されます。これにより、手動でのトレースが不要になり、トラブルシューティングが簡素化されます。
トレースのトリガーとログ収集: VDA、DDC、StoreFrontなどのCitrixコンポーネントは、重要な手順とエラーを追跡するためのAOT APIを備えています。これらのコンポーネントはAOTログジェネレーターとして機能します。管理者がDelivery Controllerからログ収集リクエストを開始すると、次のようになります。
DDCは関連するCitrixコンポーネントに指示を送信します。各コンポーネントは、そのローカルのTelemetry Serviceにリクエストを転送します。
テレメトリーサービスは、リアルタイムAOTリスニングプログラムを起動してAOTログを収集し、そのログを集中ログサーバーに転送します。
ログの保存と保持: AOTログが受信されると、集中ログサーバーはそれらをフォーマットし、構造化された検索可能なデータベースにインデックス化します。ログは、ストレージ使用量を最適化するために、定義された保持ポリシーに基づいて保持されます。デフォルトでは、AOTログは7日間保持され、その後、スペースを節約するために自動的にパージされます。
AOTと従来のログ記録の比較
| 側面 | AOT | 従来のCDFトレース |
|---|---|---|
| アクティベーション | 自動、継続的 | 手動、問題の再現が必要 |
| 複雑さ | ユーザーフレンドリーで読みやすいログ | エンジニアリングレベルの解析 |
| 診断速度 | 即座にログが利用可能 | 再現作業によって遅延 |
| リソース使用量 | 最適化されたバッファによる低オーバーヘッド | 誤って使用すると中程度から高程度 |
従来のトレースツールは手動での作業が必要で、問題発生時に捕捉した場合にのみ機能します。Always On Tracing (AOT) を使用すると、ロギングはバックグラウンドで継続的に実行されるため、監視していなくても問題は発生と同時に捕捉されます。これにより時間が節約され、トラブルシューティングがはるかに簡単になります。
AOTの主な機能
- 常時稼働: トレースは常に実行されるため、手動でオンにする必要はありません。
- 自動キャプチャ: 問題が発生すると常にログが収集されます。
- 中央ログサーバー: すべてのログは一箇所に保存され、簡単にアクセスできます。
- トラブルシューティングの簡素化: 一般的な障害を迅速に特定するのに役立ちます。
- 再現不要: 問題を再現する必要はなく、すでに捕捉されています。