匹配正则表达式不适用于整数类型 - MQL GCP

Match regex not working for integer types - MQL GCP

我正在尝试匹配 4.*response_code。但是在 MQL 编辑器中得到 Expected type 'String' but got 'Int'.。我能够将字符串与正则表达式匹配,只是 int 不起作用。有没有办法可以将度量类型 int 转换为字符串?还是我做错了?

fetch istio_canonical_service
| metric 'istio.io/service/client/request_count'
| filter (metric.response_code =~ '4.*')
| group_by 1m, [value_request_count_mean: mean(value.request_count)]
| every 1m
| group_by [metric.response_code],
    [value_request_count_mean_aggregate: aggregate(value_request_count_mean)]

根据上面 Chandra 的回答,以下解决方法有效:

fetch istio_canonical_service
| metric 'istio.io/service/client/request_count'
| filter metric.response_code >= 400 
| filter metric.response_code < 500
| group_by 1m, [value_request_count_mean: mean(value.request_count)]
| every 1m

您不能像匹配字符串那样匹配整数。如果你愿意,你可以使用 AND 操作。

例如:metric.label.response_code>="400" AND metric.label.response_code<"500"

您不能将指标类型转换为字符串,因为响应代码是整数。