Журнал Rails Broadcasting в Graylog не работает
Я хочу переслать все журналы на сервер graylog, а также хочу сохранить свой фактический журнал Rails. Я использую рубиновый гель-гем. https://github.com/Graylog2/gelf-rb и lograge. В моем application.rb у меня есть код
if Rails.env.in? ['production', 'preproduction', 'staging']
config.lograge.keep_original_rails_log = true
config.lograge.logger = GELF::Logger.new(graylog.example.in", 12219)
end
С этим я получаю все запросы и ответы на сервере серого журнала. Но я не отправлял запись событий
Rails.logger.info "#{params}"
Поэтому я добавил этот код в application.rb
gelf = GELF::Logger.new("graylog.example.in", 12219)
config.logger.extend(ActiveSupport::Logger.broadcast(gelf))
Это работает с консоли рельсов. Но не отправляется из приложения
1 ответ
Записаться в несколько мест назначения довольно просто, используя gem log4r https://github.com/colbygk/log4r. Для пересылки на удаленный серый журнал вам также может понадобиться gem 'log4r-gelf'