跳至主要內容

DatadogExporter

將 Tracing 資料傳送至 Datadog 的 LLM Observability 產品,以進行監控與分析。

資訊

如果您也使用 dd-trace APM 自動檢測,並需要正確將其設為 Mastra span 的子項,請改用 DatadogBridge。Exporter 會在執行完成後傳送 LLM Observability 資料,因此不會參與 dd-trace 的即時 scope。

建構函式
「建構函式」的直接連結

new DatadogExporter(config: DatadogExporterConfig)

DatadogExporterConfig
「datadogexporterconfig」的直接連結

interface DatadogExporterConfig extends BaseExporterConfig {
apiKey?: string
mlApp?: string
site?: string
service?: string
env?: string
agentless?: boolean
integrationsEnabled?: boolean
}

擴充 BaseExporterConfig,其中包括:

  • logger?: IMastraLogger - Logger 執行個體
  • logLevel?: LogLevel | 'debug' | 'info' | 'warn' | 'error' - Log 層級(預設:INFO)

方法
「方法」的直接連結

exportTracingEvent
「exporttracingevent」的直接連結

async exportTracingEvent(event: TracingEvent): Promise<void>

將 tracing 事件匯出至 Datadog LLM Observability。

flush
「flush」的直接連結

async flush(): Promise<void>

強制將所有緩衝的 span flush 至 Datadog,而不關閉 exporter。這在 serverless 環境中特別實用,可確保 runtime 結束前已匯出 span。

shutdown
「shutdown」的直接連結

async shutdown(): Promise<void>

Flush 待處理資料並關閉 exporter。取消所有待處理的清理 timer,並停用 LLM Observability。

使用方式
「使用方式」的直接連結

零設定(使用環境變數)
「零設定(使用環境變數)」的直接連結

import { DatadogExporter } from '@mastra/datadog'

// Reads from DD_LLMOBS_ML_APP, DD_API_KEY, DD_SITE, DD_ENV
const exporter = new DatadogExporter()

明確設定
「明確設定」的直接連結

import { DatadogExporter } from '@mastra/datadog'

const exporter = new DatadogExporter({
mlApp: 'my-llm-app',
apiKey: process.env.DD_API_KEY,
site: 'datadoghq.com',
env: 'production',
})

搭配本機 Datadog Agent
「搭配本機 Datadog Agent」的直接連結

const exporter = new DatadogExporter({
mlApp: 'my-llm-app',
agentless: false, // Use local Datadog Agent
env: 'production',
})

Span 對應
「Span 對應」的直接連結

Mastra span 類型會對應至 Datadog LLM Observability span kind:

Mastra SpanTypeDatadog 種類
AGENT_RUNagent
MODEL_GENERATIONworkflow
MODEL_STEPllm
TOOL_CALLtool
MCP_TOOL_CALLtool
PROVIDER_TOOL_CALLtool
WORKFLOW_RUNworkflow
所有其他類型task

所有未對應的 span 類型(包括 MODEL_CHUNKWORKFLOW_STEPGENERIC 與未來的 span 類型)都會自動預設為 task

環境變數
「環境變數」的直接連結

Exporter 會從下列環境變數讀取設定:

變數說明
DD_API_KEYDatadog API key
DD_LLMOBS_ML_APPML 應用程式名稱
DD_SITEDatadog site
DD_ENV環境名稱
DD_LLMOBS_AGENTLESS_ENABLED設為 'false' 或 '0' 以使用本機 Agent