两份简单的logstash配置

input{http{port=>7474}}
filter{

    grok{
        match =>{
            #"message" => "%{COMBINEDAPACHELOG}"
            "message" => ‘%{IPORHOST:clientip} %{USER:ident} %{USER:auth} \[%{HTTPDATE:[@metadata][timestamp]}\] "(?:%{WORD:verb} %{NOTSPACE:request}(?: HTTP/%{NUMBER:httpversion})?|%{DATA:rawrequest})" %{NUMBER:response} (?:%{NUMBER:bytes}|-) %{QS:referrer} %{QS:agent}‘
        }
    }
   # mutate{
   #     copy => { "@timestamp" => "read_timestamp"}
   # }

    ruby {
        code => "event.set(‘@read_timestamp‘,event.get(‘@timestamp‘))"
    }

    # 20/May/2015:21:05:15 +0000
    #date{
    #    match => ["timestamp","dd/MMM/yyyy:HH:mm:ss Z"]
    #}

    date{
        match => ["[@metadata][timestamp]","dd/MMM/yyyy:HH:mm:ss Z"]
    }

    geoip{
        source => "clientip"
        fields => ["latitude","longitude","city_name","country_name","region_name"]
    }

    useragent{
        source => "agent"
        target => "useragent"
    }

    mutate{
        convert => { "bytes" => "integer" }
    }

    mutate{
        remove_field =>["headers","message"]
    }

}

output{stdout{codec=>rubydebug}}

apache_logstash.conf

input {
  stdin { }
}

filter {
  grok {
    match => {
      "message" => ‘%{IPORHOST:clientip} %{USER:ident} %{USER:auth} \[%{HTTPDATE:timestamp}\] "%{WORD:verb} %{DATA:request} HTTP/%{NUMBER:httpversion}" %{NUMBER:response:int} (?:-|%{NUMBER:bytes:int}) %{QS:referrer} %{QS:agent}‘
    }
  }

  date {
    match => [ "timestamp", "dd/MMM/YYYY:HH:mm:ss Z" ]
    locale => en
  }

  geoip {
    source => "clientip"
  }

  useragent {
    source => "agent"
    target => "useragent"
  }
}

output {
  stdout {
    codec => dots {}
  }

  elasticsearch {
    index => "apache_elastic_example"
    template => "./apache_template.json"
    template_name => "apache_elastic_example"
    template_overwrite => true
  }
}

原文地址:https://www.cnblogs.com/luozhiyun/p/9375148.html

时间: 2024-10-15 02:02:19

两份简单的logstash配置的相关文章

ELK简单安装与配置

Elasticsearch是一个分布式可扩展的实时搜索和分析引擎,它能帮助你搜索.分析和浏览数据:它是一个建立在全文搜索引擎 Apache Lucene(TM) 基础上的搜索引擎,可以说Lucene是当今最先进,最高效的全功能开源搜索引擎框架. 一.环境介绍 1.架构介绍 ELK是C/S架构的,所以这里列出server和client server : centos 6.6 x86_64 IP: 10.0.90.24 client : centos 6.6 x86_64 IP: 10.0.90.2

logstash 配置 logstash-forwarder (前名称:lumberjack)

logstash-forwarder(曾名lumberjack)是一个用go语言写的日志发送端, 主要是为一些机器性能不足,有性能强迫症的患者准备的. 主要功能: 通过配置的信任关系,把被监控机器的日志加密后传送给logstash, 减少被收集日志机器的性能消耗,相当于日志的计算换一台机器: 仅支持加密连接: 支持监控多个目录的多个文件,每个监控组增加tag属性,方便logstash后续分拣: 性能相当强劲: 多个下游logstash,一个fail/connection broken,自动更换:

一个简单的零配置命令行HTTP服务器

http-server 是一个简单的零配置命令行HTTP服务器, 基于 nodeJs. 如果你不想重复的写 nodeJs 的 web-server.js, 则可以使用这个. 安装 (全局安装加 -g) : npm install http-server Windows 下使用: 在站点目录下开启命令行输入 http-server 访问: http://localhost:8080 or http://127.0.0.1:8080  使用于package.json "scripts":

简单的jdk配置

简单的jdk配置 1.下载jdk文件 第一步:首先去官网下载jdk文件,在这里我举的例子是jdk1.8版本 2.开始配置环境变量 第一步:点击计算机右键,最下面有个属性然后会出现下面这个页面 第二步:点击高级设置就可以去设置环境变量里面啦 第三步:单击环境变量 第四步:新建一个环境变量取名为JAVA_HOME(这个是必须的) 第五步:找到你下载好jdk那个文件的根目录中,也就是你把jdk文件保存到哪里的那个地方 第六步:复制jdk根目录到新建的环境变量里 第七步:跟前面的方法一样创建新的一个环境

【logstash】 - logstash配置语言基础

在网上很难找到logstash中文资料,ruby也没了解过,看官方文档太吃力,而我的要求也不高,使用loggstash可以提取想要的字段即可. 以下内容纯粹想当然的理解: logstash配置格式 #官方文档:http://www.logstash.net/docs/1.4.2/ input {   ...#读取数据,logstash已提供非常多的插件,比如可以从file.redis.syslog等读取数据 } filter {   ...#想要从不规则的日志中提取关注的数据,就需要在这里处理.

http-server:一个简单的零配置命令行的http服务器

首先简介一下http-server: http-server是一个简单的零配置命令行http服务器,他对于生产使用来说足够强大,他是简单和可删节足以用于测试,足够简单易用,而且可用于本地开发 1.首先你要安装node 2.然后可以通过npm来全局安装 sudo cnpm install http-server -g 前几篇博客我也写到过cnpm用法,所以这里我用到了cnpm,安装起来很快 安装成功后 3.开始使用 用cd跳转到你想要的文件夹下面 我使用了test文件夹 cd /path/test

一个简单的零配置命令行HTTP服务器 - http-server (nodeJs)

http-server 是一个简单的零配置命令行HTTP服务器, 基于 nodeJs. 如果你不想重复的写 nodeJs 的 web-server.js, 则可以使用这个. 安装 (全局安装加 -g) : npm install http-server 使用 : 在站点目录下开启命令行输入 node http-server 使用于package.json "scripts": { "start": "http-server -a 0.0.0.0 -p 80

简单的空间配置器实现

这一节用到的小知识: 1.ptrdirr_t: ptrdiff_t是C/C++标准库中定义的一个与机器相关的数据类型.ptrdiff_t类型变量通常用来保存两个指针减法操作的结果.ptrdiff_t定义在stddef.h(cstddef)这个文件内.ptrdiff_t通常被定义为long int类型. 2.non-trivial constructor/destructor: 意思是"非默认构造函数/析构函数",这里的non-trivial指不是编译器自动生成的(函数)维基百科 我认为

阿里微服务专家手写Spring Boot 实现一个简单的自动配置模块

为了更好的理解 Spring Boot 的 自动配置和工作原理,我们自己来实现一个简单的自动配置模块. 假设,现在项目需要一个功能,需要自动记录项目发布者的相关信息,我们如何通过 Spring Boot 的自动配置,更好的实现功能呢? 实战的开端 – Maven搭建 先创建一个Maven项目,我来手动配置下 POM 文件. 参数的配置 - 属性参数类 首先,我们定义一个自定义前缀,叫做 custom 吧.之前说到,这里的配置参数,可以通过 application.properties 中直接设置