支持多种数据获取机制,通过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. ModelSim6.2 설치에 관한(About the Installation problem of ModelSim 6.2)

    ModelSim 설치는 PC OS 따라서 호환성 문제가 발생한다. !!!!!! Vista OS에서는 ModelSim 설치가 안됨(호환성 문제) XP, Win7에서는 호환성 문제 없 ...

  2. python学习代码

    #!/bin/python #example 1.1 #applay def function(a,b): print(a,b) def example1(): apply(function, (&q ...

  3. 大数据(4) - HDFS常用的shell操作

    注意:这次使用的是第二部分安装的集群,不是高可用集群 为了方便,开发,必须写集群脚本,试想集群的机器是100台以上,而不是3台的情况.... 集群启动脚本 vim /home/admin/tools/ ...

  4. django 类通用视图详解

    view() :     该类为所有类视图的父类,处于最底层,仅仅只对请求参数做校验后,给特定请求方法做特定调用. 用法: url中定位到类方法:Aa.as_view() ——> View.as ...

  5. [已解决]pycharm报错:AttributeError: module 'pip' has no attribute 'main'

    > 更新pip后,pycharm更新模块报错,经过一番查找,现提供两种解决办法. 报错片段信息如下: AttributeError: module 'pip' has no attribute ...

  6. 从获取点击事件根元素谈 target和currentTarget

    事情由来: 写了一个点击事件,想获取根元素,想的直接用current就行了,因为之前就是这么用的,但是之前的点击元素是没子元素的,current就是根元素,但是这次点击元素内部有子元素,current ...

  7. Android 最新L版本,都更新什么东西了

    Android L版本重大修改 一:New Android Runtime (ART) 新的运行环境,4.4一下的版本ART是可选的运行环境,默认还是Dalvik.但是在Android L版本之后默认 ...

  8. caffe net 可视化工具,,层特征可视化

    1.只用网络在线结构绘制可视化网络模型 http://ethereon.github.io/netscope/#/editor 将对应的网络输入到里面,然后按shift+enter即可查看对应的网络结 ...

  9. iOS 创建多个button实现点击改变背景颜色

    工程中需要实现与UISegmentedControl效果相似的一排一共十个button,如下图.但是SegmentedControl修改不太方便,就用button替代, 循环创建十个button,点击 ...

  10. cocos2d-x - android 学习(集成NDK、配置开发环境)

    先来贴上一大神的博客:日月之明 --- http://www.cnblogs.com/lhming/tag/cocs2d-x/ 需要工具和软件包:Eclipse.Android SDK.Android ...