windows部署多实例filebeat监控相同路径下文件

一、前提:

现项目需求,在windows服务器上部署filebeat读取日志文件变更,发送到kafka。变态的是:要读取同一目录下日志文件,往两个不相关的kafka发送变更信息(注意这两个kafka完全不相关,不是同一集群)。怎么搞?网上查了半天资料,有说改filebeat.yml的试了半天没用。最后采用了最笨的方法,复制两份filebeat,采用不同配置。

二、配置

filebeat版本:8.11.3

注意两份filebeat完全放在两个不同的目录下,我这里目录分别为:D:\\jt\\filebeat、D:\\jt\\filebeatxinguan两个目录。

两个filebeat都需要改filebeat.yml、filebeat-server.xml

第一个filebeat配置:

filebeat.yml

复制代码
filebeat.inputs:
- type: filestream
  enabled: true
  paths:
    - D:\position\*.txt
  fields:
    code: haiheng  # 新增默认参数

output.kafka:
  hosts: ["kafka1:9092"]  
  topic: "topic_position"

filebeat-server.xml

复制代码
<service>
    <id>filebeat-server</id>
    <name>filebeat-server</name>
    <description>filebeat文件变更捕获</description>
    <!-- 可设置环境变量 -->
    <env name="HOME" value="%BASE%"/>
    <executable>%BASE%\filebeat.exe</executable>
    <arguments>-e -c filebeat.yml</arguments>
    <!-- <logmode>rotate</logmode> -->
    <logpath>%BASE%\logs</logpath>
    <log mode="roll-by-size-time">
      <sizeThreshold>10240</sizeThreshold>
      <pattern>yyyyMMdd</pattern>
      <autoRollAtTime>00:00:00</autoRollAtTime>
      <zipOlderThanNumDays>5</zipOlderThanNumDays>
      <zipDateFormat>yyyyMMdd</zipDateFormat>
    </log>
</service>
第二个filebeat配置:

filebeat.yml

复制代码
filebeat.inputs:
- type: filestream
  enabled: true
  paths:
    - D:\position\*.txt
  fields:
    code: haiheng  # 新增默认参数

output.kafka:
  hosts: ["kafka2:9092"]  
  topic: "topic_position"

filebeat-server.xml

复制代码
<service>
    <id>filebeat-server-xinguan</id>
    <name>filebeat-server-xinguan</name>
    <description>filebeat(新馆)文件变更捕获</description>
    <!-- 可设置环境变量 -->
    <env name="HOME" value="%BASE%"/>
    <executable>%BASE%\filebeat.exe</executable>
    <arguments>-e -c filebeat.yml</arguments>
    <!-- <logmode>rotate</logmode> -->
    <logpath>%BASE%\logs</logpath>
    <log mode="roll-by-size-time">
      <sizeThreshold>10240</sizeThreshold>
      <pattern>yyyyMMdd</pattern>
      <autoRollAtTime>00:00:00</autoRollAtTime>
      <zipOlderThanNumDays>5</zipOlderThanNumDays>
      <zipDateFormat>yyyyMMdd</zipDateFormat>
    </log>
</service>

改好配置,分别在对应的目录下进入cmd,执行:

复制代码
filebeat-server.exe install

看到***was installed successfully. 一般来说没啥问题。

接下来打开服务,找到对应的服务右键启动(有点糊,不好截图,手机拍的。。。):

三、查看进程

执行

复制代码
Get-Process | Where-Object { $_.ProcessName -eq "filebeat" }

可以看到两个进程(有点糊,不好截图,手机拍的。。。):

OK,完活儿。

相关推荐
非凡ghost1 小时前
可拓浏览器:给手机浏览器装上“外挂“!2W+拓展+AI搜索,玩出无限可能!
windows·智能手机·音视频·firefox
小神.Chen1 小时前
如何删除远程桌面的连接记录,一键清理mstsc远程桌面连接的记录
windows
John_ToDebug2 小时前
WebHostView 与 TabStrip 交互机制深度解析
c++·chrome·windows
L1624763 小时前
Win11 共享→Windows Server 访问故障总结(极简可复用)
开发语言·windows·php
love530love3 小时前
ComfyUI MediaPipe 终极填坑:解决 incompatible function arguments 报错,基于代理模式的猴子补丁升级版
人工智能·windows·comfyui·mediapipe·猴子补丁·monkey patch·python 3.12
今夕资源网3 小时前
Windows Terminal更舒适的命令行环境 仅11MB 支持并行运行WSLLinux子系统 github开源项目
windows·github·命令行·cmd·terminal
java_logo5 小时前
SiYuan 思源笔记 Docker 部署终极指南:Windows+Linux 双平台
windows·笔记·docker·思源笔记·思源笔记部署·docker部署思源笔记·思源笔记文档
测试员周周7 小时前
【AI测试系统】第1篇:LangGraph 实战:用 State Graph 搭建 AI测试流水线(4 步编排 + RAG 增强 + 完整代码)
linux·windows·python·功能测试·microsoft·单元测试·多轮对话
祖国的好青年7 小时前
VS Code 搭建 React Native 开发环境(Windows 实战指南)
android·windows·react native·react.js
love530love7 小时前
Python 3.12 解决 MediaPipe “no attribute ‘solutions‘” 终极方案:基于全版本硬核实测的避坑指南
开发语言·人工智能·windows·python·comfyui·mediapipe·solutions