dash0hq avatar

Otel Ottl

If you're writing or debugging OTTL expressions for OpenTelemetry Collector pipelines, this skill knows the syntax cold. It covers the full range of components that use OTTL, not just transform and filter processors but also connectors like routing and count, plus receivers like hostmetrics. The guidance on error modes is solid: it steers you toward error_mode: ignore for production, which is the right default most teams should use. You also get practical patterns for redaction, cardinality control, and performance optimization with where clauses. Made by dash0, who clearly use this stuff in production. Worth having around when you're configuring collector transforms and want to avoid the trial-and-error loop.

skills.sh installs
631
GitHub stars
99
last updated
Aug 21, 2026

Install

$ npx -y skills add dash0hq/agent-skills --skill otel-ottl --agent claude-code

Installs into .claude/skills of the current project.

Files

OpenTelemetry Transformation Language (OTTL)

Components that use OTTL

OTTL is not limited to the transform and filter processors. Processors (transform, filter, tailsampling, logdedup) and connectors (routing, count, sum, signaltometrics) accept OTTL expressions. See components for the full list with use cases.

OTTL syntax

Path expressions

Navigate telemetry data using dot notation:

span.name
span.attributes["http.method"]
resource.attributes["service.name"]

Contexts (first path segment): resource, scope, span, spanevent, metric, datapoint, log.

Enumerations

Use int64 constants for enumeration fields:

span.status.code == STATUS_CODE_ERROR
span.kind == SPAN_KIND_SERVER

Operators

Assignment: = — Comparison: ==, !=, >, <, >=, <= — Logical: and, or, not

Functions

Converters (uppercase, return values):

ToUpperCase(span.attributes["http.request.method"])
Substring(log.body.string, 0, 1024)
Concat(["prefix", span.attributes["request.id"]], "-")
IsMatch(metric.name, "^k8s\\..*$")

Editors (lowercase, modify data in-place):

Sponsors

Details

Repository
github.com/dash0hq/agent-skills
Categories
Frontend Development, Documentation, AI & Agent Building, Debugging
First seen
Jun 3, 2026

More from dash0hq/agent-skills

All 4
1sanky369 avatarsocial-graphicssanky369/vibe-building-skillsProduce platform-correct social media graphics: pick the right dimensions and layout per platform, write the headline/body/CTA copy, build the generation prompt629skills.sh installs
2patternsdev avatarmediator-patternpatternsdev/skillsTeaches the mediator pattern for centralized component communication. Use when multiple components need to communicate and direct coupling between them creates 622skills.sh installs
3alirezarezvani avatarstripe-integration-expertalirezarezvani/claude-skillsProduction-grade Stripe integrations: subscriptions with trials and proration, one-time payments, usage-based billing, checkout sessions, idempotent webhook han621skills.sh installs
4alirezarezvani avatarskill-testeralirezarezvani/claude-skillsValidate, test, and score the quality of skills within the claude-skills ecosystem. Comprehensive meta-skill: structure validation, Python script testing (synta618skills.sh installs
5patricio0312rev avatarbruno-collection-generatorpatricio0312rev/skillsGenerates Bruno collection files (.bru) from Express, Next.js, Fastify, or other API routes. Creates organized collections with environments, authentication, an617skills.sh installs
6jezweb avatarhono-routingjezweb/claude-skillsBuild type-safe APIs with Hono for Cloudflare Workers, Deno, Bun, Node.js. Routing, middleware, validation (Zod/Valibot), RPC, streaming (SSE), WebSocket, secur615skills.sh installs