.claude/skills/opentelemetry-rust-sdk/SKILL.md
Best-practice guide for instrumenting Rust apps with the OpenTelemetry SDK. Use when setting up traces, metrics, logs, exporters, and lifecycle handling. For GenAI attributes and semantics, pair with the opentelemetry-genai-spec skill.
npx skillsauth add cedricziel/assistant opentelemetry-rust-sdkInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Use this skill as a best-practice reference for OpenTelemetry Rust SDK instrumentation. It is intentionally normative and may be stricter than the current project implementation.
For GenAI semantic conventions (gen_ai.*), use:
opentelemetry-genai-specResource (service.name, service.version, env metadata).SdkTracerProviderSdkLoggerProviderSdkMeterProviderPeriodicReaderglobal::set_tracer_provider, global::set_meter_provider,
log bridge setup).opentelemetry-otlp) and let standard
OTEL_EXPORTER_OTLP_* env vars drive endpoints/headers/timeouts.tracing-opentelemetry when you want tracing spans exported as OTel traces.opentelemetry-appender-tracing when you want tracing events exported as OTel logs.PeriodicReader) for your cost/latency
goals.opentelemetry, opentelemetry_sdk, and opentelemetry-otlp versions
aligned.trace, logs, metrics, runtime/exporter features)
on upgrades.opentelemetry-genai-spec.tools
Enforces OpenAPI spec discipline when working on REST API endpoints in this project. Triggers whenever adding, modifying, or removing HTTP routes, request/response types, or API handlers in the Rust web-ui crate (`crates/web-ui`). Reminds the agent to (1) update the committed `openapi.json` spec, (2) run `make dump-openapi` to re-export the spec from the running server, and (3) run `make generate-flutter-client` to regenerate the Dart/dio client in `app/packages/assistant_api/`. Also applies when changing route parameters, status codes, or authentication on existing endpoints.
tools
Browser automation via @playwright/mcp (Microsoft). Use this when the user wants to navigate websites, fill forms, take screenshots, scrape web content, test web apps, or run any multi-step browser workflow. Requires no display (headless mode supported).
testing
A minimal example WASM skill that returns a greeting. Use to verify that the WASM execution tier is working correctly.
development
Run coding agents (Claude Code, Codex, OpenCode, or others) as background processes for programmatic control. Use when you need non-blocking execution, parallel agents, PR reviews, or long-running coding tasks. Prefer this over direct bash for any task that takes more than ~20 seconds.