Filebeat是一个开源的文件收集器,主要用于获取日志文件,并把它们发送到logstash或elasticsearch。filebeat不仅支持各版本的Linux系统(centos5.6除外),在Windows操作系统上也有很好的体验。
安装:
运行以下命令来安装Filebeat作为Windows服务,进入cmd控制台
cd ‘C:\Program Files\Filebeat’
C:\Program Files\Filebeat> .\install-service-filebeat.ps1
执行报错:
![cdbee766a7274eeec7b7c4dd60e91d5f0cebd98f](https://yqfile.alicdn.com/cdbee766a7274eeec7b7c4dd60e91d5f0cebd98f.png?x-oss-process=image/resize,w_1400/format,webp)
用以下命令执行:
PowerShell.exe -ExecutionPolicy UnRestricted -File .\install-service-filebeat.ps1
![d89eed91c6d173705ffa67dc5d19e13952dc6dbe](https://yqfile.alicdn.com/d89eed91c6d173705ffa67dc5d19e13952dc6dbe.png?x-oss-process=image/resize,w_1400/format,webp)
安装完成后,修改filebeat.yml配置文件,指定好上传日志文件的路径等参数
启动:
直接执行.exe程序即可
![3bbd35f03039fd63d85aaa2ed40561691142e747](https://yqfile.alicdn.com/3bbd35f03039fd63d85aaa2ed40561691142e747.png?x-oss-process=image/resize,w_1400/format,webp)
但是这里有一个问题,程序只能前台运行,一旦关闭cmd窗口,程序也会关闭,google了很多办法,start /b参数尝试也不行,后来搜到一个chp.exe程序,加在filebeat.exe前执行即可。
测试了最新版本5.0,以及1.3和1.2的filebeat版本,只有1.2版本可以执行
1.3和5.0出现输出报错:
failed to initialize console plugin as output: console output initialization failed with: GetFileInformationByHandle /dev/stdout: The handle is invalid.