agentc
GitHubagentc-sh/agentc
agentc
GitHubagentc-sh/agentc
›Introduction
Get started›Concepts in 5 minutes›Build your first agent›Add your first tool›Serve and connect
Concepts›Architecture overview›The manifest›The compilation pipeline›Archetypes›The graph›Tools and capabilities›Runtime libraries›Skills›Agents and prompts›Serving and protocols›Observability
Guides›Author a manifest›Write a tool›Give your agent a filesystem›Control network egress›Connect external tools via MCP›Connect agents via A2A›Use the bash tool›Control tool access with capabilities›Write templated prompts›Manage prompts with Langfuse›Pass context from the client›Configure a model provider›Connect a CopilotKit frontend›Deploy a standalone binary›Deploy with Docker and PostgreSQL›Instrument with OpenTelemetry›Extend code generation with blocks
Reference
Manifest
Runtime
›Observability

Observability

Environment variables that configure logging, tracing, and error reporting.

Observability is configured entirely through environment variables read at startup. No manifest changes or recompilation are required. For what is instrumented and why, see Observability.

Logging

The agent writes structured JSON logs to stdout.

VariableDefaultDescription
LOG_LEVELinfoLog level. Accepts trace, debug, info, warn, or error.

OpenTelemetry

The agent exports traces, metrics, and logs via OpenTelemetry over OTLP/HTTP. Export is enabled when OTLP_ENDPOINT is set and disabled when it is absent.

VariableDefaultDescription
OTLP_ENDPOINTnoneBase URL of the OTLP HTTP endpoint, for example http://localhost:4318.
APP_ENVproductionEnvironment tag attached to all OTLP resource attributes.

The service name is the agent name from the manifest and is baked in at compile time. The OTLP protocol is always HTTP; the /v1/traces, /v1/metrics, and /v1/logs paths are appended automatically. Any OTLP-compatible backend works, including the OpenTelemetry Collector, Jaeger, Grafana Tempo, Honeycomb, and Datadog.

Sentry

Error tracking via Sentry catches and reports unhandled errors and panics. When SENTRY_DSN is not set, Sentry is not initialised and has no runtime overhead.

VariableDefaultDescription
SENTRY_DSNnoneYour Sentry DSN. When set, Sentry is initialised automatically at startup.
APP_ENVproductionEnvironment tag attached to all Sentry events, for example production or staging.

The release version reported to Sentry is the agent version from the manifest, baked in at compile time.

← PreviousA2A

© 2026 pogue.dev. All rights reserved.

Creative CommonsCC BY 4.0
On this pageLoggingOpenTelemetrySentry

Search docs

Search the agentc documentation