0

我无法通过 bosun 弹性搜索操作读取逗号分隔的字符串字段,但它适用于数字字段。我想读取一个有逗号分隔字符串的字段,然后我想把它放在模板主题中并通知松弛通道。

在我如何读取数值但同样不起作用的字符串下面,我想读取一个名为“tags”的字段,该字段具有逗号分隔的字符串值,例如“test,poc,custa,maria”

$q = esstat(esls("metrics-xxx"), "host", esquery("metric", "disk"), "used_percent", "avg", "1m", "7m", "") $val = 平均($q)

有人为此工作过吗?

4

1 回答 1

0

我不确定我是否完全清楚这个问题。要记住的几件事:

  1. Bosun 中的弹性监控实际上是针对日志发出警报,而不是存储在弹性中的指标。您也许可以做到,但不是 Bosun 的任何作者都探索过的场景。
  2. 以 Bosun 的表达式语言或类型返回类型,弹性查询当前返回的唯一类型是 seriesSet(参见http://bosun.org/expressions#elastic-query-functions
  3. 你确定你有一个 CSV 字符串值,通常在弹性中你会将它映射到一个数组并让分析器以逗号分隔。

话虽如此,如果您只想在模板中显示它,您可以使用.ESQuery.ESQueryAll获取原始行,然后显示查询中某些示例行的 .Tag 字段(或者可能只是第一行)。请参阅文档中这些模板函数的用法。

于 2017-05-11T13:06:49.330 回答