Как изменить временную метку на UTC для журналов, которые контейнер-докер Fluent-Bit получает через стандартный ввод?

Контейнер My Fluent Bit Docker добавляет метку времени с местным временем в журналы, полученные через STDIN; в противном случае все журналы, полученные через rsyslog или journald, имеют формат времени UTC.

У меня есть базовый стек EFK, в котором я использую контейнеры Fluent Bit в качестве удаленных сборщиков, которые пересылают все журналы центральному сборщику FluentD, который отправляет все в Elasticsearch.

Я добавил фильтр в файл конфигурации Fluent Bit, где я экспериментировал со многими способами изменения метки времени, но безрезультатно. Похоже, я над этим слишком много думаю; изменить отметку времени должно быть намного проще.

Это все способы, которыми я пытался изменить метку времени с помощью фильтра fluent-bit.conf.

[FILTER]
    Name         record_modifier
    Match_Regex  ^(?!log.*).*$         ## only match the input received via stdin
    Tag          log.stdout            ## tag to mark input received via stdin 
    Add          sourcetype timestamp  ## tried to add timestamp from lua script 
    Parser       docker                ## tried to use docker parser for timestamp
    Time_key     utc                   ## tried to add timestamp as a key
    script       test.lua              ## sample lua script from fluentbit docs
    call         cb_print              ## call a function from within lua script

Что такое метод de facto для унификации всех отметок времени по всемирному координированному времени? Любая помощь или предложение приветствуются.


person Shōgun8    schedule 27.01.2020    source источник


Ответы (1)


Это работает так, что синтаксический анализатор докеров извлекает содержимое журнала и учитывает временную метку, определенную докером.

Одним из быстрых обходных путей было бы изменить ваш parsers.conf и убедиться, что синтаксический анализатор докеров не разрешает временную метку, таким образом Fluent Bit назначит вам текущее время в UTC.

person edsiper    schedule 28.01.2020