berriai/litellm/rust-tracing
- community
Checking that the SKILL.md file is still in the repository.
Add or change Rust diagnostic tracing in litellm-rust, including route spans, subscriber layers, and Python logger delivery
Install
npx vskill@latest install berriai/litellm/rust-tracingSKILL.md
Rust tracing
Use upstream tracing throughout Rust, including #[tracing::instrument], events, and span propagation. Centralize collection and delivery infrastructure in crates/tracing. Direct upstream imports still reach our configured subscriber; re-exporting macros does not control delivery. Do not introduce Rust log or pyo3-log for this path
litellm-tracing owns shared subscriber layers, span field collection, and diagnostic processing. Keep adapters composable as tracing_subscriber::Layers, with Logger providing host setup. Runtime-specific delivery belongs in the host bridge. The Python bridge delivers directly to the existing Python SDK logger, preserving its handlers, filtering, redaction, and request correlation. Keep Python dependencies out of crates/tracing
Hosts configure subscribers. Keep Python execution scoped to its captured dispatch rather than installing a process-wide subscriber. Propagate both span context and dispatch across spawned work and returned streams
In core, instrument execution shared by native calls and hosted machines. Use consistent route, model, provider, streaming, and outcome fields. Put status recording at shared provider boundaries instead of scattering basic logging through handlers. Keep upstream HTTP status separate from route success
Use skip_all and explicitly selected fields. Basic tracing excludes bodies, credentials, headers, and raw error strings. Avoid automatic ret or err capture of sensitive values. Keep payload diagnostics separate and subject to existing redaction
A returned stream retains its route span until exhaustion, error, or drop, with exactly one terminal outcome. Builder construction does not start a trace. Never hold a span entry guard across an await. Diagnostic tracing remains separate from lifecycle callbacks and CustomLogger dispatch
Use litellm_tracing::sink_layer to compose a sink with other subscriber layers. It inherits span fields into events and emits span-close summaries with elapsed time. Test observable records, concurrent isolation, dynamic filtering, sensitive-field exclusion, and stream cancellation when changing this behavior
Consult the tracing API and subscriber layers for implementation details
Security
- Security scanPassed, 90 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckinglitellm-rust/.agents/skills/rust-tracing/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/berriai/litellm/rust-tracing)