@fiddler-ai/langgraph
v0.1.1
Published
LangGraph JS instrumentation for Fiddler observability — auto-traces LangGraph applications via OpenTelemetry
Maintainers
Readme
@fiddler-ai/langgraph
LangGraph JS instrumentation for Fiddler observability. Auto-traces LangGraph applications via OpenTelemetry using the @fiddler-ai/otel SDK.
Installation
npm install @fiddler-ai/langgraph @fiddler-ai/otel @opentelemetry/api @langchain/coreQuick Start
import { FiddlerClient } from "@fiddler-ai/otel";
import { LangGraphInstrumentor, setConversationId } from "@fiddler-ai/langgraph";
// 1. Create a Fiddler client
const client = new FiddlerClient({
url: "https://app.fiddler.ai",
apiKey: process.env.FIDDLER_API_KEY!,
applicationId: "your-app-uuid",
});
// 2. Auto-instrument LangGraph
const instrumentor = new LangGraphInstrumentor(client);
await instrumentor.instrument();
// 3. Set conversation context
setConversationId("session-123");
// 4. Use LangGraph normally — traces are auto-captured
const result = await graph.invoke({ messages: [new HumanMessage("Hello")] });
// 5. Flush before exit
await client.flush();Manual Callback Handler
For more control, use the callback handler directly:
import { FiddlerClient } from "@fiddler-ai/otel";
import { FiddlerCallbackHandler } from "@fiddler-ai/langgraph";
const client = new FiddlerClient({ /* ... */ });
const handler = new FiddlerCallbackHandler(client);
const result = await graph.invoke(
{ messages: [new HumanMessage("Hello")] },
{ callbacks: [handler] },
);Context Utilities
import {
setConversationId,
addSessionAttributes,
setLlmContext,
runWithContext,
} from "@fiddler-ai/langgraph";
// Group traces by conversation
setConversationId("thread-abc");
// Add user metadata to all spans
addSessionAttributes({ userId: "user-123", environment: "production" });
// Attach RAG context to a model
setLlmContext(chatModel, "Retrieved context: ...");
// Isolate context in async boundaries
runWithContext(() => {
setConversationId("isolated-session");
// spans here get "isolated-session"
});Requirements
- Node.js >= 20
@langchain/core>= 0.3.0@fiddler-ai/otel>= 0.1.0@opentelemetry/api>= 1.9.0
