Журналы сервера Rails по умолчанию вместе с json logsta sh logs - PullRequest
0 голосов
/ 22 января 2020

Я работаю над приложением Rails. Я установил logstash и с помощью gem logstash-logger я могу получить json вывод журналов в файл log/logstash_#{Rails.env}.log

Но наряду с этим я хочу иметь предыдущие журналы сервера по умолчанию тоже в отдельный файл log/{Rails.env}.log.

Возможно ли это сделать? Если да, то как?

1 Ответ

0 голосов
/ 22 января 2020

logstash-logger переопределяет Rails.logger в его Railt ie.

Попробуйте добавить инициализатор с:

Rails.logger.extend(
  ActiveSupport::Logger.broadcast(
    Logger.new(Rails.root.join("log/#{Rails.env}.log"))
  )
)

(это должно выполняться после инициализации logsta sh )

Для знакомого рельсового регистратора вы можете использовать что-то вроде

ActiveSupport::TaggedLogging.new(
  ActiveSupport::Logger.new(output_filename_here).tap{|l|
    l.formatter = Rails.application.config.log_formatter
  }
)

вместо Logger выше (добавьте вашу обычную конфигурацию регистрации).

...