---
title: Jaeger
description: Trace your agent with a local or self-hosted Jaeger OTLP backend.
type: instrumentation
keywords:
  - otel
  - opentelemetry
  - tracing
  - observability
  - local
  - self-hosted
---

# Jaeger

Instrumentation integration for eve. Trace your agent with a local or self-hosted Jaeger OTLP backend.

## Install

Add Jaeger instrumentation from eve's registry:

```bash
eve add instrumentation/jaeger
```

## Quick start

Create `agent/instrumentation.ts` and point the OTLP exporter at your Jaeger collector:

```ts
// agent/instrumentation.ts
import { defineInstrumentation } from "eve/instrumentation";
import { OTLPHttpProtoTraceExporter, registerOTel } from "@vercel/otel";

export default defineInstrumentation({
  setup: ({ agentName }) =>
    registerOTel({
      serviceName: agentName,
      traceExporter: new OTLPHttpProtoTraceExporter({
        url: "http://localhost:4318/v1/traces",
      }),
    }),
});
```

## Configure

Run Jaeger locally with Docker and open the UI at `http://localhost:16686`:

```bash
docker run --rm -p 16686:16686 -p 4318:4318 jaegertracing/jaeger:latest
```

Point the exporter at your collector's OTLP HTTP endpoint when self-hosting. See the [instrumentation guide](/docs/guides/instrumentation) for the trace hierarchy and the `recordInputs`/`recordOutputs` controls.

[Read the full instrumentation documentation](/docs/guides/instrumentation)

---

For a semantic overview of all documentation, see [/sitemap.md](/sitemap.md)

For an index of all available documentation, see [/llms.txt](/llms.txt)

For agent-facing discovery, including API and MCP surfaces, see [/agents.md](/agents.md)