部署标记是什么
部署标记(Deploy Marker)把每次部署的时间点与版本写进监控或日志系统:图表上叠加发布事件,指标变化与变更直接对上号,是事故定位与归因的第一手证据,也是变更审计的组成部分。写入内容除了时间,还要有版本号、环境、提交摘要与操作人。
基本信息
| 写入内容 | 版本号、环境、时间、提交 sha、操作人 |
|---|---|
| 位置 | 监控注释(annotation)、日志字段、部署事件表 |
| 用途 | 事故定位、指标归因、变更审计 |
| 工具示例 | Grafana annotations、监控平台的部署 API |
| 自动化 | 由流水线在部署动作后自动写入 |
| 粒度 | 按服务拆分,多服务发布分别标记 |
Grafana 注释 API 示例
Grafana 注释 API 示例
curl -X POST https://grafana.example.com/api/annotations \
-H "Authorization: Bearer $GRAFANA_TOKEN" \
-H "Content-Type: application/json" \
-d '{"text":"deploy web v1.8.2","tags":["deploy","prod"]}' # 写入部署标记
# 部署脚本结尾调用,保证每次发布都留痕典型使用场景
- 事故定位:把故障时间点与部署时间线叠加,圈定相关变更
- 指标归因:延迟或错误率拐点对齐发布时刻
- 审计:部署事件表提供变更时间与版本证据
- 复盘素材:发布前后指标对比直接从图表取数
- 多团队协同:统一标记规范,跨服务时间线可对齐
- 回归对照:观察期结论与标记关联留档
字段与作用
| 字段 | 作用 | 注意 |
|---|---|---|
| 版本号 | 定位制品 | 用可追溯的版本或摘要 |
| 环境 | 区分部署目标 | 多环境必须区分 |
| 时间 | 时间线对齐 | 用统一时钟 |
| 提交 sha | 关联代码变更 | 与仓库记录互查 |
| 操作人 | 责任与审计 | 服务账号要能追溯到发起人 |
标记做到服务级:多服务聚合发布时,按服务拆分注释便于阅读。
标记缺失或滞后:事故时间线与实际发布错位,归因困难。
部署脚本结尾自动写标记:比依赖人工记得写可靠。
标记与回滚动作同样要写:回滚时刻也是研判影响面的关键时间点。