如何通过Stackdriver追踪Google Cloud CDN缓存命中率时间序列指标?
如何在Cloud Monitoring中追踪Cloud CDN缓存命中率时间序列指标
没问题,Cloud Monitoring(原Stackdriver)完全可以追踪Cloud CDN的缓存命中率时间序列数据,你之前没找到大概率是没找对指标路径或者没加正确的过滤条件。我给你详细说下操作步骤和可选方式:
一、通过Cloud Monitoring控制台查看
- 打开Cloud Monitoring控制台,进入Metrics Explorer页面
- 在「Select a metric」搜索框中直接输入
cache.googleapis.com/hit_ratio,或者按类别逐层查找:- 先选择「Cloud CDN」类别,然后找到「Hit ratio」指标;或者选择「Load Balancing」类别,在后端服务相关指标里定位到该命中率指标
- 添加过滤条件,锁定你的目标负载均衡器:
- 点击「Add filter」,选择
backend_service_name(因为CDN是绑定在后端服务上的,负载均衡器通过后端服务关联CDN),然后选中你对应的后端服务名称;如果需要按转发规则(负载均衡器入口)过滤,也可以选择forwarding_rule_name
- 点击「Add filter」,选择
- 调整时间范围和聚合方式,就能看到命中率的时间序列趋势了,还可以将该图表添加到自定义仪表盘,或者设置告警规则追踪异常波动
二、用命令行或API获取自定义数据
如果你需要自动化获取或者做更灵活的自定义分析,可以用以下方式:
- gcloud命令行:查看命中率指标的详细定义
gcloud monitoring metrics describe cache.googleapis.com/hit_ratio - MQL查询语言:自定义查询特定负载均衡器的命中率趋势(替换成你的后端服务名称)
fetch gce_backend_service | metric 'cache.googleapis.com/hit_ratio' | filter resource.labels.backend_service_name == '你的后端服务名称' | align rate(1m) | every 1m
补充说明
控制台「Network services > Cloud CDN」页面显示的命中率是实时快照,而Cloud Monitoring的指标是按时间粒度聚合的历史数据,更适合追踪长期波动规律。另外要注意,命中率指标是与后端服务绑定的,所以一定要过滤到正确的、配置了CDN的后端服务,不然可能会出现无数据的情况。
内容的提问来源于stack exchange,提问作者JohnGB
相关产品推荐
相关产品推荐

