如何从 Kibana 仪表板添加包含过滤器?



我想添加一个过滤器 say 来显示包含 saytest关键字的所有@log_namelog。我在 Kibana 仪表板上看到了以下字段。

  • .log
  • @log_name
  • _id
  • _指数
  • 主机名

当我添加带有@log_name is test的过滤器时,它不会返回任何结果,但是当我添加log is test时,它会返回包含此关键字的所有值。

我也尝试了@log_name is *test*@log_name.keyword is *test*,但我没有得到任何结果。我这里有以下三个问题:

1.如何添加返回@log_name中包含test的值的过滤器?

更新:我想出了通过编辑查询DSL添加通配符的方法。

{
"query": {
"wildcard": {
"@log_name": {
"value": "*test*"
}
}
}
}
  1. 为什么我能够搜索包含test而不是@log_namelog

  2. @fieldName、_fieldName、字段名称在 Kibana dashbaord 上是什么意思?

当您将文档索引到 Elasticsearch 时,它会创建一个映射来定义每个字段的类型(字符串或文本、长整型、关键字等(。当您查询要分析的文本字段时,您会搜索该字段的所有标记(通常是组成短语的单词(,因此您的日志文件肯定与此字段的标记"test"一词匹配。也许@log_name字段有其他配置,因此请查看映射。

一些可能有帮助的文档: https://www.elastic.co/guide/en/elasticsearch/reference/current/analysis-analyzers.html https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping.html

我不太确定您对第三个问题的意思,因为所有这些都取决于映射,字段的名称应该无关紧要。

最新更新