Exportação OpenTelemetry
O agentistics exporta métricas de uso por OpenTelemetry (OTLP/HTTP). Funciona com Grafana, Datadog, New Relic, Honeycomb e qualquer coletor compatível com OTLP.
Defina o endpoint antes de subir o servidor:
OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318 agentop serverO daemon de OpenTelemetry já roda dentro do agentop server. Numa máquina sem interface, rode só
o daemon:
OTEL_EXPORTER_OTLP_ENDPOINT=http://localhost:4318 agentop watchPara deixar o daemon ligado com o sistema:
agentop autostart watch enableVariáveis
Seção intitulada “Variáveis”| Variável | Padrão | Descrição |
|---|---|---|
OTEL_EXPORTER_OTLP_ENDPOINT |
nenhum (exportação desligada) | endpoint do coletor OTLP |
OTEL_EXPORTER_OTLP_HEADERS |
nenhum | cabeçalhos extras, por exemplo Authorization=Bearer token |
OTEL_SERVICE_NAME |
agentistics |
nome do serviço nas métricas |
CLAUDE_STATS_WATCH_INTERVAL |
30 |
intervalo de leitura em segundos (mínimo 5) |
Como funciona
Seção intitulada “Como funciona”O daemon observa os dados do Claude Code em ~/.claude/, recalcula as métricas a cada mudança
(com um intervalo de 2 segundos para juntar mudanças em sequência), lê de novo a cada
CLAUDE_STATS_WATCH_INTERVAL segundos para não perder nada e envia tudo ao endpoint.
Métricas exportadas
Seção intitulada “Métricas exportadas”Todas usam o prefixo claude_stats:
| Métrica | Tipo | Unidade |
|---|---|---|
claude_stats.messages.total |
Counter | mensagens |
claude_stats.sessions.total |
Counter | sessões |
claude_stats.tool_calls.total |
Counter | chamadas |
claude_stats.tokens.input |
Counter | tokens |
claude_stats.tokens.output |
Counter | tokens |
claude_stats.cost.usd |
Counter | USD (estimado) |
claude_stats.git.commits |
Counter | commits |
claude_stats.git.lines_added |
Counter | linhas |
claude_stats.git.lines_removed |
Counter | linhas |
claude_stats.git.files_modified |
Counter | arquivos |
claude_stats.streak |
Gauge | dias |
claude_stats.longest_session |
Gauge | minutos |
claude_stats.active_projects |
Gauge | projetos |
claude_stats.tokens.by_model.input |
Counter | tokens por modelo |
claude_stats.tokens.by_model.output |
Counter | tokens por modelo |
claude_stats.tool_calls.by_tool |
Counter | chamadas por ferramenta |
Exemplo: coletor OTel e Prometheus
Seção intitulada “Exemplo: coletor OTel e Prometheus”receivers: otlp: protocols: http: endpoint: 0.0.0.0:4318
exporters: prometheus: endpoint: "0.0.0.0:8889"
service: pipelines: metrics: receivers: [otlp] exporters: [prometheus]No Grafana, adicione uma fonte Prometheus apontando para o coletor (porta 8889) e use as métricas
claude_stats.*.
A pasta grafana/ do repositório traz uma pilha
local pronta, com Docker Compose: o coletor OTel na porta 4318, o Prometheus na 9090 e o
Grafana na 3000, já com a fonte de dados e um painel do agentistics configurados.