支持多种数据获取机制,通过TCP/UDP协议、文件、syslog、windows、EventLogs及STDIN等;获取到数据口,支持对数据进行过滤、修改等操作
JRuby语言研发,工作在JVM中
    agent/server
Logstash安装
yum install logstash-5.2.2.rpm
配置logstash的环境变量:
vim /etc/profile.d/logstash.sh加入:
export PATH=$PATH:/opt/logstash/bin
logstash的配置文件目录:
/etc/logstash/conf.d/下的以.conf结尾的文件
简单的输入输出语法配置:
vim /etc/logstash/conf.d/sample.conf
input {
        stdin {}
}

output {
        stdout {
                codec => rubydebug
        }
}
语法检测:
logstash -f /etc/logstash/conf.d/sample.conf --configtes
启动logstash:
logstash -f /etc/logstash/conf.d/sample.conf

Logstash配置框架:
    input{
        ...
    }
    filter{
        ...
    }
    output{
        ...
    }
四种类型的插件:
    input,filter,codec,output
数据类型:
    Array:[item1,item2,...]
    Boolean:true,false
    Bytes:
    Codec:编码
    Hash:key => value
    Number:
    Password:
    Path:文件系统路径
    String:字符串

字段引用:[]

条件判断:
    ==,!=,<,<=,>,>=
    =~,!~
    in,not in
    and,or
    ()
    
Logstash的工作流程:input | filter | output,如无需对数据进行额外的处理,filter可以省略
高度插件化:input,codec,filter,output
input插件:
    File:从指定的文件中读取事件流;其工作特性类似于tail -f,第一次读取的时候是从文件的第一行开始的;
            使用FileWatch(Linux内核功能)来监视文件是否发生变化(Ruby Gem库支持以监听多个文件)
            每个文件上一次读取的位置保存在.sincedb数据库中
            .sincedb:记录了每个被监听的文件的inode,major,number,minor number,pos;

Logstash的时间戳问题:
请参考该贴:http://blog.csdn.net/shan1369678/article/details/51375537
            
Logstash的插件:
    input {
        file {
        path => ["/usr/local/tomcat/logs/catalina.out"]
        type => "tomcat"
        start_position => "beginning"
        }
    }
    
    output {
        stadout {
        codec => rubydebug
        }    
    }

redis插件:
    从redis读取数据,支持redis channel和list两种方式;
    redis查看数据是否写入的方法:LLEN logstash-tomcat
    查看写入数据的内容:LINDEX logstash-tomcat 1

elasticsearch插件kopf的安装
下载地址:https://github.com/lmenezes/elasticsearch-kopf/releases
下载版本:v2.1.2
安装:
/usr/share/elasticsearch/bin/plugin install file:///opt/elasticsearch-kopf-2.1.2.zip
注意这里要修改elastisearch的监听地址,因为默认是监听在127.0.0.1上的
然后即可通过浏览器访问elasticsearch集群:http://IP:9200/_plugin/kopf

kibana4.6.2安装:
yum install -y kibana-4.6.2-x86_64.rpm
配置文件位置:/opt/kibana/config/kibana.yml
启动kibana:systemctl start kibana

filter插件:
    用于在将event通过output发出之前对其实现某些处理功能;
    grok,用于分析并结构化文本数据;目前是logstash中将非结构化日志数据转化为结构化的可查询数据的不二选择。
    syslog,apache,nginx
    模式定义位置:/opt/logstash/vendor/bundle/jruby/1.9/gems/logstash-patterns-core-2.0.5/patterns/grok-patterns
    语法格式:
    %{SYNTAX:SEMANTIC}
        SYNTAX:预定义模式名称;
        SEMANTIC:匹配到的文本的自定义标识符;

output插件:
    stdout {}
    elasticsearch {
        ...
    }

Logstash简介的更多相关文章

  1. logstash快速入门实战指南-Logstash简介

    作者其他ELK快速入门系列文章 Elasticsearch从入门到精通 Kibana从入门到精通 Logstash是一个具有实时流水线功能的开源数据收集引擎.Logstash可以动态统一来自不同来源的 ...

  2. elasticsearch查询及logstash简介

    Query DSL: request body: 分成两类: query dsl:执行full-text查询时,基于相关度来评判其匹配结果: 查询执行过程复杂,且不会被缓存: filter dsl:执 ...

  3. ELK学习实验010:Logstash简介

    Logstash是具有实时流水线功能的开源数据收集引擎.Logstash可以动态统一来自不同来源的数据,并将数据规范化为您选择的目标.清除所有数据并使其民主化,以用于各种高级下游分析和可视化用例. 虽 ...

  4. ELK简介

    什么是ELK ELK是ElasticSearch,LogStash以及Kibana三个产品的首字母缩写.是可以和商业产品 Splunk 相媲美开源项目. 2013 年,Logstash 被 Elast ...

  5. Elastic Stack初篇-Logstash

     一.Logstash简介      Logstash是一个开源数据收集引擎,具有实时管道功能.Logstash可以动态地将来自不同数据源的数据统一起来,并将数据标准化到你所选择的目的地. 二.Log ...

  6. Logstash在Linux上安装部署

    Logstash 简介: Logstash 是一个实时数据收集引擎,可收集各类型数据并对其进行分析,过滤和归纳.按照自己条件分析过滤出符合数据导入到可视化界面.它可以实现多样化的数据源数据全量或增量传 ...

  7. [转] ELK 之 Logstash

    [From] https://blog.csdn.net/iguyue/article/details/77006201 ELK 之 Logstash 简介: ELK 之 LogstashLogsta ...

  8. 第三篇:Logstash 安装配置

    Logstash 简介: Logstash 是一个实时数据收集引擎,可收集各类型数据并对其进行分析,过滤和归纳.按照自己条件分析过滤出符合数据导入到可视化界面.Logstash 建议使用java1.8 ...

  9. ElasticStack之Logstash安装

    服务器环境 操作系统 Host:port node 1 CentOS 7.2.1511 11.1.11.127:9200 node1 2 CentOS 7.2.1511 11.1.11.128:920 ...

随机推荐

  1. Mat::operator =

    Provides matrix assignment operators. C++: Mat& Mat::operator=(const Mat& m) C++: Mat& M ...

  2. Unity3D - 使用TexturePacker打包图集以及NGUI对旋转sprites的支持

    作者:EnigmaJJ 博客地址:http://www.cnblogs.com/twjcnblog/ 在Unity中使用NGUI时,为了减少draw call,我们会将美术用到的小图打成一张图集,如图 ...

  3. redhat5.8下oracle11g启动失败

    # redhat5.8下oracle11g启动失败 ### 日志文件路径-----------------------------tail -f /u01/app/oracle/product/11. ...

  4. HUAWEI HiAI常见FAQ小贴士

    8月7日,HUAWEI HiAI系统架构师在CSDN平台为广大开发者进行了以“APP进阶实战:最快10分钟接入HUAWEI HiAI”主题的直播,迎来600多名开发者在线上观看. ​ 直播中,讲师详细 ...

  5. win7下怎么卸载jdk

    在安装了java jdk之后,会有两个程序,如果不仔细卸载的话,就少卸载一个而不能完全卸载,下面看看在win7下怎么卸载jdk. win7下怎么卸载jdk步骤:     第一步:点击“开始”,再点击“ ...

  6. Spring MVC复选框

    以下示例显示如何在使用Spring Web MVC框架的表单中使用复选框(Checkbox).首先使用Eclipse IDE来创建一个WEB工程,并按照以下步骤使用Spring Web Framewo ...

  7. weblogic 8.1教程之部署(三)

    在 weblogic 都配置好了之后.就能够部署项目了. 部署项目的时候,能够大体分为两个步骤: 1,创建缓冲池: 2,配置数据源. 先启动 weblogicserver.进入weblogic 的主页 ...

  8. 数据库 : Mysql - 日常应用

    #登录MYSQL数据库 MYSQL -u root -p #显示所有数据库 SHOW databases; #显示当前数据库与应用程序间进行了多少条连接 SHOW processlist; #使用某一 ...

  9. 1249 Problem Q

    问题 Q: 比大小 时间限制: 1 Sec  内存限制: 128 MB 提交: 159  解决: 66 [提交][状态][讨论版] 题目描述 给你两个很大的数,你能不能判断出他们两个数的大小呢? 比如 ...

  10. 如何通过PHP判断年份是否是闰年----两种方法

    1.定义:闰年是对4取余为0,对100取余不等于0,对400取余等于0的年是闰年. 2.代码: 第一种方法:直接函数判断 $day = date('Y'); if ($day%4==0&&am ...