Expert OpenTelemetry guidance for collector configuration, pipeline design, and production telemetry instrumentation across Kubernetes, ECS, serverless, and standalone deployments. Use when configuring collectors, designing pipelines, instrumenting applications, implementing sampling, managing cardinality, securing telemetry, writing OTTL transformations, or setting up AI coding agent observability (Claude Code, Codex, Gemini CLI, GitHub Copilot).
94
98%
Does it follow best practices?
Impact
94%
1.34xAverage score across 18 eval scenarios
Passed
No known issues
{
"context": "Tests whether the skill causes the agent to provide production-ready Docker Compose configuration for OpenTelemetry Collector. Docker Compose configurations should include proper networking, health checks, volume management, and are often used in development and simple production setups.",
"type": "weighted_checklist",
"checklist": [
{
"name": "Includes collector and sample application services",
"description": "The docker-compose.yml defines at least two services: the collector and an application that sends telemetry to it. Score zero if only the collector is defined.",
"max_score": 15
},
{
"name": "Uses custom network for service discovery",
"description": "Services are connected via a custom bridge network (not the default network) to enable DNS-based service discovery. Apps should reference collector by service name (e.g., 'otel-collector') not localhost.",
"max_score": 20
},
{
"name": "Mounts collector configuration file",
"description": "The collector service includes a volume mount for the configuration file (e.g., './otel-collector-config.yaml:/etc/otel-collector-config.yaml'). Score zero if config is not mounted.",
"max_score": 15
},
{
"name": "Includes health checks for both services",
"description": "Both collector and application containers include healthcheck directives to enable Docker monitoring. Health checks should verify service availability (e.g., HTTP endpoint for collector, open port for app).",
"max_score": 15
},
{
"name": "Exposes collector ports appropriately",
"description": "The collector service exposes necessary ports: receiver ports (e.g., 4317 for gRPC OTLP) should NOT be exposed externally (only within network), while exporter targets are configured for backend communication.",
"max_score": 15
},
{
"name": "Includes environment variables for configuration",
"description": "Services use environment variables for configuration (e.g., OTEL_EXPORTER_OTLP_ENDPOINT, backend credentials). Secrets should not be hardcoded in the compose file.",
"max_score": 20
}
]
}.claude-plugin
.codex-plugin
.cursor-plugin
.github
scripts
docs
evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
scenario-6
scenario-7
scenario-8
scenario-9
scenario-10
scenario-11
scenario-12
scenario-13
scenario-14
scenario-15
scenario-16
scenario-17
scenario-18
references