-
Notifications
You must be signed in to change notification settings - Fork 413
Description
现象描述:
版本:v1.14.0-ce
第一个问题:
查询请求数的api: /api/v1/:namespace/:name/run/:id/request/:instance/count
日志是:
{"time":"2026-01-14T05:04:12.741386015Z","level":"DEBUG","msg":"request-count","query":"avg_over_time(revision_request_count{pod_name='f9bzumivmp6o-00001-deployment-896589f98-qsg44',namespace='spaces_test'}[30m:])[30m:1m]"}
返回数据是:
{"msg":"OK","data":{"result_type":"","result":null,"total_request_count":0}}
然后去查看了代码,发现用的是revision_request_count这个指标,
但通过部署的prometheus 服务调用api查询,发现这个指标不存在。
只存在以下指标:
revision_app_request_count
这是代码中写错了指标名称吧?
并且namespace参数改成namespace_name='spaces_test'才能查询到数据。
第二个问题:
查询请求数的api: /api/v1/:namespace/:name/run/:id/request/:instance/latency
返回数据也是:
{"msg":"OK","data":{"result_type":"","result":null,"total_request_count":0}}
查看日志是:
{"time":"2026-01-14T04:10:10.745044667Z","level":"DEBUG","msg":"request-latency","query":"sum(increase(revision_app_request_latencies_bucket{pod_name='xxxxxxxxxxxxxxx',namespace='spaces_test'}[30m:])) by (le)"}
这个查询语句也是存在namespace_name的问题
第三个问题:
有一个指标查询也不稳定,很多时候查询不到数据:
源代码:
query := fmt.Sprintf("avg_over_time(rate(container_cpu_usage_seconds_total{pod='%s',namespace='%s',container='%s'}[1m])[%s:])[%s:%s]", req.Instance, namespace, container, req.LastDuration, req.LastDuration, req.TimeRange)
[1m]改成[3m]就能查询到数据了:
query := fmt.Sprintf("avg_over_time(rate(container_cpu_usage_seconds_total{pod='%s',namespace='%s',container='%s'}[3m])[%s:])[%s:%s]", req.Instance, namespace, container, req.LastDuration, req.LastDuration, req.TimeRange)
可以考虑这个是否也调整一下。