Pular para o conteúdo
Skillpedia
Deploy e nuvem (DevOps)48 mil · #3769

opentelemetry

Faz seu agente monitorar sistemas e aplicações. Ele coleta informações para entender o desempenho e identificar problemas.

O que ela faz

OpenTelemetry ajuda a entender como seus programas de computador estão funcionando. Ele coleta informações sobre o que acontece dentro deles (como rastros de atividades, métricas de desempenho e logs de eventos) para que você possa ver se algo está lento ou com problemas.

Quando usar

  • ✓Quando um aplicativo está lento e você não sabe o porquê.
  • ✓Para monitorar o desempenho de vários serviços que se comunicam.
  • ✓Ao depurar erros em um sistema complexo.

Exemplo do que pedir para a IA

“Como posso configurar o OpenTelemetry para monitorar meu aplicativo web?”

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/opentelemetry/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/opentelemetry/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Você adiciona um pequeno código aos seus programas que envia informações para um coletor. Esse coletor organiza os dados e os envia para onde você pode visualizá-los, como um painel.

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 opentelemetry

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/opentelemetry/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.

OpenTelemetry

Adote telemetria neutra de fornecedor com instrumentação consistente entre serviços.

Pré-requisitos

  • Serviços de aplicação rodando em contêineres ou em VMs
  • Backend para traces (Jaeger, Tempo, Datadog, ou qualquer receptor OTLP)
  • Backend para métricas (Prometheus, Mimir, ou receptor OTLP)
  • Cluster Kubernetes (para implantação do coletor) ou VM com systemd
  • Acesso de rede dos serviços para o coletor, e do coletor para os backends

Fluxo de Trabalho Principal

  1. Defina convenções semânticas para serviços, ambientes e versões.
  2. Adicione SDK ou auto-instrumentação em cada serviço.
  3. Execute um OpenTelemetry Collector para receber, transformar e exportar telemetria.
  4. Valide cardinalidade e amostragem para controlar custos.
  5. Crie dashboards de sinais dourados e alertas a partir dos dados coletados.

Configuração de Produção do Coletor

# otel-collector-config.yaml
receivers:
  otlp:
    protocols:
      grpc:
        endpoint: 0.0.0.0:4317
      http:
        endpoint: 0.0.0.0:4318

  # Scrape Prometheus endpoints
  prometheus:
    config:
      scrape_configs:
        - job_name: "kubernetes-pods"
          kubernetes_sd_configs:
            - role: pod
          relabel_configs:
            - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_scrape]
              action: keep
              regex: "true"
            - source_labels: [__meta_kubernetes_pod_annotation_prometheus_io_port]
              action: replace
              target_label: __address__
              regex: (.+)
              replacement: $$1

  # Host metrics for infrastructure monitoring
  hostmetrics:
    collection_interval: 30s
    scrapers:
      cpu: {}
      memory: {}
      disk: {}
      network: {}
      load: {}

processors:
  batch:
    send_batch_size: 1024
    timeout: 5s

  memory_limiter:
    check_interval: 1s
    limit_mib: 512
    spike_limit_mib: 128

  attributes:
    actions:
      - key: deployment.environment
        value: production
        action: upsert

  # Drop high-cardinality attributes to control cost
  filter/drop-debug:
    traces:
      span:
        - 'attributes["http.request.header.x-debug"] == "true"'

  # Reduce cardinality on URL paths
  transform/normalize-routes:
    trace_statements:
      - context: span
        statements:
          - replace_pattern(attributes["url.path"], "/users/[0-9]+", "/users/{id}")
          - replace_pattern(attributes["url.path"], "/orders/[0-9]+", "/orders/{id}")

  # Resource detection for cloud environments
  resourcedetection:
    detectors: [env, system, gcp, aws, azure]
    timeout: 5s

exporters:
  # Send traces to Tempo/Jaeger
  otlp/traces:
    endpoint: tempo:4317
    tls:
      insecure: true

  # Send metrics to Prometheus via remote write
  prometheusremotewrite:
    endpoint: http://mimir:9009/api/v1/push
    tls:
      insecure: true

  # Send logs to Loki
  otlp/logs:
    endpoint: loki:4317
    tls:
      insecure: true

  # Debug exporter for development
  debug:
    verbosity: basic

service:
  telemetry:
    logs:
      level: info
    metrics:
      address: 0.0.0.0:8888

  pipelines:
    traces:
      receivers: [otlp]
      processors: [memory_limiter, resourcedetection, transform/normalize-routes, batch, attributes]
      exporters: [otlp/traces]
    metrics:
      receivers: [otlp, prometheus, hostmetrics]
      processors: [memory_limiter, resourcedetection, batch, attributes]
      exporters: [prometheusremotewrite]
    logs:
      receivers: [otlp]
      processors: [memory_limiter, resourcedetection, batch, attributes]
      exporters: [otlp/logs]

Implantação do Coletor no Kubernetes

# otel-collector-deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
  name: otel-collector
  namespace: observability
spec:
  replicas: 2
  selector:
    matchLabels:
      app: otel-collector
  template:
    metadata:
      labels:
        app: otel-collector
    spec:
      containers:
        - name: collector
          image: otel/opentelemetry-collector-contrib:0.98.0
          args: ["--config=/etc/otel/config.yaml"]
          ports:
            - containerPort: 4317
              name: otlp-grpc
            - containerPort: 4318
              name: otlp-http
            - containerPort: 8888
              name: metrics
          resources:
            requests:
              cpu: 200m
              memory: 256Mi
            limits:
              cpu: "1"
              memory: 512Mi
          volumeMounts:
            - name: config

…
Perguntas frequentes

O que são 'traces'?

São como um mapa detalhado de cada solicitação que passa pelo seu sistema, mostrando cada passo e quanto tempo levou.

O que são 'métricas'?

São números que medem o desempenho, como o uso de CPU, memória ou quantas requisições um serviço está recebendo.

O que são 'logs'?

São registros de eventos importantes ou erros que aconteceram no seu programa.

Detalhes

Descrição original do autor

Instrument applications and infrastructure with OpenTelemetry for unified traces, metrics, and logs.

repo: sickn33/agentic-awesome-skills

Popularidade

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

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas