用途:该技能把现代可观测性实践转化为可执行指导,帮助为代码埋点、从第一性原理调试生产问题、设计 SLO 与告警、配置采样与管道、选择遥测存储位置,以及让系统对 AI 智能体可读。适用于塑造“存在哪些数据、以后如何回答问题”的工作;仅加一行日志则不必使用。
核心模型:可观测性是可靠软件的一种属性,而非购买的产品。监控回答已知的未知,可观测性回答未知的未知。未发出的状态无法恢复,因此设计问题始终是“以后我需要问什么”。系统是社会技术性的,诊断必须可传授;只有生产环境才是生产环境。
基础实践:每个工作单元发出一个宽结构化事件,使用扁平键值对,捕获输入、上下文、条件与结果,理想为数百个属性。指标、日志、追踪并非不同数据类型,可从同一份上下文丰富的表示按需派生。高基数与高维度是优势;预聚合是不可逆的,应在读取时聚合。两种遥测模型:三支柱适合基础设施与第三方代码;统一存储适合团队自有代码。
OpenTelemetry 埋点:OTel 是厂商中立的遥测标准,实现关注点分离。自动埋点提供骨架,自定义埋点承载领域操作与领域失败,长期价值在自定义层。仅在既有意义又可聚合时创建 span;优先宽事件而非深层 span 树;命名使用点分命名空间的 snake_case,ID 放入属性;用受检 schema 保证一致性;对 PII 做纵深防御。
分析:停止从已知条件调试,采用假设驱动的科学循环:从信号出发、验证真实性、隔离异常与基线的差异、按有用字段分组、必要时过滤收窄。可自动化暴力搜索(BubbleUp 模式),但需宽事件支持。避免陈旧 runbook、确认偏误与混淆相关与因果。
可观测性驱动开发:与 TDD 互补,每个功能随埋点一起发布;合并前回答“如何知道改动按预期工作”;让工程师为自己代码值班;用特性开关解耦部署与发布;用真实流量验证;注意聚合会掩盖问题。
SLO 与告警:对用户痛点的症状告警而非原因;告警需同时满足“可靠指示用户体验下降”和“可行动”。从关键用户旅程定义 SLI,分类好/坏事件并设 SLO;优先基于事件的 SLI;在错误预算耗尽前按燃烧率告警,使用滑动窗口与预测性燃烧告警。
成本、采样、管道与存储:大规模下采样保留代表性事件并携带采样率;按流量选择固定速率、目标速率或按 key 动态采样;头采样与尾采样各有适用;使用一致采样保证整条追踪存活。OTel Collector 管道解耦生产者与消费者,最大成本杠杆是 reduce。存储宜用按时间分区的列式存储,读取时计算。
面向 AI:智能体效果的最大差异不是模型,而是维护良好的机器可读上下文层。把资深直觉编码进遥测;使用一致的语义属性与人类可读字段描述;围绕学习飞轮埋点 LLM 应用,采用 OTel GenAI 语义约定,在查询时从模型与 token 数推导成本。
限制:资料未提供具体安装命令、价格、平台支持或效果数据。