ELK入门02—Logstash+Log4j2+ES

本文介绍了如何使用Logstash、Log4j2和Logstash-gelf将日志数据发送到Elasticsearch。首先,详细讲述了Logstash的安装与配置,接着展示了如何在Log4j2中配置JSON格式的日志输出。然后,通过Logstash-gelf解决日志传输的自动重连问题。最后,将日志数据通过Logstash输出到Elasticsearch,并在Elasticsearch中查看日志数据。
摘要由CSDN通过智能技术生成

1. 安装Logstash

先到官方下载地址选择对应版本的Logstash安装包,由于我们Elasticsearch是2.4.6版本,这里我们Logstash选择2.4.1版本。
下载完成后,直接解压
tar zxvf logstash-2.4.1.tar.gz
进入目录,创建一个配置文件夹,在其中新建一个配置文件

cd logstash-2.4.1
mkdir config
vim config/log4j2-tcp.conf

输入以下内容

input {
    tcp {
        mode => "server"
        host => "127.0.0.1"
        port => 4567
    }
}
filter {
    json {
        source => "message"
    }
}
output {
    stdout {
        codec => rubydebug
    }
}
Logstash处理数据的流程就像它的配置文件一样简单:input -> filter -> output
input配置数据来源,然后经过filter对数据进行过滤,最后输出到output配置的目的地
tcp、json、stdout是插件的名称,可以根据需要选择插件,甚至开发自己的插件,相当的灵活
执行命令 ./bin/logstash-plugin list 可以查看Logstash的插件列表
执行命令 ./bin/logstash-plugin install plugin-name 可以安装插件

配置好了,就可以直接运行了
./bin/logstash agent -f ./config/log4j2-tcp.conf

-f参数指定配置文件

当你看到输出 Pipeline main has been shutdown,表示logstash启动成功

2. log4j2

新建一个Log4j2的工程(请自行准备,简单的demo即可),配置文件log4j2.xml如下:

<?xml version="1.0" encoding="UTF-8"?>
<Configuration>
    <Properties>
        <Property name="LOG_PATTERN">{"logger": "%logger", "level": "%level", "msg": 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值