К основному содержанию
скилл CX Codex

beyla — скилл для Claude Code: что делает и как установить

Автоматически подключает eBPF-мониторинг HTTP, gRPC и баз данных через Grafana Beyla без изменения кода. Пригодится для сбора трейсов и RED-метрик с готовых бинарников.

Установить в Claude Code · Через Skills CLI (Vercel) Все способы и платформы ↓
npx skills add grafana/skills --skill beyla -a claude-code
Открыть на GitHub

Что делает beyla

Скилл помогает развернуть Grafana Beyla для наблюдения за сетевым трафиком приложений на Go, Java, Python, Node, Ruby, .NET, Rust, C++ и PHP. Он содержит инструкции по запуску Beyla в контейнере Docker рядом с работающим сервисом или в виде кластерного DaemonSet в Kubernetes. Beyla перехватывает системные вызовы и отдаёт трейсы по протоколу OTLP, а метрики — в формате Prometheus.

Для работы Beyla критически важна конфигурация операционной системы. Если на сервере установлено ядро Linux ниже 5.8 или выключен BTF, запуск завершится ошибкой загрузки BPF-объекта. В контейнерах требуются права CAP_SYS_ADMIN (или параметр privileged: true) и доступ к пространству процессов хоста через hostPID: true. Скилл также подсказывает, как ограничить разрастание кардинальности метрик через эвристические маршруты и настроить экспорт в Grafana Cloud через Alloy.

Какие задачи решает

  • получить трейсы OTLP и RED-метрики без правки исходного кода
  • развернуть Grafana Beyla в кластере Kubernetes как DaemonSet
  • настроить эвристику маршрутов для предотвращения взрыва кардинальности
  • организовать экспорт телеметрии в Grafana Cloud через Alloy

Примеры запросов агенту

  • Помоги запустить Grafana Beyla в Docker для сервиса на порту 8080.
  • Настрой манифест DaemonSet для Beyla в Kubernetes с экспортом в Tempo.
  • Как устранить ошибку failed to load BPF object при запуске Beyla?

Как установить beyla

1Через Skills CLI (Vercel)

npx skills add grafana/skills --skill beyla -a claude-code

2Вручную: положить файлы

~/.claude/skills/beyla/SKILL.md

Папка скилла целиком; для одного проекта — .claude/skills/beyla/

По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов

Из того же набора44

assistant-mcp Помогает подключить ИИ-агентов к Grafana Cloud через MCP-сервер mcp-grafana. Пригодится для чтения метрик, поиска дашбордов и проверки алертов прямо в кодовой базе. CX Codex +1 5 000установок alloy Помогает писать и проверять конфиги Grafana Alloy: сбор метрик, логов, трейсов и профилей в один пайплайн. CX Codex +1 5 000установок tempo Скилл для развёртывания Grafana Tempo и написания запросов TraceQL: от локального Docker Compose до Helm в Kubernetes. CX Codex +1 4 900установок pyroscope Скилл для непрерывного профилирования приложений через Grafana Pyroscope: флейм-графы CPU, памяти и аллокаций прямо в диалоге с агентом. CX Codex +1 4 700установок infrastructure Настраивает передачу метрик, логов и трейсов из Kubernetes, Linux-хостов и облаков в Grafana Cloud. Пригодится при подключении кластеров и виртуалок. CX Codex +1 4 300установок dpm-finder Скилл помогает найти метрики Prometheus с наибольшим числом точек в минуту в Grafana Cloud и выявить причины растущих расходов на мониторинг. CX Codex +1 4 200установок oncall-irm Помогает агенту настроить маршрутизацию алертов, дежурные ротации и жизненный цикл инцидентов в Grafana IRM / OnCall. CX Codex +1 4 200установок send-data Помогает настроить отправку метрик, логов, трейсов и профилей в Grafana Cloud. Пригодится при настройке Alloy, OTLP-экспортёров, Prometheus remote write и Helm-чартов. CX Codex +1 4 200установок

Похожие

monitor-setup Seth Hobson Слэш-команда, которая разворачивает сбор метрик Prometheus, дашборды Grafana, распределённую трассировку и агрегацию логов. CX Codex ★ 41 729звёзд репо monitoring-observability ahmedasmar Скилл для настройки мониторинга и наблюдаемости: стратегия метрик, алерты, дашборды, SLO и разбор инцидентов. CX Codex +1 493установок loki-logging devops-skills Скилл помогает настроить Grafana Loki, Promtail и запросы LogQL прямо в проекте, без похода в документацию. CX Codex +1 330установок prometheus-grafana devops-skills Скилл помогает агенту поднять сбор метрик в Prometheus, писать запросы PromQL и собирать панели Grafana. Пригодится, когда в проект нужно добавить мониторинг. CX Codex +1 449установок observability-designer Alireza Rezvani Генерирует дашборды Grafana и находит шумные алерты в конфигах мониторинга. Помогает подготовить базовую наблюдаемость для сервиса перед ростом нагрузки. 671установок grafana-dashboards Seth Hobson Скилл помогает создавать Grafana-дашборды для метрик систем и приложений. Подойдёт для мониторинга, SLO и операционных интерфейсов наблюдаемости. CX Codex 13 097установок

Рядом в теме «DevOps и инфраструктура»

Всё по теме «DevOps и инфраструктура» →

Вопросы о beyla

Как установить скилл beyla в Claude Code?

Выполните команду npx skills add grafana/skills --skill beyla -a claude-code. Это добавит скилл в конфигурацию Claude Code.

Что делает скилл beyla?

Он предоставляет готовые сценарии для запуска Grafana Beyla через Docker или Kubernetes DaemonSet. Скилл помогает настроить безагентный сбор трейсов и метрик через eBPF без внедрения SDK в код.

Что требуется для работы Grafana Beyla?

Понадобится ядро Linux 5.8 или новее с активным BTF (/sys/kernel/btf/vmlinux), процессор x86_64 или ARM64, а также права root или CAP_SYS_ADMIN с доступом hostPID: true.

Исходный текст

SKILL.md · Apache-2.0
---
name: beyla
license: Apache-2.0
description: Auto-instrument an application's HTTP / gRPC / DB traffic with Grafana Beyla eBPF — no code changes, no SDK, no restart. Covers requirements (Linux 5.8+ with BTF, CAP_SYS_ADMIN, host PID), language matrix (Go / Java / Python / Ruby / Node / .NET / Rust / C++ / PHP), Docker + Helm + DaemonSet install, port- / process- / Kubernetes-metadata discovery, OTLP traces + Prometheus metrics export, routes decorator (cardinality control), trace sampling, and Grafana Cloud via Alloy. Use when adding observability to a service you can't recompile, instrumenting a closed-source binary, getting RED metrics + spans onto Tempo/Mimir without touching the app, or rolling Beyla as a cluster-wide DaemonSet — even when the user says "zero-code APM", "instrument legacy app", "trace this binary", "eBPF observability", or "no SDK" without naming Beyla.
---

# Grafana Beyla

> **Docs**: https://grafana.com/docs/beyla/latest/

Zero-code HTTP / gRPC / DB instrumentation via eBPF. Emits OTLP traces + Prometheus metrics.

## Prerequisites

- Linux kernel **5.8+** with BTF enabled (`ls /sys/kernel/btf/vmlinux` must exist)
- Root or `CAP_SYS_ADMIN` (or `privileged: true` in Kubernetes + `hostPID: true`)
- x86_64 or ARM64
- An OTLP receiver (Tempo, Alloy, OTel Collector) reachable from Beyla

## Common Workflows

### 1. Instrument a single binary with Docker

```bash
# 1. Run Beyla against the app's port (the app must already be running, listening on 8080)
docker run --privileged --pid=host \
  -v /sys/kernel/debug:/sys/kernel/debug:ro \
  -e BEYLA_OPEN_PORT=8080 \
  -e BEYLA_PROMETHEUS_PORT=8999 \
  -e OTEL_EXPORTER_OTLP_ENDPOINT=http://otel-collector:4318 \
  -p 8999:8999 \
  grafana/beyla

# 2. Generate some traffic
curl http://localhost:8080/ ; curl http://localhost:8080/api/users/42

# 3. Verify Beyla emitted metrics — should list http_server_request_duration_seconds + counters
curl -s http://localhost:8999/metrics | grep -E '^http_(server|client)_request_duration'

# 4. Verify traces — in Grafana Explore on Tempo, search by service.name (default = process name)
#    Or: query Tempo's search API for spans with service.name="<app>"
```

### 2. Deploy as a cluster-wide DaemonSet

Full DaemonSet + RBAC YAML lives in [`references/kubernetes.md`](references/kubernetes.md). After applying:

```bash
# 1. Verify DaemonSet rollout
kubectl -n monitoring rollout status ds/beyla

# 2. Verify pods are Running, one per node
kubectl -n monitoring get pods -l app=beyla -o wide

# 3. Verify eBPF probes attached (no errors mentioning BTF or "permission denied")
kubectl -n monitoring logs ds/beyla --tail=50 | grep -Ei 'error|fail|btf' || echo "clean"

# 4. Verify telemetry is flowing — check the Tempo/Alloy receiver for spans from the cluster
#    Or scrape one pod directly:
kubectl -n monitoring port-forward ds/beyla 8999:8999 &
curl -s localhost:8999/metrics | head
```

### 3. Send to Grafana Cloud via Alloy

```yaml
# beyla-config.yml
otel_traces_export:  { endpoint: http://alloy:4318 }
otel_metrics_export: { endpoint: http://alloy:4318 }
```

```bash
# Verify Alloy is forwarding — check Alloy UI (localhost:12345) for the
# otelcol.receiver.otlp.beyla component showing received spans/metrics > 0.
```

Full Alloy + Beyla YAML: [`references/config.md`](references/config.md).

## Troubleshooting

- `failed to load BPF object` → kernel < 5.8 or BTF missing; check `/sys/kernel/btf/vmlinux`
- No spans in Tempo, but Prometheus metrics show → check `OTEL_EXPORTER_OTLP_ENDPOINT`, protocol (http vs grpc), and ports (4318 http / 4317 grpc)
- HTTP route cardinality explosion → set `routes.unmatched: heuristic` and add patterns (see [`references/config.md`](references/config.md))
- Pod restarts with `CrashLoopBackOff` → likely missing `hostPID: true` or `privileged: true` / required capabilities

## Resources

- [Beyla docs](https://grafana.com/docs/beyla/latest/)
- [Beyla GitHub](https://github.com/grafana/beyla)
- [`references/config.md`](references/config.md) — full config, env vars, samplers, routes decorator, generated metrics table, runtime matrix
- [`references/kubernetes.md`](references/kubernetes.md) — DaemonSet + RBAC + discovery filters + Helm

© grafana · Apache-2.0 · grafana/skills

Смотрите также

Спонсоры проекта

Компании, которые помогают держать аналитику открытой