イベントストリームとオブザーバビリティパイプライン
最新のシステムは、ログ、メトリクス、トレース、セキュリティイベント、大規模言語モデル(LLM)のインタラクションなど、膨大な量のテレメトリを生成します。このドキュメントでは、オブザーバビリティパイプラインが、チームがこのデータをリアルタイムで収集、形成、ルーティング、評価するのにどのように役立つか、そしてDatadogとGalileoがその中でどのような役割を果たすかについて説明します。
オブザーバビリティパイプラインが重要な理由
生のテレメトリはコストがかかり、ノイズが多く、構造が一貫していません。オブザーバビリティパイプラインは、アプリケーションとモニタリングツールの間に位置し、以下を実現することでこれらの課題を解決します。
- コスト削減: 大容量のログが高価なストレージやセキュリティ情報イベント管理(SIEM)ツールに到達する前に、フィルタリングやサンプリングを行います。
- データ品質の向上: パース、正規化、メタデータの付与を行います。
- プライバシー保護: パイプラインの初期段階で、個人を特定できる情報(PII)をマスクまたは削除します。
- 品質シグナルの表面化: 運用テレメトリと並行してLLMのインタラクションをキャプチャし、評価します。
エンジニアリング、サイト信頼性エンジニアリング(SRE)、AIチームのすべてが、より高速でクリーン、かつアクション可能なデータの恩恵を受けます。
最新のオブザーバビリティにおける2つのレイヤー
従来のクラウドサービスとLLMを活用した機能の両方を含むスタックでは、2つの異なるテレメトリレイヤーを扱います。それぞれに異なるツールが必要です。
Datadogによる運用テレメトリ
Datadogはインフラストラクチャとアプリケーションレイヤー(ログの取り込み、メトリクスの収集、アラート、パイプラインルーティング)を処理します。ここでは、payment-gatewayのエラーログを送信し、Grokパーサーを適用してtransaction_idを抽出し、status:errorイベントをSlackアラートやS3アーカイブにルーティングできます。
DatadogのLog Management製品には、ログデータを大規模に処理・ルーティングするためのObservability Pipelinesと、リアルタイム検索やLive TailのためのLog Explorerが含まれています。
Galileoによるモデルテレメトリ
GalileoはLLMレイヤーを処理します。個々のモデル呼び出しのトレース、入力と出力のキャプチャ、スパンごとのレイテンシの測定、評価メトリクスによるレスポンスのスコアリングなどを行います。ここでは、payment-query LLM関数が、正確で根拠があり、適切に簡潔な回答を返しているか、そしてそれがデプロイをまたいで変化していないかを把握できます。
Galileoは、開発者やAIエンジニアがAIアプリを改善するのを支援するために設計された評価・オブザーバビリティプラットフォームであり、PythonおよびTypeScript SDKをサポートし、主要なLLMプロバイダーと統合されています。
これら2つのレイヤーは冗長ではなく、補完的です。Datadogは「何かがうまくいかなかったこと」を伝え、Galileoは「なぜモデルのレスポンス品質が低下したのか」を伝えます。
ハイレベルなパイプラインアーキテクチャ
- Mermaid (画像)
- Mermaid (コード)
- ASCII
flowchart TD
A[イベントソース<br/>• クラウドアプリ<br/>• コンテナ<br/>• LLMサービス] --> B[取り込みレイヤー]
B --> B1[Datadog<br/>ログ取り込みAPI]
B --> B2[Galileo SDK]
B1 --> C[処理レイヤー<br/>• パース<br/>• 付与<br/>• マスク]
C --> D[ルーティングエンジン<br/>• フィルタ<br/>• サンプリング<br/>• ルール]
D --> E{{運用デスティネーション}}
E --> E1[S3アーカイブ]
E --> E2[SIEM]
E --> E3[アラートとダッシュボード]
B2 --> F[Galileoログストリーム<br/>• トレース<br/>• スパン<br/>• セッション]
F --> G{{AI評価}}
G --> G1[メトリクスとスコアリング]
G --> G2[実験]
[イベントソース]
(アプリ、コンテナ、LLM)
|
v
[取り込みレイヤー]
/ \
v v
[Datadog API] [Galileo SDK]
| |
v v
[処理] [ログストリーム]
(パース、マスク) (トレース、スパン)
| |
v v
[ルーティングエンジン] [AI評価]
(フィルタ、ルール) (メトリクス、スコアリング)
| |
v v
[運用] [AI品質]
(S3、SIEM、アラート)(実験)
イベントストリームの概念
イベントストリームとは、テレメトリデータの継続的で時系列順の流れのことです。最新のアプリスタックでは、イベントストリームは複数のソースから同時に発生します。
- アプリログ(例:
payment-gatewayのエラーイベント) - インフラメトリクス(CPU、メモリ、レイテンシ)
- 分散トレーススパン(アプリケーションパフォーマンスモニタリング(APM)データ)
- セキュリティ監査および認証ログ
- LLM呼び出し記録(プロンプト、完了、レイテンシ、トークン数)
- コンテナおよびKubernetesイベント
- IoTデバイスのテレメトリ
LLM呼び出し記録は、このリストへの最新の追加項目です。AI機能を組み込むアプリが増えるにつれ、これらのインタラクションをキャプチャして評価することは、従来のアプリログをキャプチャすることと同じくらい重要になっています。
コアパイプラインコンポーネント
1. 取り込みレイヤー
取り込みレイヤーは、生のテレメトリが最初にシステムに入る場所です。
運用データの場合、DD-API-KEYヘッダーで認証し、https://http-intake.logs.datadoghq.com/api/v2/logsにあるDatadog Log Ingestion APIにJSONペイロードを送信することを意味します。
LLMデータの場合、Galileo SDKを使用してアプリコードをインスツルメントすることを意味します。これにより、関数を@logデコレータまたはGalileoLoggerでラップしたときにトレースが自動的にキャプチャされます。
どちらのパスも、それぞれのデータタイプに適した異なるメカニズムを通じて、認証、検証、バッファリングを処理します。
2. 処理レイヤー
データがDatadogのパイプラインに入ると、プロセッサがルーティング前にデータを変換します。
- Sensitive Data Scanner: データが下流のツールに到達する前に、メールアドレス、クレジットカード番号、顧客IDなどのPIIを検出し、難読化します。
- Grok Parser: 生のログ文字列から構造化されたフィールドを抽出します。
- Remapper: ネストされた属性(例:
meta.customer_id)を最上位のファセットに昇格させ、フィルタリングを容易にします。 - Lookup Processor:
service名をteam_ownerタグにマッピングするなど、外部の参照データを使用してログを補完します。
Galileoでは、同等のレイヤーがログストリームレベルでのメトリクス設定を使用します。Luna-2エバリュエーターは、ログを記録する際に、正確性、根拠、トーンについてLLMのレスポンスを自動的にスコアリングします。
3. ルーティングレイヤー
ルーティングレイヤーは、コンテンツ、ビジネスルール、またはコンプライアンス要件に基づいて、処理されたイベントの送信先を決定します。Datadogでは、Log PipelinesとIndexesを通じてルーティングを設定します。
status:errorログをオンコールアラートとS3アーカイブに同時にルーティングします。- サンプリングルールを適用して、インデックスに到達する
status:infoログの量を減らします。 - セキュリティ関連のイベントをSIEM統合に転送します。
- Log Forwarding機能を使用して、特定のログサブセットを外部のHTTPエンドポイントに送信します。
Galileoでは、プロジェクトとログストリームごとにデータを構造化することで、プロジェクトおよびログストリームレベルでルーティングを処理します。このアプローチにより、dev、staging、productionのトレースを評価・比較できます。
4. デスティネーションレイヤー
処理されたイベントが最終的に到達する場所です。
| デスティネーションタイプ | 例 |
|---|---|
| オブジェクトストレージ | S3, Google Cloud Platform (GCP), Azure Blob |
| SIEM | Splunk, Chronicle, QRadar |
| 検索と分析 | Elastic, OpenSearch, Snowflake |
| モニタリングとアラート | Datadog Log Explorer, ダッシュボード, モニター |
| AI評価 | Galileoログストリーム, 実験結果 |
ルーティングがよりクリーンでターゲットが絞られているほど、デスティネーションの実行コストは下がり、速度は上がります。未処理の生のログをSIEMに送信することは、不必要なオブザーバビリティコストの最も一般的な原因の1つです。
主なユースケース
Datadogによる運用テレメトリ
- エラーアラート:
payment-gatewayからのstatus:errorログをリアルタイムでPagerDutyまたはSlackにルーティングします。 - コスト削減: インデックス作成前に、
status:infoログに10%のサンプリングルールを適用します。 - セキュリティ分析: 認証の失敗や監査ログをSIEMに転送します。
- データの正規化: Grokパーサーを使用して、異なる言語で記述されたサービス間でログ形式を標準化します。
Galileoによる品質シグナル
- LLMトレース: セッションとトレースごとに整理された、AI機能からのすべてのプロンプトと完了をキャプチャします。
- レスポンス評価: Luna-2メトリクスを適用して、品質、正確性、根拠についてモデルの出力を自動的にスコアリングします。
- プロンプトの実験:
productionログストリームにデプロイする前に、Galileo Experimentsでプロンプトの変更をA/Bテストします。 - 環境間の比較: 同じ評価基準を使用して、
stagingとproductionでのモデルの動作を比較します。
まとめ
- 最新のアプリは、運用ログとLLMインタラクション記録という、2つの異なるテレメトリストリームを生成します。
- Datadogは、高スループットのインフラストラクチャデータ向けに構築されたパイプラインベースのモデルを使用して、運用の取り込み、処理、ルーティングを処理します。
- Galileoは、AIテレメトリ(SDKでインスツルメントされたトレースと、LLM機能を活用した機能のメトリクスベースの評価)を処理します。
- 処理はデータをクリーンにし、補完します。ルーティングはデータを正確に導きます。デスティネーションはデータを効率的に消費します。
- 適切に設計されたパイプラインは、コストを削減し、信頼性を向上させ、インフラストラクチャとAIの品質シグナルの両方を1つのオブザーバビリティ戦略で表面化させます。