4

这里提出了一个有点类似的问题,但还没有答案。这个问题与旧版本的 Kibana 有关,所以我希望你能帮助我。

我正在尝试在 Kibana 仪表板中设置一些预定义的查询。我正在使用 Kibana 5.1。这些查询的目的是根据多个不同的参数过滤一些日志。

让我们看看我想执行的查询:

{
  "index": "${index_name}",
  "query": {
    "query_string": {
      "query": "message:(+\"${LOG_LEVEL}\")",
      "analyze_wildcard": true
    }
  }
}

我知道我可以直接在仪表板中查询类似的内容"message:(+"ERROR")"并手动将其更改ERRORWARN例如,但我不希望这样 - 想象这个查询可能更复杂并包含多个字段。

请注意,存储在 中的数据message不是结构化的 - 将消息视为整个日志行。这意味着我没有LOG_LEVEL可以直接过滤的字段。

有什么方法可以从 Kibana Discover 仪表板动态设置index_name和?LOG_LEVEL

4

1 回答 1

1

您应该去发现,打开一个文档并单击镜面玻璃任何字段中的此按钮。之后,搜索栏下方将出现一个过滤器,您可以对其进行编辑并放置任何自定义查询。如果您想使用更多自定义查询添加更多过滤器,您可以对不同的文档或字段重复相同的操作,或者您可以对设置(或管理)、保存的对象、转到您保存的搜索和 JSON 表示并复制和filter根据需要多次粘贴数组字段中的元素。

请记住,为了应用其中一个过滤器,您可能应该禁用已启用的过滤器(否则它将按仪表板中所有已启用的过滤器进行过滤)。

于 2017-03-30T23:18:53.800 回答