zoukankan      html  css  js  c++  java
  • ELK日志解决方案安装配置与使用

    官方网站:https://www.elastic.co/products/elasticsearch

    logstash,elasticsearch,kibana作用如下:

    logstash:分布在每一台需要采集数据的节点上,需要一个配置文件来获取数据,输入主要支持file,输出支持gangalia,nagios,kafka,elasticsearch.

    而且可以简单地配置,就可以把数据结构化,过滤等。功能和flume类似。

    elasticsearch:基于lucene的一个数据存储,索引工具,高可用,全文检索,全开源。有自己的api可以方便调用。

    kibana是前端展现工具,使用nodejs开发。可以创建index,然后绘图,检索,根据标签进行过滤等功能。

    安装非常简单,下载解压后执行相应的命令即可。

    logstash -e 'input { stdin { } } output { stdout {} }'

    /bin/elasticsearch

    bin/kibana

    以下是我使用elk来搭建一个环境,用来捕获取hadoop的主要进程日志的过程。

    input {
      file {
        type =>"hadoop"
         path => ["/app/cdh26550/logs/hadoop-student-namenode-nn1.log" ]
     #    path=>"/app/elk/logstash-2.1.1/test.log"
         start_position => "beginning"
      }
    }
    filter {
      multiline {
        pattern => "^d{4}-d{2}-d{2}"
        negate => true 
        what => "previous"
      }
      grok {
        match => { "message" => "(?<Date>d{4}-d{2}-d{2}s+d{2}.d{2}.d{2}.d{3})s+(?<Level>S+)s+(?<ClassName>S+)s+(?<Text>.*)"}
      }
      date {
        match => [ "Date", "yyyy-MM-dd HH:mm:ss,SSS" ]
      }
    }
    output {
      elasticsearch {
         hosts => "localhost"
         index =>"hadoop-%{+YYYY.MM.DD}" 
      }
      stdout { codec => rubydebug }
    }

    关于插件的使用,建议去官网查看相关的文档,非常详细,非常不错。

    logstash配置文件中有一点需要注意,在向elasticsearch传送数据的过程中,指定了一个index,这个名字可以理解为一个表,存储在elasticsearch中。配置成了按天生成,可以理解成按天划分的分区表。

    这个对后面kibana创建索引是对应的,理解了这个,在创建kibana的index时就容易多了。kibana创建index需要和这个保持一致,才能正确的收到数据,否则会有问题。

    kibana应该是根据前台过滤的条件,生成query 发送到elasticsearch,然后根据返回的值重绘页面。

    logstash的状态文件默认存储在用户的home目录,存储了扫描文件的offset等信息,

    sincedb_eaee9f121b74fda7013e1e9fee2e0a01是以.开头的隐藏文件,如下

    .sincedb_eaee9f121b74fda7013e1e9fee2e0a01

  • 相关阅读:
    HttpClient发送get,post接口请求
    java对象,引用的区别
    java基础知识面试题(41-95)
    java基础知识面试题(1-40)
    mysql增删改查sql语句
    java static成员变量方法和非static成员变量方法的区别
    zip和tgz以及exe的区别
    Java模拟网站登录02【转载】
    Java模拟登录系统抓取内容【转载】
    Java模拟登陆02【转载】
  • 原文地址:https://www.cnblogs.com/huaxiaoyao/p/5076405.html
Copyright © 2011-2022 走看看