方法1:一实例多topic:

https://discuss.elastic.co/t/filebeat-5-0-output-to-kafka-multiple-topics/67934

  1. The document_type per prospector becomes the event field type. That's why the filter won't match.
  2.  
  3. Instead of conditionals consider using the format string like:
  4.  
  5. filebeat.prospectors:
  6. - ...
  7. document_type: myapp_applog
  8. - ...
  9. document_type: myapp_applog_stats
  10. - ...
  11. document_type: myapp_elblog
  12.  
  13. output.kafka:
  14. topic: '%{[type]}' # use document_type to set topic
  15.  
  16. btw. the topic field in conditionals also supports format strings.
  1. cat filebeat.yml
  2.  
  3. output.kafka:
  4. enabled: true
  5. hosts: ["192.168.111.107:9092","192.168.111.108:9092","192.168.111.109:9092"]
  6. topic: '%{[type]}'
  7.  
  8. filebeat.prospectors:
  9. #------------------------------ Log prospector --------------------------------
  10. - paths:
  11. - /data/logs/financial-manager/server0.log
  12. fields:
  13. app_id: financial-manager
  14. multiline.pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}\s(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d\.'
  15. multiline.negate: true
  16. multiline.match: after
  17. document_type: log-log4j
  18.  
  19. - paths:
  20. - /data/logs/user-service/*.log
  21. fields:
  22. app_id: user-service
  23. multiline.pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}\s(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d\.'
  24. multiline.negate: true
  25. multiline.match: after
  26. document_type: log-iis
  27.  
  28. - paths:
  29. - /data/logs/financial-manager/access_log.log
  30. fields:
  31. app_id: financial-manager
  32. document_type: log-undertow

方法二:多filebeat实例,每个filebeat实例设置一个topic

运行多个filebeat实例,每个实例对应一个配置文件

  1. cat filebeat.yml
  2.  
  3. output.kafka:
  4. enabled: true
  5. hosts: ["192.168.111.107:9092","192.168.111.108:9092","192.168.111.109:9092"]
  6. topic: log-log4j
  7.  
  8. filebeat.prospectors:
  9. #------------------------------ Log prospector --------------------------------
  10. - paths:
  11. - /data/logs/subscribe-consumer/server0.log
  12. fields:
  13. app_id: subscribe-consumer
  14.  
  15. multiline.pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}\s(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d\.'
  16. multiline.negate: true
  17. multiline.match: after
  1. cat filebeat2.yml
  2.  
  3. output.kafka:
  4. enabled: true
  5. hosts: ["192.168.111.107:9092","192.168.111.108:9092","192.168.111.109:9092"]
  6. topic: log-tomcat
  7.  
  8. filebeat.prospectors:
  9. #------------------------------ Log prospector --------------------------------
  10. - paths:
  11. - /data/logs/subscribe-consumer/server0.log
  12. fields:
  13. app_id: subscribe-consumer
  14.  
  15. multiline.pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}\s(20|21|22|23|[0-1]\d):[0-5]\d:[0-5]\d\.'
  16. multiline.negate: true
  17. multiline.match: after

一个filebeat实例 设置多topic设置的更多相关文章

  1. 每天一个JavaScript实例-展示设置和获取CSS样式设置

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  2. 实例讲解Oracle数据库设置默认表空间问题

    实例讲解Oracle数据库设置默认表空间问题   实例讲解Oracle数据库设置默认表空间问题,阅读实例讲解Oracle数据库设置默认表空间问题,DBA们经常会遇到一个这样令人头疼的问题:不知道谁在O ...

  3. Filebeat 根据不同的日志设置不同的索引

    平时在物理机上使用 Filebeat 收集日志时,会编写多个 filebeat 配置文件然后启动多个 filebeat 进程来收集不同路径下的日志并设置相对应的索引.那么如果将所有的日志路径都写到一个 ...

  4. 试图删除 xx 和yy之间的关系。但是,关系的其中一个外键 (xx_yy.xxID) 无法设置为 null。

    错误原因:试图删除 UserInfoGroup 和 UserInfoGroupLinkLimitsOfAuthority 之间的关系.但是,关系的其中一个外键 (UserInfoGroupLinkLi ...

  5. ES 记录之如何创建一个索引映射,以及一些设置

    ElasticSearch 系列文章 1 ES 入门之一 安装ElasticSearcha 2 ES 记录之如何创建一个索引映射 3 ElasticSearch 学习记录之Text keyword 两 ...

  6. NPOI2.2.0.0实例详解(十)—设置EXCEL单元格【文本格式】 NPOI 单元格 格式设为文本 HSSFDataFormat

    NPOI2.2.0.0实例详解(十)—设置EXCEL单元格[文本格式] 2015年12月10日 09:55:17 阅读数:3150 using System; using System.Collect ...

  7. delphi开发实例:保存字体设置的方法

    http://blog.csdn.net/delphi308/article/details/9906147 delphi开发实例:保存字体设置的方法 2013-08-11 22:37 446人阅读  ...

  8. 【记录一个问题】android ndk下设置线程的亲缘性,总有两个核无法设置成功

    参考了这篇文章:https://blog.csdn.net/lanyzh0909/article/details/50404664 大体的代码如下: #include <pthread.h> ...

  9. Android 只开启一个Activity实例

    在一个Activity中,多次调用startActivity()来启动另一个Activity,要想只生成一个Activity实例,方法有两种. 方法一:设置起动模式 一个Activity有四种启动模式 ...

随机推荐

  1. Java序列化(Serialization)

    关于Java的序列化的文章在网上已经够多了,在这里写关于Java序列化的文章是对自己关于这方面的的一种总结,结合以前的开发经验与网上的资料,写了这篇文章,对自己是有着巩固记忆的作用,也希望能够对大家有 ...

  2. ubuntu18.04下挂载网络文件系统失败【学习笔记】

    作者:庄泽彬(欢迎转载,请注明作者) PC:    ubuntu18.04 说明:  之前ubuntu16.04下搭建的环境,开发板挂载网络文件系统是ok的,但是换到ubuntu18.04在启动的时候 ...

  3. SqlBulkCopy 批量导入数据 转换表字段类型

    在使用SqlBulkCopy导入数据时,要有一个跟数据库里面同样的DataTable 要赋值表名 要求每个列跟数据库中列同名,并且列的类型要赋值跟数据库中列的类型对应的NET类型 要求数据库中为Nul ...

  4. POJ 1386 Play on Words(欧拉路)

    http://poj.org/problem?id=1386 题意: 给出多个单词,只有单词首字母与上一个单子的末尾字母相同时可以连接,判断所有字母是否可以全部连接在一起. 思路: 判断是否存在欧拉道 ...

  5. c++ 反转容器的元素顺序(reverse)

    #include <vector> #include <iostream> #include <iterator> #include <algorithm&g ...

  6. postgresql中终止正在执行的SQL语句

    在Linux系统中可以使用kill [pid]的方式强制删除进程,但对于修改数据表的语句来说,这样可能导致postgresql进入recovery mode,这样会导致锁表. Postgresql的运 ...

  7. Win32 基本文件读写操作

    https://www.cnblogs.com/Clingingboy/archive/2011/05/10/2042645.html

  8. Http协议中Cookie详细介绍

    Cookie总是保存在客户端中,按在客户端中的存储位置,可分为内存Cookie和硬盘Cookie.内存Cookie由浏览器维护,保存在内存中,浏览器关闭后就消失了,其存在时间是短暂的.硬盘Cookie ...

  9. createjs记录坑

    1.使用preloadjs加载资源: manifest = [ {src: "block.png", id: "ground"}, {src: "re ...

  10. WCF 学习文摘

    WCF:Windows Communication Foundation 1.概念 WCF是一个用于搭建面向服务的框架,可以通过它从一个服务终端以异步消息的方式发送数据到其他服务: WCF是一个基于消 ...