はじめに
こんにちは、Datadog Japan で Sales Engineer をしている AoTo です。
みなさん、Datadog の公式年次イベントである DASH はご存知でしょうか?DASH は「Observe・Secure・Act」というキーワード、Datadog の本社が置かれるニューヨークで開催されるイベントです。2024年は6月25-26日に開催され、2025年は6月10-11日のでの開催が決定しています。
ロードマップや最新機能を発表する他に、各テーマに沿ったワークショップや事例を聞けるブレイクアウトセッション、パートナーソリューションを知れるエキスポや日本人向けの Japan Track など様々なコンテンツがあります🐶
今回は、「DASH 2024」で紹介された新機能をこれまでの Datadog の機能と比較しながら解説します。Datadog 内部の視点から、公式ドキュメントには記載のない、以前までの機能と変化も解説するため Datadog/Observability 好きの方は是非最後までご覧ください!
こちらの内容は Observe のキーワードに沿った新機能に焦点を当てた前編となります。Secure・Act は以下の記事をご覧ください。
2024年12月 時点での情報を元に記載しています。
最新の情報は Datadog の公式ドキュメントをご参照ください。
LLM Observability
概要
Datadog LLM Observability はチャットボットをはじめとする LLM アプリケーションのパフォーマンス・トラブルシュート・評価・セキュリティ監視を実現できる独立した Datadog の機能です。発表時から GA(一般公開) となり、その後も対応する SDK やアプリケーション言語を増やしています。
現在は Python, JavaScript に対応しており、Python の場合 OpenAI, Azure OpenAI, LangChain, Amazon Bedrock, Anthoropic, Google Gemini 呼び出す標準の SDK を自動計装しトレースを記録します。LLM Observability SDK は Datadog APM SDK(Tracer) に含まれており、APM と合わせて利用することも独立して有効化できます。
LLM Observability は、AI Agent によるツールやワークフローの実行、LLM モデルの呼び出しや RAG の Embedding(埋め込み)・Retrival(取り出し)などの情報をスパンとして取得し、一連の処理のパフォーマンスをトレースとして表示する機能です。その過程でモデルの呼び出しコストとしてのトークン量や呼び出しのエラー、パフォーマンスを時系列・モデル毎に比較できます。
LLM Observability の最大の特徴は、LLM の品質・安全性の管理と分析を行うための「LLM-as-a-Judge」の機能です。これは、取得した LLM アプリの入力・出力を Datadog が用意する LLM(OpenAI) により評価できます。
現在提供されている評価項目は以下の6つです。
- Failure to Answer(応答の失敗)
- Language Mismatch(言語の不一致)
- Prompt Injection(プロンプトインジェクション)
- Input/Output Sentiment(入出力のネガティブ感情検出)
- Topic Relevancy(トピック関連度)
- Input/Output Toxicity(入出力の攻撃性)
加えて、LLM Observability は Sensitive Data Scanner(SDS) と統合されており、SDS を有効化することで自動的にライブラリルールの内容に合わせて PII(個人識別情報) のマスキングができます。
日本でも既に多くの方ににお試しいただいているので、是非ご参照ください。
- 『Datadog LLM Observabilityを試験導入しました』
- 『Datadog LLM Observabilityやってみた(注意点あり)』
- 『生成 AI アプリで収集するべきテレメトリは何か』
- 『Datadog LLM Observability で custom evaluation を使ってみた』
以前までの機能
DASH 2023 時点でも Datadog LLM Observability は Private beta(Preview) として発表されていました。しかし、2023年時点では概念として LLM Observability が標準化されておらず、上記で説明したようなトレースの機能は含まれていませんでした。
旧 LLM Observability は主に LLM モデルと品質の評価の機能が用意され、リクエストのパフォーマンス・ドリフトの検知やこれらに影響を与える特定のプロンプトの検出の機能が発表されていました。現在はこれらの機能を引き継ぎ、入出力のクラスター分析機能が提供されています。
LLM Observability が現在の形となったのは、LangFuse, LangSmith, OpenLLMetry などの OSS が登場し、LLM 監視の共通方式が確立されつつある今年からです。今後も LLM Observability はその概念の形を変えていくことが推測されますが、Datadog もその機能を拡充していくことにご期待ください🐶
Log Workspaces
概要
Datadog Log Workspaces は Datadog Log Management のログ分析を強化するために、複数のログソースの組み合わせ・変換・複雑なクエリの実行・可視化を実現する機能です。発表時から現在まで Preview(Private beta) として提供され、リクエストに応じて機能が利用できます。
Log Workspace はログの分析・変換・可視化のために、複数のセルを用いてそれぞれの操作を定義します。データソースセルは Log Management に保存されているログと Reference tableを対象にできます。他にも分析セル・可視化セル・トランザクションセル・テキストセルなどで操作を定義できます。
以前までの機能
Datadog Log Management の最大の特徴はクエリレスの検索性と可視性です。この特徴はバックエンドである Husky によって実現されており、ライター・リーダー・コンパクターなどの複数の役割に分解されたストレージシステムにより、大規模データに対する高速な検索や柔軟なデータ保持を可能にします。こうした特徴のトレードオフとして、複雑なクエリを利用した分析の要件に応えられない場合がありました。
Log Workspace の提供前は、Log Management の Explorer 機能が拡充され、ログ検索構文に加えて高度な検索機能が増やされていました。高度な機能では、Log Explorer 上でサブクエリの実行や Reference Table による可視化ができます。
Datadog Agent with Embedded OpenTelemetry Collector
概要
Datadog Agent with Embedded OpenTelemetry Collector は Datadog Agent に OpenTelemetry Collector をそのまま埋め込み実行するエージェントのアップデートです。発表から現在まで Preview(Private beta) として提供され、リクエストに応じて機能が利用できます。
OTel Col が Datadog Agent 内に直接実装されたことで、OTel エコシステムの一部である OTel Col の恩恵と Datadog Agent の恩恵を同時に受けることができます。具体的には、Datadog Agent 内に用意されている collector-contrib
に含まれる Receiver, Processor, Exporter を利用できるのと同時に、Datadog Agent が提供する統合サービスタグ付けや Fleet Automation の機能を活用できます。
さらに、Datadog が提供する Agent のセキュリティスキャンに OTel Col を含めることで、OTel Col に共通脆弱性識別子(CVE) が発見されるとコミュニティのリリースと共に迅速に Datadog がそのアップデートを提供します。
以前までの機能
Agent with Embedded OTel Col の提供前は、Datadog Agent に組み込みの OTLP 専用機能が実装されていました。これは otlp
に含まれる内容で、Datadog の設定ファイルである datadog.yaml
内の otlp_config
で制御されていました。
その他の方法として、Datadog Exporter を含む OTel Col をビルドし独自のコレクターを運用し Datadog をバックエンドとして指定する方式も用意されています。この方式では、Datadog Exporter のみが Datadog のサポートの対象となるため、コレクター全体の問題の対処を自ら行う必要があるというリスクを抱えていました。
Live Debugging
概要
Live Debugger/Debugging は Datadog APM の機能の一部である Error Tracking for APM と IDE インテグレーションの組み合わせによって提供される機能です。発表から現在まで Preview(Private beta) として提供され、リクエストに応じて機能が利用できます。
Live Debugger は Preview 機能である Error Tracking Exception Replay を有効化することで利用できます。Exception Replay によって取得された例外スロー時点のスタックフレームのローカル変数値などを、IDE インテグレーション である Datadog Extension for VSCode などで利用できます。
これにより、エラーの発生条件を理解しローカルで本番環境のバグを再現することができ、再発防止に向けて実用的な改修を行うことができます。また、Datadog は AI を使用して関連する上流および下流サービスすべてをモック化し、統合テストを作成する機能を兼ね備えます。
以前までの機能
Live Debugger の提供前は、Datadog は IDE インテグレーションとして複数の IDE とのインテグレーションを拡充していました。VSCode に代表される IDE インテグレーションは、ローカル環境での分析や洞察を深めたり、本番環境のコンテキストを確認しながらのコードの改修に利用できる機能が用意されています。
パフォーマンス・セキュリティ・信頼性を確認できる Code Insights 機能、ローカル環境で HTTP/ブラウザテストを実行できる Synthetics Test、ソースコードファイルから関連する Datadog Log Managent 上のログに遷移できる Logs Navigation、Datadog 上で表示される行番号と現在作業中のコードの行番号の称号をする Code Delta、Datadog が事前定義したルールをもとにコードの静的解析ができるStatic Analysisが提供されています。
この機能の一部として、パフォーマンス・セキュリティ観点での統合機能は多く提供されていましたが、エラーやバグに関する洞察を得られるものはなく、Error Tracking の情報だけではローカル環境でのバグの再現の難しいケースがありました。
Product Analytics
概要
Datadog Product Analytics は Datadog RUM SDK によって取得されるフロントエンド情報から、エンジニアリングに関わらないユーザーの行動・傾向・属性分析を行うために分離される独立したプラットフォームです。発表時から現在まで Preview(Private beta) で提供され、リクエストに応じて機能が利用できます。
Product Analytics はエンジニアリング組織以外のビジネス組織(マーケティング・人事・ブランディング)が利用するための Datadog プラットフォームから分離された直感的な UI/UX を提供します。
主な機能としては、サイト上のユーザーのスティッキネスを可視化する User Retention、Sankey/Funnel ビューでユーザージャーニーを追跡する Journey、ページ上の各要素の利用頻度を測定する Heatmap などがあります。
以前までの機能
Product Analytics の提供前は、Datadog RUM 内にこれらの機能は統合されていました。プロダクトの開発に携わらない製品分析チームのような役割をもつユーザーにとって、RUM のビューはシステムに関連する監視情報が複雑に示され、Datadog の統合プラットフォームも機能が多く目的のページに辿り着くのが困難な場合がありました。
Lambda Remote Instrumentation
概要
Lambda Remote Instrumentation はその名の通り、AWS Lambda の監視を行うためのライブラリ・拡張機能の実装を Datadog の UI からリモートで実行できる機能です。発表時から現在まで Preview(Private beta) で提供され、リクエストに応じて機能が利用できます。
AWS Lambda に対する Datadog Serverless Monitoring の実装はいくつかの方法が提供されていますが、IaC や Datadog CLI による直接的な組み込み作業を行うことなく、Datadog UI 上で監視対象へ監視の実装・削除が可能となります。
以前までの機能
Lambda Remote Instrumentation 提供前は、複数ある Lambda への監視の実装方法は、サーバレス環境を中心とする環境を持つユーザーにとってかなりコストのかかる作業でした。本実装方法により、必要に応じた Lambda への監視の実装・削除が素早く簡単に行え、迅速に APM, Enhanced Metrics, Logs などの監視情報の収集と可視化を制御できます。
おわりに
本来は6月に公開を予定していた本記事ですが、執筆に時間を取れず公開が12月に遅れてしまいました。
Datadog は製品開発に積極的に投資しており、新機能の追加だけではなくプロダクト間の連携や UI/UX・実装方法の改善などさまざまな変更が日々行われています。Datadog の年次イベントである DASH では、Datadog が自信を持ってユーザーに提供できる目玉機能の発表が行われ、業界にも大きなインパクトをもたらします。
皆様も是非来年 DASH 2025 に参加いただき、オブザーバビリティの最前線を体感してみてください🐶