> ## Documentation Index
> Fetch the complete documentation index at: https://docs.crewai.com/llms.txt
> Use this file to discover all available pages before exploring further.

# OpenTelemetry Export

> Export traces and logs from your CrewAI AMP deployments to your own OpenTelemetry collector

CrewAI AMP can export OpenTelemetry **traces** and **logs** from your deployments directly to your own collector. This lets you monitor agent performance, track LLM calls, and debug issues using your existing observability stack.

Telemetry data follows the [OpenTelemetry GenAI semantic conventions](https://opentelemetry.io/docs/specs/semconv/gen-ai/) plus additional CrewAI-specific attributes.

## Prerequisites

<CardGroup cols={2}>
  <Card title="CrewAI AMP account" icon="users">
    Your organization must have an active CrewAI AMP account.
  </Card>

  <Card title="OpenTelemetry collector" icon="server">
    You need an OpenTelemetry-compatible collector endpoint (e.g., your own OTel Collector, Datadog, Grafana, or any OTLP-compatible backend).
  </Card>
</CardGroup>

## Setting up a collector

1. In CrewAI AMP, go to **Settings** > **OpenTelemetry Collectors**.
2. Click **Add Collector**.
3. Select an integration type — **OpenTelemetry Traces** or **OpenTelemetry Logs**.
4. Configure the connection:
   * **Endpoint** — Your collector's OTLP endpoint (e.g., `https://otel-collector.example.com:4317`).
   * **Service Name** — A name to identify this service in your observability platform.
   * **Custom Headers** *(optional)* — Add authentication or routing headers as key-value pairs.
   * **Certificate** *(optional)* — Provide a TLS certificate if your collector requires one.
5. Click **Save**.

<Frame>
  <img src="https://mintcdn.com/crewai/Iusqhn1gyqMXVYO_/images/crewai-otel-collector-config.png?fit=max&auto=format&n=Iusqhn1gyqMXVYO_&q=85&s=a20c5089fc516d820142637c18cf9a5e" alt="OpenTelemetry Collector Configuration" width="2448" height="1502" data-path="images/crewai-otel-collector-config.png" />
</Frame>

<Tip>
  You can add multiple collectors — for example, one for traces and another for logs, or send to different backends for different purposes.
</Tip>
