CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

otel-span-events-to-logs-migration

Migrate OpenTelemetry Span Events (AddEvent, RecordException, and language equivalents) to the Logs API following the accepted OTEP 4430 migration plan. Use when migrating instrumentation from span events to log-based events, reviewing code that still uses AddEvent or RecordException, or planning a codebase migration while preserving trace correlation.

71

Quality

89%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

81%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-structured migration skill: efficient, concrete, and anchored by an unusually strong validation loop and checklist. The main improvements are wiring the bundled scan script into the workflow, giving the bare 'Verify the migration' step substance, and isolating the time-sensitive version/status notes.

Suggestions

Reference 'scripts/scan-span-events.sh' in workflow step 1 (e.g., 'run scripts/scan-span-events.sh <dir> or grep for these tokens') so the bundled scanner is discoverable instead of duplicating its patterns by hand.

Expand step 5 ('Verify the migration.') with concrete verification actions — e.g., re-run the scan to confirm no unintentional span-event call sites remain, and confirm log records carry span context — rather than relying solely on the checklist loop.

Move the 'Status as of 2026-10-03' paragraph and per-language version notes into a short dedicated 'Current status' section or into the existing references, so time-sensitive details don't age inline in the core workflow.

DimensionReasoningScore

Conciseness

The body is lean and imperative — a numbered workflow, a completion loop, and a checklist with no padding or explanation of concepts Claude already knows. However, time-sensitive material sits inline rather than in a dedicated status/deprecated section: the 'Status as of 2026-10-03' paragraph and per-version notes ('Go (1.47.0+)', 'opentelemetry-java-contrib v1.60.0', .NET '[Obsolete]') could be trimmed or pushed to references. Not 5 for that; not 3 because the verbosity is minor and localized.

4 / 5

Actionability

Mostly executable guidance: exact grep tokens for the scan, concrete Go/Java API details ('log.Record.AddAttributes accepts attribute.KeyValue', 'Record.SetEventName', the incubator 'EventToSpanEventBridge' package), and named semconv attributes. Gaps keep it from 5: workflow step 5 is just 'Verify the migration.' with no method, and the bundled 'scripts/scan-span-events.sh' is never invoked, so Claude must re-derive the scan it already provides. Not 3 because the guidance is concrete and executable, not pseudocode.

4 / 5

Workflow Clarity

Clear numbered sequence (0–5: prepare, scan, classify, apply, bridge, verify) plus a 'Required Completion Loop' that mandates re-reading changed files, confirming every checklist item with codebase evidence, and repeating until each is complete or marked not applicable — an explicit validate→fix→retry loop with a 13-item status checklist. This fully satisfies the feedback-loop requirement for batch codebase operations; not 4 because no checkpoint is missing or merely implicit.

5 / 5

Progressive Disclosure

Good structure: the body stays an overview and points to four real one-level-deep reference files ('references/deprecation-plan.md', 'decision-tree.md', 'migration-patterns.md', 'backward-compat.md'), each clearly signaled at the point of need and verified to exist with no chained references. The gap: 'scripts/scan-span-events.sh' exists in the bundle but is never mentioned in SKILL.md, hurting discoverability and splitting the scan story across an undocumented file. Not 3 because the in-body content is appropriately placed; not 5 because of the unreferenced script.

4 / 5

Total

17

/

20

Passed

Description

92%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

An excellent description: concrete, third-person/imperative, with an explicit 'Use when' clause covering migrate/review/plan triggers and precise domain vocabulary. Its only weakness is a couple of missing natural synonyms (notably 'deprecated'), which keeps trigger coverage just short of comprehensive.

DimensionReasoningScore

Specificity

The description lists multiple concrete actions — 'Migrate OpenTelemetry Span Events (AddEvent, RecordException, and language equivalents) to the Logs API following the accepted OTEP 4430 migration plan', plus reviewing and planning use cases — naming exact APIs and the governing plan. Coverage is comprehensive within the domain; not score 4 because there are no minor gaps in action coverage, and not below because nothing is generic or padded.

5 / 5

Completeness

Explicitly answers both questions: the 'what' is 'Migrate ... Span Events ... to the Logs API following the accepted OTEP 4430 migration plan', and the 'when' is a dedicated 'Use when migrating instrumentation ..., reviewing code that still uses AddEvent or RecordException, or planning a codebase migration while preserving trace correlation' clause with three concrete triggers. Matches the top anchor exactly; neither element is vague or merely implied.

5 / 5

Trigger Term Quality

Good natural-term coverage: 'span events', 'AddEvent', 'RecordException', 'Logs API', 'migrating instrumentation', 'log-based events', 'trace correlation', 'codebase migration'. A few natural phrasings a user might say are missing — e.g., 'deprecated/deprecation' (the core motivation users will cite) and the 'OTel' abbreviation. Not 5 because of those few missing synonyms; not 3 because the included terms are exactly what an OTel user would type.

4 / 5

Distinctiveness Conflict Risk

A clear niche pinned by unique tokens — 'OTEP 4430', 'Span Events', 'AddEvent', 'RecordException', 'Logs API' — with triggers specific to span-event migration. It would not plausibly fire for general logging, tracing, or generic migration skills; minimal conflict risk.

5 / 5

Total

19

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

ollygarden/opentelemetry-agent-skills

Path

skills/otel-span-events-to-logs-migration/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.