0


利用logstash/filebeat/插件,将graylog日志传输到kafka中

1.graylog配置输出

在System-outputs,选择GELF Output,填写如下内容,其它选项默认
在这里插入图片描述
在要输出的Stream中,选择Manage Outputs
在这里插入图片描述
选择GELF Output,右边选择刚才创建好的test。
在这里插入图片描述

2.安装logstash,作为中间临时的搬运工

下载logstash,最新版就可以。

https://www.elastic.co/cn/downloads/logstash/

在这里插入图片描述
上传到服务器,编写test.conf配置文件,内容如下

input{
 gelf {
    port =>12201
    codec => json
    host=>"0.0.0.0"}}

output{
  kafka{
        bootstrap_servers =>["kafkaserver1:9092,kafkaserver2:9092,kafkaserver3:9092"]
        topic_id =>"test-kafka"
        codec =>"json"}}

运行logstash,输入以下命令

bin/logstash -f test.conf

3.kafka

前提:安装好kafka集群,
创建topic

bin/kafka-topics.sh --bootstrap-server kafkaserver1:9092,kafkaserver2:9092,kafkaserver3:9092 --create--topic test-kafka

监听topic

bin/kafka-console-consumer.sh --bootstrap-server kafkaserver1:9092,kafkaserver2:9092,kafkaserver3:9092 --topic test-kafka

最终消息传递到kafka上
在这里插入图片描述

filebeat配置

也可以使用filebeat将日志转发到kafka中,原理一样

- type: syslog
  enabled: true
  protocol.udp:
    host: "0.0.0.0:12201" 端口与graylog-outputs一致
  fields:
    logResource: "testkafka"#这些都是附加的标签
  fields_under_root: true#将标签放到顶头,不然在message字段里

output.kafka:
  enabled: true
  hosts: ["kafkaserver1:9092","kafkaserver2:9092","kafkaserver3:9092"]
  topic: "%{[logResource]}"
  required_acks: 1

3.graylog插件

插件下载:

https://codeload.github.com/asnowfox/graylog-kafka-output/zip/refs/heads/master
使用:mvn package编译成jar包,放入到plugin目录下,重启graylog
标签: graylog kafka 分布式

本文转载自: https://blog.csdn.net/weixin_42478365/article/details/132239983
版权归原作者 冯·诺依曼 所有, 如有侵权,请联系我们删除。

“利用logstash/filebeat/插件,将graylog日志传输到kafka中”的评论:

还没有评论