我想将所有日志转发到graylog服务器以及我想维护我的实际Rails日志。我正在使用ruby gelf gem。 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
有了这个我在graylog服务器中得到了所有请求和响应。但是我没有发送像这些记录的explict日志记录
Rails.logger.info "#{params}"
所以我在application.rb
中添加了这段代码 gelf = GELF::Logger.new("graylog.example.in", 12219)
config.logger.extend(ActiveSupport::Logger.broadcast(gelf))
这适用于rails console.But不是从应用程序发送的
答案 0 :(得分:0)
使用log4r gem记录到多个输出目标非常简单 https://github.com/colbygk/log4r。要转发到远程graylog,您可能还需要gem'log4r-gelf'