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.
npx skills add martin1847/evolab --skill observability-standardgit clone --depth 1 https://github.com/martin1847/evolabWrote 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.
[](https://agentmods.dev/skills/martin1847/evolab/observability-standard)<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>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.
| Model | Per session | Once 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 |
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.
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.
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 看数据对不对,不靠时间戳猜。
五条铁律(所有服务,全部遵守)
- 一次对外请求 = 一棵 trace。入站请求 handler 是 root span,所有下游(DB / 缓存 / 跨进程调用 —— agent 场景下还有子 agent / LLM / 工具 / 检索)都是子 span。
- 宽事件优先:每步一条富字段结构化事件;事件名是稳定可聚合标识符,变量进字段;不写散文。
- 三信号可关联:每条 log 带
trace_id+span_id(随 trace 同采样 / 保留);业务 id 挂成 span 属性以按业务 id 反查 trace,不往业务行加trace_id列;需持久溯源处(AI 决策 / 金额 / 对客输出 / 合规)落自己拥有的correlation_id,优先进专用审计 / outbox 表(见 references §2.1)。 - 跨进程必传播 W3C
traceparent(HTTP / gRPC / 消息队列 / 任何 agent 协议都算)。不传 = trace 断成多棵互不相连的树 = 跨服务定位失效。优先级高于功能。 - 标准在边界 + 后端无关:跨进程 / 对外响应遵守 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 信号整体丢失。
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.
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.
- 8d ago First seen · 97 lines · 210 tokens per session scan A 06704dd9614d
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.
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.
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.
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…
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.
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.
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.