ELK搭建

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
Elasticsearch Serverless通用抵扣包,测试体验金 200元
简介: ELK安装elasticsearch安装 * 下载elasticsearch-5.0.0.tar.gz,并解压。

ELK安装

elasticsearch安装
* 下载elasticsearch-5.0.0.tar.gz,并解压。

  • 通过elasticsearch.yml可设置host和port。
vim config/elasticsearch.yml 
network.host: 192.168.33.10

http.port: 9200
  • 通过jvm.options可设置jvm相关参数。
vim config/jvm.options
  • 后台方式启动elasticsearch。
./bin/elasticsearch -d
  • 验证是否安装成功,通过http://192.168.33.10:9200/?pretty返回类似下面的json格式即安装成功。
curl 'http://192.168.33.10:9200/?pretty'
{
  "name" : "Y88DRRb",
  "cluster_name" : "elasticsearch",
  "cluster_uuid" : "-WVdXX65Rw6dpo7Ne8WX0A",
  "version" : {
    "number" : "5.0.0",
    "build_hash" : "253032b",
    "build_date" : "2016-10-26T04:37:51.531Z",
    "build_snapshot" : false,
    "lucene_version" : "6.2.0"
  },
  "tagline" : "You Know, for Search"
}

logstash安装
* 下载logstash-5.0.2.tar.gz并解压。
* 验证是否安装成功,通过./bin/logstash -e 'input{stdin{}}output{stdout{codec=>rubydebug}}',然后输入hello。返回类似如下信息则安装成功。

{
       "message" => "hello",
      "@version" => "1",
    "@timestamp" => "2016-11-30T02:40:16.043Z",
          "host" => "hb-localhost"
}

kibana安装
* 下载kibana-5.0.1-linux-x86_64.tar.gz并解压。
* 通过kibana.yml可设置kibana主机和端口,及elasticsearch服务地址。

vim config/kibana.yml
server.port: 5601

server.host: "192.168.33.10"

elasticsearch.url: "http://192.168.33.10:9200"
  • 启动kibana。
./bin/kibana
  • 浏览器输入http://192.168.33.10:5601/即可进入kibana。

应用日志输出格式

  • 为方便logstash处理,尽量让日志以json格式输出,比如下面格式:
{"sql":"select * from product","time":"22","exception":"nullpointException","timeConsuming":"1231ms"}
  • 日志文件名可以以天分割,比如db-2016-11-29.log。

logstash处理日志

  • 创建logstash的配置文件logstash.conf,内容如下。input用于声明日志文件位置及处理相关配置。logstash会匹配db-xxx.log日志并从头开始处理,以json格式解析。output用于声明处理后的输出,将以common-sql-%{+YYYY.MM.dd}索引名输出到192.168.33.10:9200的es上。
input {
     file {
        path => "/home/vagrant/logstash/db-logs/db-*.log"
        start_position => "beginning"
        type => "sql"
        codec => json {
            charset => "UTF-8"
        }        
     }
}
output { 
    if "_grokparsefailure" in [tags] {
    }else{
        if [type] == "sql"{
                elasticsearch { 
                         hosts => ["http://192.168.33.10:9200"]
                         index => "common-sql-%{+YYYY.MM.dd}"
                }
       }
    }   
}

kibana展示

  • logstash处理后输出到es后即有日志了。

  • 浏览器输入http://192.168.33.10:5601/进入主界面。

这里写图片描述

  • 创建新的索引匹配 : Management -> Index Patterns -> Add New -> 输入common-sql-* -> Create

这里写图片描述

  • 查看写入到es的日志记录,Discover -> 选择 common-sql-* -> 右上角选择时间 -> 搜索。

这里写图片描述

  • 创建一个可视化,Visualize -> Line chart -> common-sql-* -> X-Axis -> Aggregation 选择 Terms -> Field 选择 time.keyword -> Apply changes

这里写图片描述

========广告时间========

鄙人的新书《Tomcat内核设计剖析》已经在京东销售了,有需要的朋友可以到 https://item.jd.com/12185360.html 进行预定。感谢各位朋友。

为什么写《Tomcat内核设计剖析》

=========================

相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
目录
相关文章
|
消息中间件 监控 数据可视化
一口气完成ELK 日志平台的搭建,我感觉我又行了!
最近在玩 ELK 日志平台,它是 Elastic 公司推出的一整套日志收集、分析和展示的解决方案。
|
消息中间件 数据采集 监控
ELK搭建(五):linux系统日志监控平台搭建
现在的生产系统多使用linux系统,在实际生产过程中我们除了需要监控一些业务日志之外,有时也需要监控linux系统本身的日志,来帮助我们进行一些排错和判断。那么这一期,我们就针对linux系统日志监控平台的搭建来进行讲解 与往期一样,我们针对实际搭建教程更多是快速搭建为主,不做过多的原理性讲解,这一类讲解我们放到后期单独开几期博客来探讨。
1307 0
ELK搭建(五):linux系统日志监控平台搭建
|
消息中间件 数据采集 监控
ELK搭建(四):监控mysql慢查询、错误日志日志
因为mysql免费、稳定以及还不错的性能,是当前市面上多数公司的数据库选择。在实际的生产环境中我们更需要及时知道数据库中的报错日志、慢日志等信息,来帮助我们进行排错和优化。 普通的到服务器上去查看日志的方式并不方便,特别是涉及到分布式部署时,因此我们需要一个统一的监控平台来实时、方便的查看这些日志数据。
1222 0
ELK搭建(四):监控mysql慢查询、错误日志日志
|
自然语言处理 运维 监控
不能不学!从零到一搭建ELK日志,在Docker环境下部署 Elasticsearch 数据库
最近在玩 ELK 日志平台,它是 Elastic 公司推出的一整套日志收集、分析和展示的解决方案。
|
消息中间件 监控 NoSQL
ELK搭建(十三):搭建Nginx资源访问率、丢包率、读写率等运行性能监控平台
Nginx是一款轻量级、高性能的流量分发和反向代理的web服务。随着市场业务量的增加,普通的web容器,如tomcat的并发量已经远不能满足我们的业务量,同时随着分布式架构的普及,我们需要一款反向代理服务的支持,于是Nginx应运而生。 Nginx已经在大多数业务中普遍使用,因此针对Nginx的性能监控十分必要,这样我们才能实时掌握服务器请求情况和运行效率 所以今天,我们的目标就是搭建一个Nginx运行性能监控平台
533 0
ELK搭建(十三):搭建Nginx资源访问率、丢包率、读写率等运行性能监控平台
|
消息中间件 数据采集 监控
ELK搭建(十二):搭建Nginx访问、错误日志监控平台
Nginx是一款轻量级、高性能的流量分发和反向代理的web服务。随着市场业务量的增加,普通的web容器,如tomcat的并发量已经远不能满足我们的业务量,同时随着分布式架构的普及,我们需要一款反向代理服务的支持,于是Nginx应运而生。 Nginx已经在大多数业务中普遍使用,因此针对Nginx的流量监控,错误日志监控极其必要,这样才能让我们能够及时了解系统运行情况。 那么今天,我们就来看看如何搭建Nginx访问记录、错误日志监控平台
627 0
ELK搭建(十二):搭建Nginx访问、错误日志监控平台
|
消息中间件 存储 JSON
不得不学!从零到一搭建ELK日志,在Docker环境下部署 logstash 工具
最近在玩 ELK 日志平台,它是 Elastic 公司推出的一整套日志收集、分析和展示的解决方案。
|
监控 数据可视化 Go
不得不学!从零到一搭建ELK日志,在Docker环境下部署 Filebeat 日志收集工具
最近在玩 ELK 日志平台,它是 Elastic 公司推出的一整套日志收集、分析和展示的解决方案。
|
数据可视化 数据挖掘 定位技术
不得不学!从零到一搭建ELK日志,在Docker环境下部署 Kibana 可视化工具
最近在玩 ELK 日志平台,它是 Elastic 公司推出的一整套日志收集、分析和展示的解决方案。
|
存储 运维 监控
ELK搭建(十一):搭建MongoDB运行情况监控平台
mongoDB作为基于磁盘的非关系型数据库,JSON格式数据存储方式,具有优秀的查询效率。越来越多的场景使用到了MongoDB。在生产运维中,更需要我们能够实时的掌握mongo的运行情况,以方便我们数据库运行问题做出及时的调整和补救。
594 0
ELK搭建(十一):搭建MongoDB运行情况监控平台
下一篇
oss教程