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

# Observability

> Monitor agent performance and investigate runs with span-level visibility.

export const SupportedOn = ({ui = false, api = true, sdk = true, sdkVersion = null}) => <div className="not-prose">
    <div className="inline-flex flex-wrap items-center gap-x-5 gap-y-2 px-4 py-2.5 rounded-lg border border-[#00dad3] bg-[#00dad3]/10 text-sm">
      <span className="font-bold text-black dark:text-white whitespace-nowrap">
        Supported on
      </span>
      <div className="flex items-center gap-5">
        <span className="inline-flex items-center gap-1.5 font-semibold text-black dark:text-white">
          <Icon icon={ui ? "circle-check" : "circle-xmark"} color={ui ? "#00dad3" : "#9ca3af"} size={16} />
          UI
        </span>
        <span className="inline-flex items-center gap-1.5 font-semibold text-black dark:text-white">
          <Icon icon={api ? "circle-check" : "circle-xmark"} color={api ? "#00dad3" : "#9ca3af"} size={16} />
          API
        </span>
        <span className="inline-flex items-center gap-1.5 font-semibold text-black dark:text-white">
          <Icon icon={sdk ? "circle-check" : "circle-xmark"} color={sdk ? "#00dad3" : "#9ca3af"} size={16} />
          SDK
        </span>
      </div>
    </div>
    {sdk && sdkVersion && <div className="mt-1.5 text-xs text-black/60 dark:text-white/60">
        Requires seekrai {sdkVersion}
      </div>}
  </div>;

<SupportedOn ui={true} api={true} sdk={true} />

Observability gives you visibility into how your agents are performing by capturing a record of every run. Each record includes when the run happened, which model was used, how many tokens were consumed, and whether any errors occurred.

## What you can see

Each agent run generates spans that capture:

* **Timing** – When a run started and ended
* **Model usage** – Which model handled the request
* **Token consumption** – Input and output token counts
* **Errors** – Whether an exception occurred and what type it was

## When to use

**Monitor agent health** – Track whether runs are completing successfully and identify patterns in failures.

**Investigate a failed run** – Retrieve spans for a specific run to see where it went wrong.

**Understand usage and costs** – Review token consumption across runs to inform capacity planning and cost management.

For implementation details, see [Observability SDK guide](/flow/sdk/observability).
