observability-standard

observability-standard is a skill for Claude Code, Codex from martin1847/evolab. It costs 210 tokens per session (4,492 once invoked), scanned A, original, MIT.

A standard for making backend software observable, meaning easier to understand when something goes wrong. It connects logs, traces of requests across services, and business identifiers using OpenTelemetry, a common monitoring standard.

In plain words
What is it for?
Adding request tracing, structured logs, trace identifiers, business-ID links, cross-service context propagation, and monitoring for backend, agent, and retrieval-augmented systems.
Why use it?
It replaces guesswork based on timestamps with a way to follow one request through databases, services, agents, language models, tools, and searches. It also keeps logs structured and connected across process boundaries.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: mentions subagents; mentions AGENTS.md.

Good fit Adding request tracing, structured logs, trace identifiers, business-ID links, cross-service context propagation, and monitoring for backend, agent, and retrieval-augmented systems.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/martin1847/evolab/observability-standard
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add martin1847/evolab --skill observability-standard
Clone the repo
git clone --depth 1 https://github.com/martin1847/evolab

Made for: Claude Code, Codex.

Its marketplace also offers this one on its own, as the plugin observability-standard/plugin install observability-standard after adding the marketplace above.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for observability-standard

README.md
[![agentmods](https://agentmods.dev/badge/skills/martin1847/evolab/observability-standard.svg)](https://agentmods.dev/skills/martin1847/evolab/observability-standard)
Your own site
<a href="https://agentmods.dev/skills/martin1847/evolab/observability-standard"><img src="https://agentmods.dev/badge/skills/martin1847/evolab/observability-standard.svg" alt="Measured on agentmods" height="20"></a>
Per session 210 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 4,492 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00210 $0.04492
Opus 5 $0.00105 $0.02246
Sonnet 5 $0.00042 $0.00898
Haiku 4.5 $0.00021 $0.00449

Measured 8d ago against content hash 06704dd9614d, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-08, from the pricing page.

Security

Grade A, and why

observability-standard scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (scripts/observability_conformance.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/observability-standard/SKILL.md · 97 lines

How it starts

The opening of the file, as written. The whole thing — 97 lines — stays where its author put it; the contents beside it link to each section on GitHub.

可观测性与工程规范

何时应用

写或评审任何后端服务的代码时应用 —— 普通微服务(auth / 网关 / 业务服务)与 agent / 多 agent / RAG 知识库项目一视同仁,尤其涉及:日志接入、OpenTelemetry 埋点、跨进程 context 传播、日志级别选择、跨 trace/log/db 排障、边界数据建模;agent 场景额外涉及编排与子 agent、LLM/工具/检索调用。Python / Go / Java / Rust 通用。即使用户只说"加点日志""接一下 trace""这个错查不到""这请求怎么追",也按本规范做。

总纲

用一条关联主线贯穿定位:trace_id 串起 trace + log;业务库这一环靠**业务 id 同时挂成 span 属性(order.id / run.id)**双向关联,不在业务行存 trace_id(trace 受采样 / 短保留,持久行存它多半是死指针 —— 见 references §2.1)。定位永远是 trace 或业务 id → 查 trace 看哪步 → 查 log 看为什么 → 按业务 id 查 db 看数据对不对,不靠时间戳猜。

五条铁律(所有服务,全部遵守)

  1. 一次对外请求 = 一棵 trace。入站请求 handler 是 root span,所有下游(DB / 缓存 / 跨进程调用 —— agent 场景下还有子 agent / LLM / 工具 / 检索)都是子 span。
  2. 宽事件优先:每步一条富字段结构化事件;事件名是稳定可聚合标识符,变量进字段;不写散文。
  3. 三信号可关联:每条 log 带 trace_id+span_id(随 trace 同采样 / 保留);业务 id 挂成 span 属性以按业务 id 反查 trace,不往业务行加 trace_id;需持久溯源处(AI 决策 / 金额 / 对客输出 / 合规)落自己拥有的 correlation_id,优先进专用审计 / outbox 表(见 references §2.1)。
  4. 跨进程必传播 W3C traceparent(HTTP / gRPC / 消息队列 / 任何 agent 协议都算)。不传 = trace 断成多棵互不相连的树 = 跨服务定位失效。优先级高于功能
  5. 标准在边界 + 后端无关:跨进程 / 对外响应遵守 OTel 语义约定 + 类型校验(LLM 边界额外遵守 GenAI 约定);内部自由。只依赖 OTel API/SDK + OTLP,应用代码不 import 厂商 SDK(Langfuse / Datadog 等);标准组件优先用官方 auto-instrumentation 自动埋点,手写 span 只补领域环节;厂商差异只在 Collector / exporter 配置层 → 换后端不重埋(见 references §1 铁律5 / §5.0 / 附录 C)。

日志铁律

  • 结构化优先:event_name + fields,绝不字符串拼接。日志即数据,不即叙事。宽事件 ≠ JSON:稳定可解析的行式字段格式即可,不强制 JSON 序列化(有实打实的计算开销;日志管道需要机器解析时再升,升级只动导出层配置)。
  • 日志在活跃 span 内打出,trace_id/span_id 自动注入;没有 trace_id 的 ERROR 视为 bug
  • 上下文绑一次贯穿全程(语言原生 ambient context 机制,见 references 附录 B),不手传。
  • 不要 log-and-throw;密钥/PII/客户机密在边界脱敏;明文 prompt/completion = 数据披露闸(显式 flag + 非 prod + 脱敏;audit 仅哈希),非日志级别。
  • 统一 named logger 树(语言原生 per-module logger 机制,见 references 附录 B),级别由配置控,不用环境变量单独门控某条日志
  • 必记(≥ INFO):决策点 + 依据、状态转移、每次跨进程 / LLM / 工具 / 检索调用的边界与结果状态、重试/回退/降级/补偿、每步 token + 成本(agent 场景)。

日志级别判据

判据:这条日志在正常生产运行里读它有意义吗? 有 → INFO;只有出问题深挖才看 → DEBUG

  • INFO 重建"发生了什么"的骨架(每步 / 每次调用 / 每次状态转移一条,不刷高频内循环)。
  • DEBUG 重建"为什么"的细节(完整 prompt、推理、原始响应、命中 chunk、跨进程报文全文),生产默认关、可按 trace 动态开
  • ERROR = 失败且影响本次结果,必带 trace + 操作 + 输入标识符 + 栈;WARNING = 降级但请求继续。
  • 排障时"光看 INFO 不知走到哪步" → 补 INFO,别常开 DEBUG
  • span 导出日志不是应用日志:trace 信号走 OTLP;console/logging 型 span exporter(各语言 OTel SDK 均有)仅 dev 验证用,部署环境把其 logger 类别阈值默认压到 WARN(此类行每请求复述一条且无请求上下文,是双写噪音)。
  • 环境三档矩阵(默认形状):dev = DEBUG(代码内默认,开发就近调试)· staging = DEBUG(部署层配置开)· prod = INFO 骨架(默认安静侧);span 导出行随档位:dev/staging 可见、prod 隐藏。
  • 配置分工:语义级别(哪条算 INFO/DEBUG)归代码且默认取安静侧;级别阈值按环境开归部署层运行时配置(rationale 与各语言机制见 references §4);prod 静音 span 导出前确认已有真 OTLP sink,否则 trace 信号整体丢失。

Read the full file on GitHub · 97 lines

Files

What ships with it

4 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 8d ago First seen · 97 lines · 210 tokens per session scan A 06704dd9614d

Subscribe to this mod's changes

observability-standard is a skill published in the GitHub repository martin1847/evolab (6 stars, last pushed yesterday), licensed MIT. It adds 210 tokens to every session and 4,492 once invoked, about $0.0011 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

error-handling-patterns

Master error handling patterns across languages including exceptions, Result types, error propagation, and graceful degradation to build resilient applications. Use when implementing error handling, designing APIs, or improving application reliability.

wshobson/agents · 43 tokens

eve

Build durable backend AI agents with the eve framework. Use when creating, editing, or debugging an eve project — agent instructions, skills, tools, connections, channels, sandboxes, subagents, schedules, or evals.

ComposioHQ/composio · 47 tokens

printing-press-amend

Amend a published CLI from one of two input sources: (1) dogfood mode mines the active Claude Code session transcript for friction (missing flags, hand- rolled API payloads, silent-null returns); (2) direct-input mode accepts user-supplied asks (rename a command, add commands or feeds, fix a named bug, optionally…

mvanhorn/cli-printing-press · 222 tokens

api-contract-review

Review REST API contracts for HTTP semantics, versioning, backward compatibility, and response consistency. Use when user asks "review API", "check endpoints", "REST review", or before releasing API changes.

decebals/claude-code-java · 44 tokens

spring-boot-patterns

Spring Boot best practices and patterns. Use when creating controllers, services or repositories, or when the user asks about Spring Boot layering, wiring, configuration or exception handling. For JPA and Hibernate behaviour, use jpa-patterns instead.

decebals/claude-code-java · 53 tokens

performance-smell-detection

Detect potential code-level performance smells in Java - streams, collections, boxing, regex, object creation. Provides awareness, not absolutes - always measure before optimizing. For JPA/database performance, use jpa-patterns instead.

decebals/claude-code-java · 51 tokens