Cloud Monitor 2.0 コンソールのアプリケーションモニタリングでは、推論サービスの稼働後、いつでも vLLM と SGLang の収集範囲、トレースの粒度、およびロギング動作を調整できます。ほとんどの変更は、推論エンジンを再起動することなく有効になります。問題の特定中はより詳細な情報を収集したり、リクエストに機密データが含まれる場合やログ量が過大になった場合は収集を制限したりできます。
このトピックの各セクションでは、コンソールの各パネルとその中のすべてのスイッチについて、スイッチの機能、デフォルト値、および変更が有効になるタイミングを説明します。付録には、対応する環境変数が記載されており、これらを使用してアプリケーションの起動前に収集動作を静的に設定できます。
収集設定ページを開く
Cloud Monitor 2.0 コンソールにログインします。
[Application Observability] > アプリの監視 を選択し、対象の推論サービスの名前をクリックします。
[Application Configuration] タブをクリックし、本トピックで説明するパネルのスイッチを調整します。
推論エンジンの設定は、[Application Configuration] タブの [Agent Switch Settings]、[AI Application Collection Configuration]、[vLLM Inference Engine Configuration]、[SGLang Inference Engine Configuration] の 4 つのパネルに分かれています。
本トピックの表の [Default] は、コンソールでその項目が設定されていない場合に使用される値です。その場合、エージェントは環境変数を読み取ります。環境変数も設定されていない場合、エージェントまたはエンジンに組み込まれているデフォルト値が適用されます。「in the agent」 と記載されたデフォルト値はエージェントの組み込み値であり、「in the engine」 と記載されたデフォルト値はエンジンの組み込み値です。
エージェントスイッチ設定
[Agent Switch Settings] パネルの [LLM (large language model) services] グループには、vllm-plugin と sglang-plugin の 2 つのチェックボックスがあり、起動時にエージェントが対応するプラグインをロードするかどうかを制御します。チェックボックスをオフにすると、エージェントはそのエンジンをインストルメント化しなくなるため、トレースもメトリクスも生成されません。エージェントはロード中にこれらのチェックボックスを読み取るため、変更はアプリケーションを再起動した後にのみ有効になります。再起動せずに収集を一時的に停止するには、以降のセクションで説明するパネルの収集スイッチを使用してください。
AIアプリケーション収集設定
スイッチ | デフォルト | 説明 |
LLM の入力および出力コンテンツを収集 | 有効 | リクエストのプロンプトとモデルの出力が可観測性データに記録されるかどうかを指定します。リクエストに機密データが含まれる場合は、このスイッチをオフにしてください。 |
LLM の入力および出力コンテンツの最大フィールド長 | 8192 | 単一の入力または出力に対して収集される最大文字数。これより長いコンテンツは切り捨てられます。 |
LLM の入力および出力コンテンツの収集ポリシー | スパン属性に記録 | 収集されたコンテンツの書き込み先。トレースと一緒にコンテンツを表示するには [Record in span attributes] を選択し、コンテンツが大きい場合は [Record in log events] を選択してください。 |
マルチモーダルデータを収集 | 無効 | LangChain、LiteLLM、DashScope、Google ADKなどのクライアントフレームワークのインストルメンテーションにのみ適用されます。vLLMおよびSGLangエンジンのインストルメンテーションは、このスイッチを読み取りません。 |
[Collect LLM input and output content] をオフにすると、vLLM のエントリスパンである chat {model} および text_completion {model} は生成されなくなります。リクエストレベルの llm_request スパンとその子スパン、および embeddings {model} と rerank {model} のエントリスパンは影響を受けません。このコンテンツに対してインストルメンテーションを登録するかどうかは、エージェントの起動時に決定されます。
vLLM推論エンジンの設定
スイッチ | デフォルト | 説明 |
vLLM のメトリクスを収集 | エージェントのデフォルトは有効 | エージェントが推論エンジンからメトリクスを読み取るかどうかを指定します。このスイッチをオフにすると、エージェントはメトリクスの収集を停止します。収集されたメトリクスがレポートされるかどうかは、本トピックでは扱わない [Custom Configuration] ページの [Report metrics] スイッチにも依存します。 |
vLLM の収集粒度 | エージェントのデフォルトは 1 | 収集されるトレースの詳細レベル。 vLLM の収集粒度では、次の値のいずれかを指定します:
|
vLLM リクエストログ | エンジンのデフォルトは無効 | "Received request"、"Added request"、"aborted"、"failed" など、リクエストの受信およびライフサイクルログを出力します。 |
vLLM イテレーション詳細ログ | エンジンのデフォルトは無効 | EngineCore のイテレーションごとに、リクエスト数、トークン数、およびコンテキストステージと生成ステージの所要時間を出力します。これらのログを使用して、バッチが満杯でない、リクエストがスタベーション状態にあるなどのスケジューリング問題を調査します。 |
vLLM ログと TraceId を関連付ける | エージェントのデフォルトは無効 | vLLM ログのプレフィックスに TraceId と SpanId を挿入し、ログとトレースを相互に参照できるようにします。 |
vLLM ログレベル | エンジンのデフォルトはINFO | vLLM のログレベルを動的に調整します。エージェントはロガーとそのハンドラーの両方を変更し、ハンドラーが DEBUG ログをフィルターアウトしないようにします。 |
粒度 2 では、エージェントはトークンレベルの詳細を収集できるように、リクエストの logprobs 計算を強制します。これにより、エンジンの実際の計算動作が変更され、顕著なパフォーマンスとデータ量のオーバーヘッドが追加されます。問題のトラブルシューティングを行う場合にのみ、[vLLM 収集粒度] を 2 に設定してください。粒度 2 では、1 つのスパン内のイベント数はイテレーション数に比例し、OpenTelemetry のデフォルトの制限である 128 を超える可能性があります。その制限を超えたイベントは、スパンからドロップされます。OTEL_SPAN_EVENT_COUNT_LIMIT がその制限を制御します。
vLLM のイテレーション詳細ログは、すべてのイテレーションを完全に、サンプリングなしで出力するため、高スループットのシナリオではログ量が多くなります。トラブルシューティングが完了したら、すぐにオフにしてください。
SGLang推論エンジンの設定
スイッチ | デフォルト | 説明 |
SGLang のメトリクスを収集 | 有効 | エージェントが推論エンジンからメトリクスを読み取るかどうかを指定します。このスイッチがオンの場合、エージェントはエンジンに対してリクエストレベルのメトリクス (最初のトークンまでの時間 (TTFT)、トークン間レイテンシー、合計トークン数、エンドツーエンドの所要時間) を計算します。このためにエンジンを再起動したり、起動パラメーター |
SGLang の収集粒度 | 3 + 複合ステージ | ネイティブの SGLang OpenTelemetry インストルメンテーションによって生成されるスパンツリーの深さ。値が大きいほど、より詳細な情報が生成されます。 この設定は、エンジンのネイティブトレースがオンの場合にのみ有効です。エージェントはエンジンの起動時にネイティブトレースをオンにするため、起動パラメーター |
SGLang リクエストログ | エンジンのデフォルトは無効 | TokenizerManager のリクエストログを動的にオン/オフします。 |
SGLang リクエストログの詳細度 | エンジンのデフォルトは 2 | リクエストログに出力される詳細レベル。値が大きいほど、より多くのコンテンツが出力されます。 |
SGLang ログレベル | エンジンのデフォルトはINFO |
|
この表の、エンジンの値を上書きするスイッチでは、エージェントは初回の上書き適用時にエンジンの元の値を記録します。コンソールから設定項目を削除すると、エージェントは記録された値を復元します。 [SGLangのメトリクスを収集] をオフにしても、エージェントによるメトリクスのレポートが停止するだけです。エンジンのネイティブ Prometheus メトリクスは無効になりません。
付録:環境変数
アプリケーションの起動前に収集動作を静的に設定するには、次の表の環境変数を使用してください。コンソールの設定は環境変数よりも優先されるため、環境変数はコンソールでその項目が設定されていない場合にのみ使用されます。
コンソールスイッチ | 環境変数 | コンソール設定キー |
|
|
|
|
|
|
LLM の入力および出力コンテンツを収集 |
|
|
LLM の入力および出力コンテンツの最大フィールド長 |
|
|
LLM の入力および出力コンテンツの収集ポリシー |
|
|
vLLM のメトリクスを収集 |
|
|
vLLM の収集粒度 |
|
|
vLLM リクエストログ | — |
|
vLLM イテレーション詳細ログ | — |
|
vLLM ログと TraceId を関連付ける | — |
|
vLLM ログレベル | — |
|
SGLang のメトリクスを収集 |
|
|
SGLang の収集粒度 | — |
|
SGLang リクエストログ | — |
|
SGLang リクエストログの詳細度 | — |
|
SGLang ログレベル | — |
|