我已经设置了流利的记录器,我可以使用流畅的tail input
插件监控文件。流利的所有数据都会在稍后发布到elasticsearch
群集。以下是流利的配置文件:
<source>
@type tail
path /home/user/Documents/log_data.json
format json
tag myfile
</source>
<match *myfile*>
@type elasticsearch
hosts 192.168.48.118:9200
user <username>
password <password>
index_name fluentd
type_name fluentd
</match>
正如您所看到的,我正在使用log_data.json
监控tail
文件。我在同一目录log_user.json
中也有一个文件,我也想监视它并将其发布到elasticsearch
。为此,我考虑创建另一个<source>
&amp; <match>
具有不同的标记,但它开始显示错误。
如何监控fluentd
中的多个文件并将其发布到elasticsearch
。我看到当我们开始fluentd
时,它的工人就开始了。是否可以启动多个工作程序,以便它们中的每一个都监视不同的文件或任何其他方式。谁能指点我一些好的链接/教程。
感谢。
答案 0 :(得分:2)
您可以使用多个源+匹配标记。
Label可以帮助您绑定它们。
这是一个例子:
</source>
@label @mainstream
@type tail /home/user/Documents/log_data.json
format json
tag myfile
</source>
<label @mainstream>
<match **>
@type copy
<store>
@type elasticsearch
host elasticsearch
port 9200
logstash_format true
logstash_prefix fluentd
logstash_dateformat %Y%m%d
include_tag_key true
type_name access_log
tag_key @log_name
<buffer>
flush_mode interval
flush_interval 1s
retry_type exponential_backoff
flush_thread_count 2
retry_forever true
retry_max_interval 30
chunk_limit_size 2M
queue_limit_length 8
overflow_action block
</buffer>
</store>
</match>
</label>