一键导入
opentelemetry
OTEL integration for Fawkes — Python packages, FastAPI instrumentor, gen_ai spans, metric naming. Load when instrumenting services.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
OTEL integration for Fawkes — Python packages, FastAPI instrumentor, gen_ai spans, metric naming. Load when instrumenting services.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Architecture Decision Record template and quality checklist with DORA capability linkage. Use when documenting an architectural decision that agents must follow going forward.
Step-by-step OpenTelemetry and uFawkesObs setup: SDK init patterns for TypeScript, Python, Go; DORA metric spans; Grafana dashboard spec. Use when adding observability to a service.
Step-by-step guide to connect a uFawkesAI project to uFawkesPipe and fawkes platform: Dockerfile, ArgoCD manifest, DORA deployment spans. Use when setting up CI/CD for a new service.
Pre-merge security checklist covering secrets, dependencies, auth, data handling, and fawkes suite gates. Use when reviewing a PR for security issues or hardening a change before merge.
TDD patterns and language-specific test examples for TypeScript/Jest, Python/pytest, and Go. Use when writing tests, increasing coverage, or implementing test-driven development.
Add DORA metrics instrumentation to GitHub Actions workflows — job timestamps, deployment tracking, lead time calculation. Load when adding DORA logging to workflows.
| name | opentelemetry |
| description | OTEL integration for Fawkes — Python packages, FastAPI instrumentor, gen_ai spans, metric naming. Load when instrumenting services. |
| license | MIT |
| compatibility | opencode |
Add to requirements.txt:
opentelemetry-sdk>=1.20.0
opentelemetry-instrumentation-fastapi>=0.41b0
FastAPI auto-instrument:
from opentelemetry.instrumentation.fastapi import FastAPIInstrumentor
app = FastAPI()
FastAPIInstrumentor.instrument_app(app)
Custom span:
from opentelemetry import trace
tracer = trace.get_tracer(__name__)
with tracer.start_as_current_span("operation") as span:
span.set_attribute("key", value)
gen_ai.* attributes: gen_ai.operation.name, gen_ai.request.model, gen_ai.usage.input_tokens, gen_ai.usage.output_tokens
Metric naming: <service>_<noun>_total (counter), <service>_<noun>_seconds (histogram)
Collector config: platform/apps/opentelemetry/collector.yaml
Validate:
cd services/SVC && python -c "from opentelemetry import trace; print('OK')"
python -c "import yaml; yaml.safe_load(open('platform/apps/opentelemetry/collector.yaml'))"