我试过
jsonPayload.elapsed_ms > 5000
我显然得到了字符“5”的字典比较,因为我只看到“6”、“7”、“8”、“9”的结果(见每行的最终数字,在“200”之后) :我试过
double(jsonPayload.elapsed_ms)>5000
也是,但似乎不是正确的语法。有一整节关于转换 here但没有例子。
最佳答案
我来自 Cloud Logging 团队。
由于jsonPayload.elapsed_ms
字段被记录为字符串,范围比较按字典顺序计算。您是否可以在 JSON 有效负载中将该字段记录为数字类型?
https://cloud.google.com/logging/docs/view/advanced-queries#values_conversions在评估过滤器表达式时记录自动转换。但是,目前不支持在查询时将记录的值转换为不同的类型。
我们计划在查询语言中添加对此的支持。请关注并 +1 以下公开问题 https://issuetracker.google.com/issues/140348005更新。
关于google-cloud-platform - 如何在 Google Stackdriver Logging 高级查询中将字符串字段作为数字进行比较?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62565567/