写点什么

大数据 ELK(二十六):探索数据(Discovery)

作者:Lansonli
  • 2022-10-15
    广东
  • 本文字数:1020 字

    阅读完需:约 1 分钟

大数据ELK(二十六):探索数据(Discovery)

探索数据(Discovery)

通过 Kibana 中的 Discovery 组件,我们可以快速地进行数据的检索、查询。

一、使用探索数据功能

点击

按钮可以打开 Discovery 页面。

 我们发现没有展示任何的数据。但我们之前已经把数据导入到 Elasticsearch 中了。

 Kibana 提示,让我们扩大我们的查询的时间范围

默认 Kibana 是展示最近 15 分钟的数据。我们把时间范围调得更长一些,就可以看到数据了

将时间范围选择为 1 年范围内的,我们就可以查看到 Elasticsearch 中的数据了。

二、导入更多的 Apache Web 日志数据

  • 将资料中的 access.log 文件上传到 Linux

  • 将 access.log 移动到/var/apache/log,并重命名为 access.log.2

mv access.log /var/apache/log/access.log.2
复制代码


  • 启动 FileBeat

./filebeat -e -c filebeat-logstash.yml
复制代码


  • 启动 Logstash

bin/logstash -f config/filebeat-es.conf --config.reload.automatic
复制代码


三、基于时间过滤查询

1、选择时间范围

2、指定查询某天的数据

查询 2020 年 5 月 6 日的所有日志数据。

3、从直方图上选择日期更细粒度范围

如果要选择查看某一天的日志,上面这种方式会有一些麻烦,我们有更快更容易的方式。


四、使用 Kibana 搜索数据

在 Kibana 的 Discovery 组件中,可以在查询栏中输入搜索条件。默认情况下,可以使用 Kibana 内置的标准查询语言,来进行快速查询。还有一种是遗留的基于 Lucene 的查询语法目前暂时可用,这种查询语法也可以使用基于 JSON 的 Elasticsearch DSL 也是可用的。当我们在 Discovery 搜索数据时,对应的直方图、文档列表都会随即更新。默认情况下,优先展示最新的文档,按照时间倒序排序的。

1、Kibana 查询语言(KQL)

在 7.0 中,Kibana 上线了新的查询语言。这种语言简洁、易用,有利于快速查询。

查询语法:

「字段:值」,如果值是字符串,可以用双引号括起来。

查询包含 zhihu 的请求

*zhihu*

查询页面不存在的请求

status : 404

查询请求成功和不存在的请求

status: (404 or 200)

查询方式为 POST 请求,并请求成功的日志

status: 200 and method: post

查询方式为 GET 成功的请求,并且响应数据大于 512 的日志

status: 200 and method: get and length > 512

查询请求成功的且 URL 为「/itcast.cn」开头的日志

uri: "\/itcast.cn\/*"

注意:因为/为特殊字符,需要使用反斜杠进行转义

2、过滤字段

Kibana 的 Discovery 组件提供各种各样的筛选器,这样可以筛选出来我们关注的数据上。例如:我们只想查询 404 的请求 URI。

指定过滤出来 404 以及请求的 URI、从哪儿跳转来的日志

将查询保存下来,方便下次直接查看

下次直接点击 Open 就可以直接打开之前保存的日志了 


发布于: 刚刚阅读数: 5
用户头像

Lansonli

关注

微信公众号:三帮大数据 2022-07-12 加入

CSDN大数据领域博客专家,华为云享专家、阿里云专家博主、腾云先锋(TDP)核心成员、51CTO专家博主,全网六万多粉丝,知名互联网公司大数据高级开发工程师

评论

发布
暂无评论
大数据ELK(二十六):探索数据(Discovery)_discovery_Lansonli_InfoQ写作社区