Как подключить несколько файлов в Fluentd - PullRequest
0 голосов
/ 20 мая 2018

Я установил регистратор 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 его рабочий запущен.Можно ли запустить несколько рабочих так, чтобы каждый из них отслеживал разные файлы, или любым другим способом сделать это.Может кто-нибудь указать мне хорошие ссылки / учебники.

Спасибо.

1 Ответ

0 голосов
/ 20 мая 2018

Вы можете использовать несколько тегов источника + совпадения.

Метка может помочь вам связать их.

Вот пример:

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