是否可以在 LogQL 中将字符串值转换为数字?

问题描述

我正在关注 documentation 并感谢 | line_formatregexReplaceAll 我能够从一行中获取一些子字符串。

假设现在我有这些列:

line
123
7
123
54
14

我想执行一些转换操作,例如总和或转换操作,分组为并取总数。 它不起作用,因为我怀疑这些值不是数字,而只是字符串。 是否可以将其转换为数字?

我曾尝试使用 unwrap,但没有奏效:

sum_over_time(
    {service="some"} 
    |="text expression"
    | json
    | line_format `{{ regexReplaceAll "text expression to remove from (\\d+)" .label_id "${1}" | trim }}`
    | unwrap label_id [1m]
)

它以

结束

管道错误:“SampleExtractionErr”系列:

当我过滤错误时,没有结果。

解决方法

我认为您正在寻找“展开”表达式。

请参阅有关此 here 的 Loki 文档。