这是 Beta 探索课程,内容结构、实验步骤和示例可能会继续调整。
关键决策
决策 1:应用直写还是 Agent 采集
| 方案 | 优点 | 缺点 |
|---|---|---|
| 应用直写 | 实现简单 | 业务与日志系统强耦合,日志挂了业务被拖垮 |
| Agent 采集 | 隔离故障、统一策略 | 多一层组件 |
决策:Agent 采集。应用只写本地文件,Agent 负责读取、缓冲、批量、重试。
决策 2:文本日志还是结构化日志
| 方案 | 优点 | 缺点 |
|---|---|---|
| 文本 + 正则解析 | 迁移成本低 | 易受格式变化影响 |
| 结构化 JSON | 查询聚合准确 | 需要业务改造 |
决策:组合使用。核心服务尽量结构化输出,历史服务先用解析规则兼容。
决策 3:日志聚合指标还是应用埋点指标
| 方案 | 优点 | 缺点 |
|---|---|---|
| 从日志聚合 | 接入成本低、可回溯 | 语义依赖日志质量 |
| 应用埋点 | 延迟低、语义清晰 | 需要业务改造 |
决策:早期从日志聚合,核心服务逐步埋点。两条路径并存时要统一口径。
决策 4:全量 trace 还是采样 trace
决策:采样,但保护核心信号。固定比例 + 错误全量 + 慢请求提高采样率 + 重要租户定向采样。关键是入口采样后下游遵循同一决策。
决策 5:告警越敏感越好吗
决策:不是。过度敏感会制造噪音。规则要有持续时间、聚合、抑制、升级和恢复通知,并持续治理误报。
一句话
五个关键决策:Agent 采集、结构化优先、指标从日志起步、trace 采样保核心、告警克制不敏感。每个决策都来自对「可靠性、成本、体验」的具体权衡。
发现内容有问题?
告诉我们哪里需要改进。
