Pular para o conteúdo
Skillpedia
Agentes48 mil · #2051

agent-observability

Ajuda seu agente a ser monitorado. Ele mostra o que o agente está fazendo, quanto tempo leva e quanto custa. É útil para saber se o agente está funcionando bem e para corrigir problemas.

O que ela faz

Esta ferramenta ajuda a entender como um agente de IA está funcionando. Ela rastreia o tempo que leva para responder, a quantidade de 'palavras' (tokens) que usa, os custos e se ocorrem erros.

Quando usar

  • ✓Quando você quer saber por que um agente de IA está lento.
  • ✓Para verificar o custo de uso de um agente de IA.
  • ✓Ao tentar descobrir por que um agente de IA está dando erros.

Exemplo do que pedir para a IA

“Quero monitorar o desempenho e os custos do meu agente de IA.”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/agent-observability/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/agent-observability/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Ela coleta informações sobre o tempo de resposta, o uso de tokens e os custos. Essas informações são apresentadas de forma organizada para facilitar a análise.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add sickn33/agentic-awesome-skills --skill agent-observability

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/agent-observability/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Observabilidade de Agentes

Monitore o comportamento de agentes de IA com logs, traces, métricas e telemetria de custos. Esta habilidade abrange a pilha completa de observabilidade para aplicações baseadas em LLM: desde contadores brutos do Prometheus até dashboards do Grafana, tracing com OpenTelemetry, logging estruturado, rastreamento de custos, definição de SLO e redação de PII.


Métricas Principais

Defina estas métricas na camada da aplicação. Todos os exemplos usam as convenções de nomenclatura da biblioteca cliente do Prometheus.

Latência

from prometheus_client import Histogram

# Total end-to-end latency for a full agent turn (user prompt -> final response)
AGENT_LATENCY = Histogram(
    "agent_request_duration_seconds",
    "End-to-end latency of an agent request",
    labelnames=["agent_name", "model", "status"],
    buckets=(0.25, 0.5, 1, 2, 5, 10, 30, 60, 120),
)

# Latency of a single LLM API call (one completion request)
LLM_CALL_LATENCY = Histogram(
    "llm_call_duration_seconds",
    "Latency of an individual LLM API call",
    labelnames=["model", "provider", "stream"],
    buckets=(0.1, 0.25, 0.5, 1, 2, 5, 10, 30),
)

# Latency of tool/function calls executed by the agent
TOOL_CALL_LATENCY = Histogram(
    "agent_tool_call_duration_seconds",
    "Latency of a tool call executed by the agent",
    labelnames=["tool_name", "agent_name", "status"],
    buckets=(0.05, 0.1, 0.25, 0.5, 1, 2, 5, 10),
)

Uso de Tokens

from prometheus_client import Counter, Histogram

PROMPT_TOKENS = Counter(
    "llm_prompt_tokens_total",
    "Total prompt tokens sent to the model",
    labelnames=["model", "agent_name"],
)

COMPLETION_TOKENS = Counter(
    "llm_completion_tokens_total",
    "Total completion tokens received from the model",
    labelnames=["model", "agent_name"],
)

CACHED_TOKENS = Counter(
    "llm_cached_tokens_total",
    "Prompt tokens served from KV-cache (provider-reported)",
    labelnames=["model", "agent_name"],
)

TOKENS_PER_REQUEST = Histogram(
    "llm_tokens_per_request",
    "Total tokens (prompt + completion) per request",
    labelnames=["model", "agent_name"],
    buckets=(100, 500, 1000, 2000, 4000, 8000, 16000, 32000, 64000, 128000),
)

Custo

from prometheus_client import Counter

LLM_COST = Counter(
    "llm_cost_dollars_total",
    "Estimated cost in USD for LLM usage",
    labelnames=["model", "agent_name", "cost_type"],  # cost_type: prompt | completion
)

Chamadas de Ferramentas

from prometheus_client import Counter

TOOL_CALLS_TOTAL = Counter(
    "agent_tool_calls_total",
    "Total tool calls made by agents",
    labelnames=["tool_name", "agent_name", "status"],  # status: success | error | timeout
)

Erros e Tentativas

from prometheus_client import Counter, Gauge

LLM_ERRORS = Counter(
    "llm_errors_total",
    "Errors returned by the LLM provider",
    labelnames=["model", "provider", "error_type"],  # error_type: rate_limit | timeout | 5xx | auth
)

LLM_RETRIES = Counter(
    "llm_retries_total",
    "Retried LLM API calls",
    labelnames=["model", "provider", "retry_reason"],
)

AGENT_ACTIVE_REQUESTS = Gauge(
    "agent_active_requests",
    "Number of agent requests currently in flight",
    labelnames=["agent_name"],
)

Integração com OpenTelemetry

Use o SDK Python do OpenTelemetry para criar traces que capturem cada etapa de um turno do agente: a requisição de nível superior, cada chamada de LLM, cada execução de ferramenta e operações de recuperação.

Configuração

# otel_setup.py
from opentelemetry import trace
from opentelemetry.sdk.trace import TracerProvider
from opentelemetry.sdk.trace.export import BatchSpanProcessor
from opentelemetry.exporter.otlp.proto.grpc.trace_exporter import OTLPSpanExporter
from opentelemetry.sdk.resources import Resource

def init_tracing(service_name: str, otlp_endpoint: str = "http://localhost:4317"):
    resource = Resource.create({
        "service.name": service_name,
        "service.version": "1.0.0",
        "deployment.environment": "production",
    })
    provider = TracerProvider(resource=resource)
    exporter = OTLPSpanExporter(endpoint=otlp_endpoint, insecure=True)
    provider.add_span_processor(BatchSpanProcessor(exporter))
    trace.set_tracer_provider(provider)
    return trace.get_tracer(service_name)

Tracing de Chamadas de LLM

# llm_tracing.py
import time
from opentelemetry import trace
from opentelemetry.trace import StatusCode

tracer = trace.get_tracer("agent.llm")


…
Perguntas frequentes

O que são 'tokens'?

Tokens são pedaços de palavras ou caracteres que a IA usa para processar informações. Quanto mais tokens, mais 'pensamento' a IA realiza.

Para que serve rastrear o tempo de resposta?

Ajuda a identificar gargalos e otimizar a velocidade com que o agente de IA responde às suas solicitações.

Como isso ajuda a reduzir custos?

Ao entender o uso de tokens e o tempo de processamento, você pode ajustar o agente para ser mais eficiente e, assim, gastar menos.

Detalhes

Descrição original do autor

Instrument AI agents with tracing, token metrics, latency, and cost visibility. Use for reliability and debugging.

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#2051
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas