elastic笔记:两种日志处理流程整理

本文整理了两种日志处理流程,涉及filebeat、logstash和redis。第一种是logstash通过redis中转到elastic,第二种是filebeat直接到redis,再到logstash最后进入elastic。采集端logstash仅负责采集,正则匹配在后台logstash完成。filebeat作为轻量级替代,直接读取nginx日志存为json,避免了后端正则解析。
摘要由CSDN通过智能技术生成

elastic日志传输架构

日志的流向比较灵活,已经测试过的包括:
filebeat —> logstash
filebeat —> elastic
filebeat —> redis
logstash <—> redis
logstash —> elastic

logstash –>redis –> logstash –> elastic

早期利用的环境,由于跨不同网络,故中间使用redis作为中转。

采集端 logstash配置

前端不处理,直接导入redis。正则匹配放在后端进行。

input {
    file {
        path => "/var/log/nginx/prod_access.log"
        start_position => beginning
        codec => plain {
            charset => "UTF-8"
        }
        type => "prod_nginx"
    }
}

output {
    redis {
        host => "ip_address"   ##实际地址
        port => 37000
        data_type => "list"
        key => "prod_nginx"
    }

后台logstash 读取redis

input {

    file {
        path => "/data/path/to/log/prod_access.log"
        start_position => beginning
        codec => plain {
            charset => "UTF-8"
        }
        type => "nginx"
    }
}

filter {
    grok {
        patterns_dir => "/usr/local/logstash-5.1.1/nginx_pattern"
        match => {
            "message" => ["%{NGINXACCESS1}", "%{NGINXACCESS2}"]
        }
        overwrite => ["message"]
    }
    date {
        match => [ "timestamp", "dd/MMM/YYYY:HH:mm:ss Z" ]
    }
}

output {
  elasticsearch {
    hosts => "192.168.100.41:9200"
    manage_template => 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值