为了解决公司的项目在集群环境下查找日志不便的问题,我在做过简单调研后,选用Elastic公司的Elastic Stack产品作为我们的日志收集,存储,分析工具。

Elastic Stack是ELK(Elasticsearch,Logstash,Kibana)从5版本开始的新名称,那么的他们都能干什么?参见下图:

我们使用logstash来收集日志,Elasticsearch存储日志,Kibana用来搜索并展示可视化的页面给用户。

ok,本章重点讲Kibana在linux下的安装,假设你已经安装了Elasticsearch,logstash。

使用cat /etc/centos-release查看系统版本:

  CentOS Linux release 7.2.1511 (Core) 

使用cat /proc/version 查看系统内核

  Linux version 3.10.0-327.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.3 20140911 (Red Hat 4.8.3-9) (GCC) ) #1 SMP Thu Nov 19 22:10:57 UTC 2015

由于我的服务器环境无法连接外网,这里采用rpm的方式安装,那么首先我们需要先准备好rpm,从官网下载kibana-6.1.2-x86_64.rpm文件。官网下载页传送门:

  https://www.elastic.co/downloads/kibana

下载完成后,使用rpm命令安装

  rpm -ivh /elk/kibana-6.1.2-x86_64.rpm

安装完毕,使用systemd来将kibana设置为开机启动

  sudo /bin/systemctl daemon-reload

  sudo /bin/systemctl enable kibana.service

如果需要外网访问,将kibaba.yml中的server.host设置为0.0.0.0,接下来我们启动服务

  sudo systemctl start kibana.service

使用IP:5601访问kibana,界面如下:

默认打开discover面板。但我们首先需要到management中创建Index Pattern。符合规则的Index Pattern将被用来匹配elasticsearch数据库中的index。例如,我创建了一个logstash-*的Index Pattern,能匹配到logstash-2018.01.18

简单配置后,接下来我们就可以去discover菜单查询数据了。

在右上角有时间选项点击可以展开更多选择,默认展示最近15分钟,根据需要选择。

kibana支持Lucene query sysntax,此外Kuery为kibana指定的查询语言。

在搜索栏输入任意字符,Kibana将使用message作为默认字段,将输入字符进行分词检索。注意:如需要使用中文分词,需要使用插件进行相关配置。

指定字段检索

  message:injected

将输入字符使用双引号包起来,则输入字符会作为一个短语搜索

  path:"/logs/xxxx/springframework.log"

如下字符需要使用\进行转义:

  + - && || ! () {} [] ^" ~ * ? : \

通配符:

  ? 匹配单个字符

  * 匹配0到多个字符

近似搜索:

  "charA charB"~10 表示charA前后10个词内出现charB

范围搜索:

  [ ] 表示端点数值包含在范围内,{ } 表示端点数值不包含在范围内

  数值类型示例,100到200:length:[100 TO 200]

  日期类型示例,6小时之内:date:{"now-6h" TO "now"}

      y years
      M months
      w weeks
      d days
      h hours
      H hours
      m minutes
      s seconds

  相关函数和示例:

      and path:"springframework*" AND @timestamp:["now-1h" TO "now"]

      orpath:"springframework*" OR @timestamp:["now-1h" TO "now"]

      not:NOT path:"springframework*"  或者   !path:"springframework*" 

      is path:"springframework*" 

      range : @timestamp:["now-1h" TO "now"]

      exists: _exists_:path  ##必须存在path字段

      

  

      

  

Elastic Stack之kibana入门的更多相关文章

  1. Elastic Stack之kibana使用

    Elastic Stack之kibana使用 作者:尹正杰  版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客数据流走向:FileBeat ===>Redis  ===>log ...

  2. Elastic Search和Kibana入门

    一.ES配置 二.ES本地快速搭建集群 查看ES集群 查看node详细情况 三.Kibana配置 修改kibana的es配置 访问localhost:5601端口 四.Elasticsearch 术语 ...

  3. ES 集中式日志分析平台 Elastic Stack(介绍)

    一.ELK 介绍 ELK 构建在开源基础之上,让您能够安全可靠地获取任何来源.任何格式的数据,并且能够实时地对数据进行搜索.分析和可视化. 最近查看 ELK 官方网站,发现新一代的日志采集器 File ...

  4. 集中式日志分析平台 Elastic Stack(介绍)

    一.ELK 介绍 二.ELK的几种常见架构 >>ELK 介绍<< ELK 构建在开源基础之上,让您能够安全可靠地获取任何来源.任何格式的数据,并且能够实时地对数据进行搜索.分析 ...

  5. Elastic Stack核心产品介绍-Elasticsearch、Logstash和Kibana

    Elastic Stack 是一系列开源产品的合集,包括 Elasticsearch.Kibana.Logstash 以及 Beats 等等,能够安全可靠地获取任何来源.任何格式的数据,并且能够实时地 ...

  6. 浅尝 Elastic Stack (一) Elasticsearch、Kibana、Beats 安装

    Elastic Stack 包括 Elasticsearch.Kibana.Beats 和 Logstash,也称为 ELK Stack.能够安全可靠地获取任何来源.任何格式的数据,然后实时地对数据进 ...

  7. Elastic Stack(ElasticSearch 、 Kibana 和 Logstash) 实现日志的自动采集、搜索和分析

    Elastic Stack 包括 Elasticsearch.Kibana.Beats 和 Logstash(也称为 ELK Stack).能够安全可靠地获取任何来源.任何格式的数据,然后实时地对数据 ...

  8. 使用 Spring Cloud Sleuth、Elastic Stack 和 Zipkin 做微服务监控

    关于迁移微服务架构,最常被提及的挑战莫过于监控.每个微服务应独立于其他服务的运行环境,所以他们之间不会共享如数据源.日志文件等资源. 然而,较容易的查看服务的调用历史,并且能够查看多个微服务的请求传播 ...

  9. Elastic Stack学习

    原文链接 Elastic Stack简称ELK,在本教程你将学习如何快速搭建并运行Elastic Stack. 首先你要安装核心开源产品: Elasticsearch: Kibana: Beats: ...

随机推荐

  1. shell编写mysql抽取数据脚本

    #!/bin/bash DT=`date +%Y%m%d` #当前日期YESTERDAY=`date -d "yesterday" +%Y-%m-%d` #昨天,用于处理数据的日期 ...

  2. JAVA提高二十:CopyOnWriteArrayList&CopyOnWriteArraySet&ConcurrentHashMap介绍

    前面我们将java集合类的大部分类都进行了深入分析,但我们会发现一个共性问题就是并发的问题,那么如何解决呢?我们前面基本都是通过Collections的一个工具类来进行的解决,但实际大部分使用中人们普 ...

  3. 【maven教程】(1)---maven环境配置

    maven环境配置 刚开始学习maven,现在项目需要用到maven,而且他确实很好用,也比较容易上手,我也是主要通过视频学习,在写博客的时候也会总结其它人所写 博客,从简到难,如果你也是初学者那接下 ...

  4. Struts2学习---namespace,file模块包含,默认action

    我们上一节已经将action基本的配置和使用讲了,接下来我们讲以下struts一些小知识点: namespac: 上一节学习action的时候我们访问我们jsp文件时候使用的: http://loca ...

  5. SQL Server 数据库引擎怎样记录完整备份后修改过的数据

    SQL Server 使用两个内部数据结构跟踪被大容量复制操作修改的区,以及自上次完整备份后修改的区.这些数据结构极大地加快了差异备份的速度.当数据库使用大容量日志恢复模式时,这些数据结构也可以加快将 ...

  6. Python学习日记:day6----小知识点总结

    小知识点总结 一.Python2与Python3 的区别 1.Python2中可以加括号输出,也可不加输出     Python3中必须加 2.python2 中有xrange(生成器)也有range ...

  7. C语言_第二讲_规范以及常用数据类型

    一丶编码规范基本数据类型 编码规范 任何程序员,都应该有良好的的编码习惯,便于以后的代码可读性和维护 常见了编码规范有 匈牙利命名法 驼峰式大小写 匈牙利命名法: 是电脑程序设计中的一种变量命名规则, ...

  8. 【转载】Python中的正则表达式教程

    本文http://www.cnblogs.com/huxi/archive/2010/07/04/1771073.html 正则表达式经常被用到,而自己总是记不全,转载一份完整的以备不时之需. 1. ...

  9. bzoj 3143: [Hnoi2013]游走

    Description 一个无向连通图,顶点从1编号到N,边从1编号到M. 小Z在该图上进行随机游走,初始时小Z在1号顶点,每一步小Z以相等的概率随机选 择当前顶点的某条边,沿着这条边走到下一个顶点, ...

  10. input上传图片(file),预览图片的两种方法。blob与base64编码

    上传图片时一般都需要预览,我一般用这两种方法来实现.base64编码可以直接上传到后台,后台解析下,得到的文件就会比较小了,省去了压缩图片这一步了. //获取对象input file 的图片地址,放进 ...