Не повезло, обновляя timestamp / time_key со временем входа в Fluentd - PullRequest
0 голосов
/ 07 ноября 2018

У меня есть свободный клиент, который перенаправляет журналы в logstash и, наконец, просматривается через Kibana. Я пробовал несколько конфигураций, чтобы обновить отметку времени для записи времени из файлов журнала. Однако не повезло в этом.

Вот мой раздел анализа файла конфигурации fluentd,

<parse>
  # @type none
  @type multiline
  format_firstline /^\[([\w]+)\s*\]\s*(\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2})/
  format1 /\[(?<loglevel>[\w]+)\s*\]\s*(?<logtime>\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2})\s*\[(?<thread>[^\]]*)\]\s*(?<class>[^ ]*)\s+-\s*(?<message>.*)/
  time_key logtime
  time_type string
  time_format %Y-%m-%d %H:%M:%S
  keep_time_key true
</parse>

Почему эта конфигурация не работает? Временная метка в кибане по-прежнему fluent_time, а не мое время входа.

Я также попытался добавить time_key в раздел 'inject' внутри 'match', как показано ниже, это тоже не сработало. Ссылка - Как добавить метку времени и ключ для поиска эластичности, используя свободный

<inject>
   time_key @logtime
   time_type string
   time_format %Y-%m-%d %H:%M:%S
</inject>

Кроме того, я также попробовал record_transformer, как указано ниже, но это тоже не сработало. Справочник - https://docs.fluentd.org/v0.12/articles/filter_record_transformer#renew_time_key-(optional,-string-type)

<filter pattern>
   @type record_transformer
   <record>
     renew_time_key ${record["logtime"]} 
   </record>
</filter> 

Я также пытался использовать и без '@' время входа в систему при каждой попытке. Я также попытался добавить компоненты time_key в раздел 'source', но это тоже не сработало.

Версия Fluentd и ruby ​​- fluentd-1.0.2 ruby ​​= "2.4.2"

На данный момент я в тупике. Что мне не хватает? Любое предложение приветствуется!

1 Ответ

0 голосов
/ 08 ноября 2018

Честно говоря, не уверен, как это решило проблему, но добавление нижеприведенного тега инъекции вместе с моими конфигурациями time_key в синтаксическом анализе, похоже, помогло. Временная метка основана на времени входа в Кибане.

<inject>
  time_key @timestamp
</inject>
...