elk日志分析系统使用,elk怎么做日志分析

  elk日志分析系统使用,elk怎么做日志分析

  在目前的分布式和微服务架构下,每个应用都部署在不同的服务器上,每个应用都在记录自己重要或不重要的日志信息。当我们想通过日志信息排查错误时,可以根据错误应用在相应的机器上找到与错误报告相关的日志信息。但是,可能我们没有访问相应服务器的权限,也可能同一个应用程序部署在多个服务器上,所以我们不知道应该在哪个服务器上查找日志。遇到这样的尴尬,通过日志查错就很麻烦了。在这种情况下,ELK为我们提供了统一的日志管理解决方案,可以很好地支持Logback等日志框架,让我们可以集中管理不同应用输出的日志信息。

  ELK是ElasticSearch,Logstash和Kibana的简称。ElasticSearch主要用于存储日志信息,提供检索功能;Logstash用于收集应用发送的日志信息,写入ElasticSearchKibana是一个可视化日志查看和分析工具。

  麋鹿架构大致如下:

  上图中应用了日志框架,直接将日志发送到Logstash,然后Logstash将接收到的日志写入ElasticSearch。开发人员可以通过visual Kibana查询和分析日志。

  在上图中,Logstash和ElasticSearch可以是多个,而不是一个。

  麋鹿下载麋鹿可以通过他们官网下载,最好统一版本。我这里下载的是7.17.6版本,也就是ElasticSearch,Logstash,Kibana都是7.17.6版本。

  它们的下载地址如下:

  Elasticsearch下载地址:https://www . elastic . co/cn/downloads/past-releases/elastic search-7-17-6-log stash下载地址:3359 www.elastic.co/cn/downloads/past-releases/logstash-7-11

  **-基巴纳下载地址:* * 3359 www.elastic.co/cn/downloads/past-releases/kibana-7-17-6麋鹿。下载后只需要解压配置就可以使用了。还是很方便的。

  ELK的配置和启动。我在这里使用了Windows系统进行演示。配置好ELK后,我直接用命令行启动了它,但没有注册为服务。

  ElasticSearch的配置和启动在ES的安装目录下有一个config目录。打开该目录下的文件elasticsearch.yml,然后取消两行配置的注释符号,进行简单的修改。配置如下:

  网络主机:0.0.0.0

  discovery . seed _ hosts:[ 127 . 0 . 0 . 1 ,[:1]]在ES的安装目录中打开命令行,执行以下命令启动ES:

  的配置和启动。\bin\elasticsearch.batLogstash在Logstash的安装目录下也有一个config目录。复制logstash-sample.conf配置文件,命名为log _ log_to_es.conf文件名可以自己设置,启动时可以正确写入。

  按如下方式修改配置:

  输入{

  节拍{

  端口=5044

  }

  tcp {

  主机=0.0.0.0

  端口=8082

  模式=服务器

  tags=[bsjiot]

  编解码器=json_lines

  }

  }

  输出{

  弹性搜索{

  hosts=[http://localhost:9200]

  }

  }其中input是用来收集日志信息的配置,output用来将收集到的信息推送到ES。通过命令行启动Logstash,命令如下:\ bin \ log stash . bat-f . \ config \ log _ to _ es。Confikibana的配置和启动在kibana的安装目录中也有一个config目录。修改该目录中的kibana.yml文件,并对其进行如下配置:

  elastic search . hosts:[ http://localhost:9200 ]

  Server.host: 127.0.0.1 通过命令行中的以下命令启动Kibana。该命令如下所示:\bin\kibana.bat通过Logback向ELK输出日志。配置好ELK并启动后,通过SpringBoot进行测试。

  首先介绍两个依赖关系。引入的依赖关系如下:

  属国

  groupId net . log stash . log back/groupId

  artifact id log stash-log back-encoder/artifact id

  版本7.2/版本

  /依赖关系

  属国

  groupId ch.qos.logback /groupId

  artifactId回退-核心/artifactId

  /dependency接下来,配置Logback的配置文件:

  appender name=LOGSTASH

  目标本地主机:8082/目标

  编码器字符集=UTF-8

  自定义字段{ appname : xxxx }/自定义字段

  /编码器

  /appender

  根级别=info

  appender-ref ref=CONSOLE /

  appender-ref ref=LOGSTASH /

  /root最后通过Logback输出一些日志,然后在Kibana中查看。

  通过Kibana查看日志。我们访问一下Kibana提供的网页,在浏览器中打开http://localhost:5601/这个地址。然后,在左侧列表中选择堆栈管理,选择后会出现一个新页面,然后选择索引模式选项。在新页面中点击**创建索引模式* *按钮,然后将其命名为logstash-*(这里的名称是任意的),选择@timestamp的字段,如下图所示:

  选择后,单击创建索引模式按钮。创建完成后,回到Kibana的主页,选择Discover选项,切换到我们新创建的logstash-*选项,然后选择时间段,就可以看到相应的日志信息。

  总之,ELK部署在一台机器上,这只是一个演示。实际上,ELK可以部署在多台机器上,并且可以配置集群。当微服务等客户端较多时,同时向Logstash发送数据和写es可能会影响性能。这时候可以在客户端和Logstash之间引入卡夫卡,缓解Logstash和ES的压力。

  版权归作者所有:原创作品来自博主小二上九8,转载请联系作者取得转载授权,否则将追究法律责任。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: