容器化监控:使用 Prometheus 和 Grafana 实现应用可观测性
1. 监控指标收集准则
在收集指标时,以下准则能为我们提供有用的指导:
- 与外部系统交互时,记录调用耗时以及响应是否成功。这样能快速判断其他系统是否影响自身系统的性能或稳定性。
- 任何值得记录日志的内容都有可能值得作为指标记录。增加计数器比写入日志条目在内存、磁盘和 CPU 方面的开销可能更小,而且更易于直观呈现事件发生的频率。
- 业务团队希望报告的关于应用程序或用户行为的任何详细信息都应记录为指标。这样可以构建实时仪表板,而非发送历史报告。
2. 运行 Prometheus 容器收集指标
Prometheus 采用拉取模型收集指标,即从其他系统主动获取数据,这个过程称为抓取(scraping)。部署 Prometheus 时,需要配置要抓取的端点。
在生产容器平台中,可配置 Prometheus 自动发现集群中的所有容器;在单服务器的 Docker Compose 中,使用简单的服务名称列表,Prometheus 通过 Docker 的 DNS 查找容器。
以下是 Prometheus 配置示例,用于抓取图像画廊应用程序中两个组件的指标:
global:
scrape_interval: 10s
scrape_configs:
- job_name: "image-gallery"
metrics_path: /metrics
static_configs:
- targets: ["image-gallery
超级会员免费看
订阅专栏 解锁全文
1182

被折叠的 条评论
为什么被折叠?



