メインコンテンツへ移動

LangSmithExporter

Observability のために Tracing データを LangSmith へ送信します。

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

new LangSmithExporter(config: LangSmithExporterConfig)

LangSmithExporterConfig
langsmithexporterconfigへの直接リンク

interface LangSmithExporterConfig extends ClientConfig, BaseExporterConfig {
client?: Client
projectName?: string
}

ClientConfig(LangSmith SDK)と BaseExporterConfig の両方を拡張します。

  • BaseExporterConfig の項目:logger?: IMastraLoggerlogLevel?: LogLevel | 'debug' | 'info' | 'warn' | 'error'
  • ClientConfig の項目:apiKeyapiUrlcallerOptionshideInputshideOutputs など

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

exportTracingEvent
exporttracingeventへの直接リンク

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

Tracing イベントを LangSmith へエクスポートします。

flush
flushへの直接リンク

async flush(): Promise<void>

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

shutdown
shutdownへの直接リンク

async shutdown(): Promise<void>

アクティブなすべての Span を終了し、Trace マップをクリアします。

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

import { LangSmithExporter } from '@mastra/langsmith'

const exporter = new LangSmithExporter({
apiKey: process.env.LANGSMITH_API_KEY,
projectName: 'my-project', // Optional: specify which project to send traces to
apiUrl: 'https://api.smith.langchain.com',
logLevel: 'info',
})

環境変数
環境変数への直接リンク

変数説明
LANGSMITH_API_KEYLangSmith API キー
LANGCHAIN_PROJECTTrace のデフォルトのプロジェクト名(projectName が指定されていない場合に使用)
LANGSMITH_BASE_URLセルフホストインスタンスの API URL

Span タイプのマッピング
Span タイプのマッピングへの直接リンク

Span タイプLangSmith タイプ
MODEL_GENERATIONllm
MODEL_CHUNKllm
TOOL_CALLtool
MCP_TOOL_CALLtool
PROVIDER_TOOL_CALLtool
その他すべてchain

withLangsmithMetadata
withlangsmithmetadataへの直接リンク

Tracing オプションに LangSmith 固有のメタデータを追加する helper 関数です。

function withLangsmithMetadata(metadata: LangSmithMetadataInput): TracingOptionsUpdater

LangSmithMetadataInput
langsmithmetadatainputへの直接リンク

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

import { buildTracingOptions } from '@mastra/observability'
import { withLangsmithMetadata } from '@mastra/langsmith'

// Route to a specific project
const tracingOptions = buildTracingOptions(withLangsmithMetadata({ projectName: 'my-project' }))

// Set multiple fields
const tracingOptions = buildTracingOptions(
withLangsmithMetadata({
projectName: 'my-project',
sessionId: 'user-123',
}),
)