json - 如何在 fluentd 中拖尾多个文件

标签 json elasticsearch logging fluentd

我已经设置了 fluentd 记录器,我可以使用 fluentd 监控文件 tail input插入。 fluentd 收到的所有数据随后发布到 elasticsearch簇。以下是 fluentd 的配置文件:

<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> & <match>使用不同的标签,但它开始显示错误。

如何监控 fluentd 中的多个文件并将它们发布到elasticsearch .我知道我们什么时候开始fluentd它的工作人员已启动。是否可以启动多个工作人员,以便他们每个人都在监视不同的文件,或者以任何其他方式进行。谁能给我指出一些好的链接/教程。

谢谢。

最佳答案

您可以使用多个来源+匹配标签。

标签可以帮助您绑定(bind)它们。

举个例子:

<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>

关于json - 如何在 fluentd 中拖尾多个文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50435228/

相关文章:

json - 在 Golang 中将表单值分配给结构

jquery - 将更多对象数组添加到本地存储键中

javascript - 如何向 ElasticSearch 添加新字段?

elasticsearch - Elasticsearch ignore_above 设置使用

java - 密码更改后ElasticSearch连接状态

java.io.FileNotFoundException some_path XXXXX(文件名、目录名或卷标语法不正确)

javascript - Pandas DataFrame 到 Bootstrap 表

sql - PostgreSQL select * 其中列包含数组值

regex - 使用正则表达式解析 Apache 日志文件

java - 'WEB-INF/classes/logging.properties' 中指定的 FileHandler 被额外记录污染