欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

ELK搭建

程序员文章站 2024-03-22 21:52:34
...

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/进入主界面。

ELK搭建

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

ELK搭建

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

ELK搭建

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

ELK搭建

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

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

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

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