FileBeat+kafka进行日志实时传输

Posted 笨小孩撸代码

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FileBeat+kafka进行日志实时传输相关的知识,希望对你有一定的参考价值。

前面我们聊到了filebeat+ELK来解决日志的问题,今天我们来聊聊filebeat+kafka解决日志实时传输的问题,首先filebeat只是一个简单的日志接受工具和日志发送工具,我们可以用filebeat部署到logserver上面,在用kafka做消息管道将日志传输出去。今天我们主要讲讲安装 
 
kafka和filebeat的配置我们就不讲解了 
如果还是不会的同学可以参考之前的文章

1、配置 
我们直接将filebeat的配置吧,其实配置很简单,你只需要配置input和output就可以了,我们这里kafka采用单机模式, 
- input_type: log 
# Paths that should be crawled and fetched. Glob based paths. 
paths: 
- /opt/log/*.log

output.kafka: 
enabled: true 
hosts: [“192.168.18.160:9091”] 
topic: test

2、启动 filebeat 
filebeat -C filebeat_kafka.yml 
3、启动kafka和comsumer 
./kafka-console-consumer.sh –zookeeper 192.168.18.160:2181 –topic test –from-beginning 
4、测试 
往日志文件追加内容。从kafka的consumer端可以查看到消息

5、日志格式 
日志消息的类型 
@timestamp:消息发送时间 
beat:Filebeat运行主机和版本信息 
input_type:input类型 
message:原始日志内容 
offset:此条消息在原始日志文件中的offset 
source:日志文件


以上是关于FileBeat+kafka进行日志实时传输的主要内容,如果未能解决你的问题,请参考以下文章

日志实时收集之FileBeat+Kafka

filebeat到kafka日志无法传输

ELK+Filebeat+Kafka+Zookeeper构建大数据日志分析平台三

storm项目架构分析

ETL工具之日志采集filebeat+logstash

使用redis,kafka做为缓存来收集日志