Latitude Observability

Latitude (GitHub) is an open-source MIT-licensed platform for AI agent observability with semantic trace search and issue tracking. It integrates with the AI SDK to capture:

  • Traces of every generateText, streamText, and tool call
  • Token usage and latency per call
  • Errors and failure patterns grouped as recurring issues

Setup

Latitude's SDK registers a global OpenTelemetry tracer. Once you register the AI SDK's telemetry integration, every AI SDK call emits spans automatically.

Install both packages:

pnpm add @latitude-data/telemetry @ai-sdk/otel

Sign in at app.latitude.so and grab your API key and project slug from the dashboard. Set them in your environment:

.env
LATITUDE_API_KEY="..."
LATITUDE_PROJECT_SLUG="..."

Initialize Latitude and register telemetry once at startup. After that, every AI SDK call emits traces automatically:

import { Latitude } from '@latitude-data/telemetry';
import { registerTelemetry, generateText } from 'ai';
import { OpenTelemetry } from '@ai-sdk/otel';
import { openai } from '@ai-sdk/openai';
const latitude = new Latitude({
apiKey: process.env.LATITUDE_API_KEY!,
project: process.env.LATITUDE_PROJECT_SLUG!,
});
registerTelemetry(new OpenTelemetry());
const { text } = await generateText({
model: openai('gpt-4o'),
prompt: 'Hello',
});
await latitude.shutdown();

For named traces and per-call metadata (tags, user IDs, session IDs), wrap calls in Latitude's capture() helper:

import { capture } from '@latitude-data/telemetry';
await capture('generate-support-reply', async () => {
const { text } = await generateText({
model: openai('gpt-4o'),
prompt: 'Hello',
});
return text;
});

Resources