メインコンテンツへ移動

ArizeExporter

Tracing データを Arize Phoenix、Arize AX、または OpenInference セマンティック規約をサポートする OpenTelemetry 互換の Observability プラットフォームへ送信します。

コンストラクター
コンストラクターへの直接リンク

new ArizeExporter(config: ArizeExporterConfig)

ArizeExporterConfig
arizeexporterconfigへの直接リンク

type ArizeExporterConfig = Omit<OtelExporterConfig, 'provider'> & {
// Phoenix / OpenTelemetry configuration
endpoint?: string
apiKey?: string

// Arize AX configuration
spaceId?: string

// Common configuration
projectName?: string
headers?: Record<string, string>
}

OtelExporterConfigprovider を除く)を継承し、次の項目を含みます。

  • timeout?: number - エクスポートのタイムアウト(ミリ秒、デフォルト:30000)
  • batchSize?: number - バッチあたりの Span 数(デフォルト:512)
  • logLevel?: LogLevel | 'debug' | 'info' | 'warn' | 'error' - ログレベル(デフォルト:WARN)
  • resourceAttributes?: Record<string, any> - カスタムリソース属性

メタデータの引き渡し
メタデータの引き渡しへの直接リンク

予約されていない Span 属性は OpenInference の metadata ペイロードにシリアライズされます。tracingOptions.metadata(例:companyIdtier)から追加します。inputoutputsessionId、thread/user ID、OpenInference ID などの予約フィールドは自動的に除外されます。

メソッド
メソッドへの直接リンク

exportTracingEvent
exporttracingeventへの直接リンク

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

Tracing イベントを設定済みのエンドポイントへエクスポートします。

export
exportへの直接リンク

async export(spans: ReadOnlySpan[]): Promise<void>

OpenInference セマンティック規約に従い、OpenTelemetry を使用して Span をバッチエクスポートします。

flush
flushへの直接リンク

async flush(): Promise<void>

exporter をシャットダウンせず、バッファー内のすべての Span を設定済みエンドポイントへ強制的にフラッシュします。ランタイム終了前に Span が確実にエクスポートされるようにする必要がある、サーバーレス環境で役立ちます。

shutdown
shutdownへの直接リンク

async shutdown(): Promise<void>

保留中のデータをフラッシュし、クライアントをシャットダウンします。

使用方法
使用方法への直接リンク

ゼロコンフィグ(環境変数を使用)
ゼロコンフィグ(環境変数を使用)への直接リンク

import { ArizeExporter } from '@mastra/arize'

// For Phoenix: Set PHOENIX_COLLECTOR_ENDPOINT, PHOENIX_API_KEY, PHOENIX_PROJECT_NAME
// For Arize AX: Set ARIZE_SPACE_ID, ARIZE_API_KEY, ARIZE_PROJECT_NAME
const exporter = new ArizeExporter()

Phoenix の設定
Phoenix の設定への直接リンク

import { ArizeExporter } from '@mastra/arize'

const exporter = new ArizeExporter({
endpoint: 'http://localhost:6006/v1/traces',
apiKey: process.env.PHOENIX_API_KEY, // Optional for local Phoenix
projectName: 'my-ai-project',
})

Arize AX の設定
Arize AX の設定への直接リンク

import { ArizeExporter } from '@mastra/arize'

const exporter = new ArizeExporter({
spaceId: process.env.ARIZE_SPACE_ID!,
apiKey: process.env.ARIZE_API_KEY!,
projectName: 'my-ai-project',
})

OpenInference セマンティック規約
openinference-semantic-conventionsへの直接リンク

ArizeExporter は OpenInference セマンティック規約 を生成 AI アプリケーション向けに実装し、異なる Observability プラットフォーム間で標準化された Trace 構造を提供します。

タグのサポート
タグのサポートへの直接リンク

ArizeExporter は分類とフィルタリングのための Trace タグ付けをサポートします。タグはルート Span にのみ適用され、OpenInference ネイティブの tag.tags セマンティック規約にマッピングされます。

使用方法
使用方法への直接リンク

const result = await agent.generate('Hello', {
tracingOptions: {
tags: ['production', 'experiment-v2', 'user-request'],
},
})

タグの保存方法
タグの保存方法への直接リンク

タグは OpenInference の tag.tags 属性を使用して保存されます:

{
"tag.tags": ["production", "experiment-v2", "user-request"]
}