Filebeat无法在Windows中启动

时间:2018-03-24 17:40:05

标签: elasticsearch filebeat

面对在Windows 10中启动Filebeat的问题,我已经使用位于我的本地计算机“E:”驱动器中的elasticsearch日志文件夹修改了filebeat prospector日志路径,我在更正后验证了filebeat.yml的格式但是在启动时仍然低于错误。

Filebeat版本: 6.2.3

Windows版本: 64位

Filebeat.yml(经过验证的yml格式)

include ("../PHPMailer/sendEmail.php");

if($mail->Send()) {
    echo "ok";

} else {
    echo "fail";
}

Filebeat启动日志:

filebeat.prospectors:
-
    type: log
    enabled: true
    paths:
        - 'E:\Research\ELK\elasticsearch-6.2.3\logs\*.log'
filebeat.config.modules:
    path: '${path.config}/modules.d/*.yml'
    reload.enabled: false
setup.template.settings:
    index.number_of_shards: 3
setup.kibana:
    host: 'localhost:5601'
output.elasticsearch:
    hosts:
        - 'localhost:9200'
    username: elastic
    password: elastic

3 个答案:

答案 0 :(得分:1)

检查此路径${path.config}/modules.d/ 或者通过命令行“filebeat.exe modules list”检查,如果某些模块处于活动状态,则不能与windows一起使用。

例如, system.yml (模块)不能在普通窗口上运行,因为没有系统日志。但默认情况下系统模块处于活动状态。所以你必须先禁用它。 如果我启用它,我会运行完全相同的错误消息,并且文件停止。

答案 1 :(得分:0)

使用以下格式重写yml的第一部分:

filebeat.prospectors:
- type: log
  enabled: true
  paths:
    - /var/log/*.log
    #- c:\programdata\elasticsearch\logs\*

删除空的新行并注意缩进。

答案 2 :(得分:0)

我知道这个话题有点老了,不过从发布此书(2019年6月)时所获得的观点来看,我认为添加更多信息是安全的,因为这对于变得很容易修复。

在解释所做的工作之前,请允许我说我在Linux系统上遇到了这个问题,但是所有平台上的问题/解决方案都应该相同。

更新 logback-spring.xml 并重新启动服务后,它一直拒绝吐出以下错误:

 ERROR   instance/beat.go:824    Exiting: Can only start an input when all related states are finished: {Id:163850-64780 Finished:false Fileinfo:0xc42016c1a0 Source:/some/path/here/error.log Offset:0 Timestamp:2019-06-13 09:15:35.481163602 -0400 EDT m=+0.107516982 TTL:-1ns Type:log Meta:map[] FileStateOS:163850-64780}

我的解决方案是简单地编辑 /etc/filebeat/filebeat.yml 并评论尽可能多的内容(回到几乎原始的/基本的配置)。

这样做之后,重新启动filebeat就可以了,这最终是一个重复的路径条目,其中另一个文件位于系统中某个位置,可能位于模块下。