Bosun Logstash集成-如何获取完整消息字段

Bosun Logstash集成-如何获取完整消息字段,logstash,bosun,Logstash,Bosun,我想在bosun中发出警报,它将检查logstash中是否出现“level:fatal”消息,并在每次出现唯一消息x主机组合时发出警报。为了使其有用,它应按“消息”和“主机”标记对警报进行分组,并在模板中报告这些标记的值。我的lscount查询如下所示: $fatal_log_rate = lscount("logstash","message,host","level:fatal", "5m", "5m", "") 我的问题是,在bosun中运行此警报时,它不是像我希望的那样按整个消息字段分

我想在bosun中发出警报,它将检查logstash中是否出现“level:fatal”消息,并在每次出现唯一消息x主机组合时发出警报。为了使其有用,它应按“消息”和“主机”标记对警报进行分组,并在模板中报告这些标记的值。我的lscount查询如下所示:

$fatal_log_rate = lscount("logstash","message,host","level:fatal", "5m", "5m", "")
我的问题是,在bosun中运行此警报时,它不是像我希望的那样按整个消息字段分组,而是将单个消息的消息字段分解为多个组。它看起来像是在空格、冒号、换行符、括号和等号上拆分。例如,如果我的消息是:

message: There was an error at: org.abc.Class:42.
          ABC Component failed (reason=300)
从上面的lscount得到的bosun输出将给我12个组,其中包含消息“there”、“was”、“an”、“error”、“at”、“org.abc.Class”、“42”、“abc”、“component”、“failed”、“reason”、“300”

按主机分组也不像预期的那样,尽管这在第一个时段是分裂的。例如,我们的主机名可能是
core2.abc.xyz.net
,但是上面的lscount结果在
host=core2
host=abc.xyz.net
上被分割


有没有办法按消息字段的全部或部分对警报进行分组,然后在模板中获取要报告的完整消息字段

我认为这是因为在弹性力学中分析的场中的场(参见)。因此,字段中的文本被elastic标记(拆分为单词)


因此,您需要将弹性映射中的字段设置为
未分析
,或者制作另一个
未分析的字段副本

,我相信这是因为弹性映射中分析字段中的字段(请参阅)。因此,字段中的文本被elastic标记(拆分为单词)

因此,您需要将弹性映射中的字段设置为
未分析
,或者制作另一个
未分析
的字段副本