我在一台服务器上运行了多个应用程序。我想使用filebeat将每个日志的日志发送到logstash。但是,为了配置管理,我希望能够为每个应用程序单独添加配置文件。
Logstash从conf.d
目录中读取其配置。我的理解是,可以在那里添加文件,并在logstash加载时将它们组合在一起。 filebeat有类似的功能吗?或者我是不是每台服务器维护一个filebeat.yml
文件?
我使用elastic's repositories中的yum / rpm软件包在CentOS 7上运行filebeat和logstash作为服务。 Filebeat是版本1.3.1,logstash是版本2.4.0。
答案 0 :(得分:16)
是的,Filebeat具有conf.d
类似功能,但默认情况下未启用。 Filebeat将在声明的目录中查找包含prospector配置的其他*.yml
文件。配置因Filebeat主要版本而异。
您在filebeat.yml文件的filebeat.config.prospectors
部分指定了path
选项。
filebeat.config.prospectors:
enabled: true
path: /etc/filebeat/conf.d/*.yml
/etc/filebeat/conf.d/someapp.yml
请注意,此文件 不包含filebeat.prospectors
,就像在早期版本中一样。
- paths:
- /var/log/someapp/stdout.log
fields:
app: someapp
使用config_dir
选项声明主filebeat.yml内的目录。
filebeat:
config_dir: /etc/filebeat/conf.d
/etc/filebeat/conf.d/someapp.yml
filebeat:
prospectors:
- paths:
- /var/log/someapp/stdout.log
fields:
app: someapp