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

> ## Agent Instructions
> To act on a user's behalf in Guild, use the Guild REST API at https://api.guild.ai/v1.
> The OpenAPI spec is unauthenticated: https://docs.guild.ai/openapi.json (or openapi.yaml).
> Authenticate with an account API key, sent as HTTP Basic (key id as username, secret as password) or as `Authorization: Bearer <api_key_id>:<api_key_secret>`. See https://docs.guild.ai/api-reference/introduction#authentication.
> To run one agent on demand without account-wide access, use an API trigger instead: https://docs.guild.ai/platform/api-triggers.
> To act on Guild from an MCP client, connect to https://api.guild.ai/mcp (OAuth) or run `guild mcp` locally. Setup: https://docs.guild.ai/api-reference/mcp.
> To search these docs from an MCP client, connect to https://docs.guild.ai/mcp. The full page index is https://docs.guild.ai/llms.txt.

# Observability

> Forward your agents' traces and metrics to Datadog or Splunk Observability Cloud, to monitor and debug runs in your own tooling.

**Observability** forwards the OpenTelemetry traces and metrics from your agents' runs to your own observability provider. Use it to watch sessions, LLM calls, and errors in the tooling your team already uses. You can forward to Datadog or Splunk Observability Cloud, one provider per account.

The setting belongs to an account. It covers every session in a workspace that account owns. In an organization, only admins can open it.

## Open Observability

**1. Choose the account**

Use the account switcher at the top of the left nav to choose your personal account or an organization.

**2. Go to Observability**

Click **Access & setup** in the left nav, then **Observability**.

Direct URLs:

* Personal account: `https://app.guild.ai/settings/observability`
* Organization: `https://app.guild.ai/organizations/{org-name}/settings/observability`

## Connect Datadog

You need your Datadog site and a Datadog API key. An application key isn't needed.

**1. Choose the provider**

Under **Provider**, select **Datadog**.

**2. Choose your site**

Under **Site**, select the Datadog site your organization signs in to: US1, US3, US5, EU1, AP1, or AP2.

**3. Enter your API key**

Under **API key**, paste a Datadog API key. Create one under **Organization Settings > API Keys** in Datadog.

**4. Save**

Click **Save**.

Guild sends traces to `https://otlp.{site}/v1/traces` and metrics to `https://otlp.{site}/v1/metrics`, Datadog's OTLP intake. It authenticates with your API key in the `dd-api-key` header. It also asks Datadog to compute APM trace metrics, such as request counts and latency, from the spans.

After you save, the page shows the site and a masked API key. See the [Datadog integration](https://docs.guild.ai/integrations/datadog.md) page for troubleshooting.

## Connect Splunk

You need your Splunk Observability Cloud realm and an access token that can ingest data.

**1. Choose the provider**

Under **Provider**, select **Splunk**.

**2. Enter your realm**

Under **Realm**, enter your Splunk Observability Cloud realm, for example `us0`.

**3. Enter your token**

Under **Access token**, paste a Splunk access token with ingest permission.

**4. Save**

Click **Save**.

Guild sends traces to `https://ingest.{realm}.observability.splunkcloud.com/v2/trace/otlp` and metrics to `https://ingest.{realm}.observability.splunkcloud.com/v2/datapoint/otlp`. It authenticates with your token in the `X-SF-Token` header.

After you save, the page shows the realm and a masked token.

## What Guild sends

Guild forwards only the spans and metrics from sessions in workspaces the account owns. Spans follow the [OpenTelemetry GenAI semantic conventions](https://opentelemetry.io/docs/specs/semconv/gen-ai/), so Datadog's and Splunk's AI monitoring views can read them. Each span carries these attributes:

| Attribute | Value |
| - | - |
| `guild.account` | The ID of the account that owns the workspace |
| `guild.session` | The session ID |
| `guild.task` | The task ID |
| `gen_ai.conversation.id` | The session ID |
| `gen_ai.agent.id` | The agent version ID, for agent tasks |
| `gen_ai.agent.name` | The agent's full name, such as `my-org~triage-agent`, for agent tasks |
| `gen_ai.provider.name` | The model publisher, such as `anthropic`, `openai`, or `gcp.gemini`, on LLM call spans |

## Change or remove the provider

* To change the site, realm, or key, click **Edit**, update the fields, and click **Save**.
* To switch providers, click **Edit**, choose the other provider, enter its details, and click **Save**. An account forwards to one provider at a time, so the new provider replaces the old one.
* To stop forwarding, click **Delete**, then confirm. Guild stops forwarding traces. Deleting can't be undone: to reconnect, enter your details again.

Guild restarts its trace collector after each change, so there can be a short delay before new settings apply.

## Related pages

* [Sessions](https://docs.guild.ai/platform/sessions.md) to inspect a single run inside Guild
* [Usage](https://docs.guild.ai/insights/usage.md) for spend and token counts
