ELK Stack在多项目情况下filebeat与logstash的多文件配置

本文介绍了在多项目环境下如何配置filebeat和logstash,确保每个项目的日志数据能够正确地发送到对应的Kafka主题,并通过logstash写入到不同的Elasticsearch索引中。涉及的项目包括insurance和app,通过修改filebeat的配置文件以及logstash的多个pipeline配置实现数据区分。
摘要由CSDN通过智能技术生成

ELK Stack环境的相关搭建可以参考我的上一篇文章

这里配置中涉及到的域名在对应机器上要配置host,kafka的host
假设这里有两个项目:insurance项目,app项目

insurance项目生产环境filebeat配置filebeat.yml

filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /home/ad/logs/*.log
  # 向输出的每一条日志添加额外的信息,比如“level:debug”,方便后续对日志进行分组统计。
  # 默认情况下,会在输出信息的fields子目录下以指定的新增fields建立子目录,例如fields.level
  # 这个得意思就是会在es中多添加一个字段,格式为 "filelds":{"level":"debug"}
  fields:
    host: 192.168.0.94
    # 每个filebeat对应的机器的ip,区分日志机器来源
  multiline.pattern: ^\[
  multiline.negate: true
  multiline.match: after
  # 上面配置的意思是:不以[开头的行都合并到上一行的末尾
  #pattern:正则表达式
  #negate:true 或 false;默认是false,匹配pattern的行合并到上一行;true,不匹配pattern的行合并到上一行
  #match:after 或 before,合并到上一行的末尾或开头
#-------------------------- Kafka output ------------------------------
output.kafka:
  hosts: ["kafka1:9092","kafka2:9092","kafka3:9092"]
  topic: filebeat
  required_acks: 1
# 其他output都注释掉

app生产环境filebeat配置filebeat-app.yml

filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /home/ad/logs/logs-*.log
  # 向输出的每一条日志添加额外的信息,比如“level:debug”,方便后续对日志进行分组统计。
  # 默认情况下,会在输出信息的fields子目录下以指定的新增fields建立子目录,例如fields.level
  # 这个得意思就是会在es中多添加一个字段,格式为 "filelds":{"level":"debug"}
  fields:
    host: 10.10.99.108
    # 对应一个服务来命名
    app: app
    # 每个filebeat对应的机器的ip,区分日志机器来源
  multiline.pattern: ^20
  multiline.negate: 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值