Каков наилучший способ настройки функций ведения журнала в проекте rails? Я ищу что-то вроде Log4J, который доступен для Rails. Я нашел log4r, и он конфликтует со встроенным классом Logger, а также попробовал гем 'Logging', и у него возникли некоторые проблемы при настройке журнала аудита. Пожалуйста, дайте мне знать ваши предложения по этой теме, так как я новичок в этом вопросе.
Я использовал приведенный ниже блок кода в logging.rb и включил в environment.rb
Но я получаю сообщение об ошибке при возвращении ключевого слова, так как оно устарело на рельсах 2.8
конфиг / environment.rb
# Logging
require File.join(File.dirname(__FILE__), 'logging')
Rails::Initializer.run do |config|
конфиг / logging.rb
require 'logging'
# Logging.init is required to avoid
# unknown level was given 'info' (ArgumentError)
# or
# uninitialized constant Logging::MAX_LEVEL_LENGTH (NameError)
# when an Appender or Layout is created BEFORE any Logger is instantiated:
Logging.init :debug, :info, :warn, :error, :fatal
layout = Logging::Layouts::Pattern.new :pattern => "[%d] [%-5l] %m\n"
# Default logfile, history kept for 10 days
default_appender = Logging::Appenders::RollingFile.new 'default', \
:filename => 'log/default.log', :age => 'daily', :keep => 10, :safe => true, :layout => layout
# Audit logfile, history kept forever
audit_appender = Logging::Appenders::RollingFile.new 'audit', \
:filename => 'log/audit.log', :age => 'daily', :safe => true, :layout => layout
# Production logfile, history kept forever
prod_appender = Logging::Appenders::RollingFile.new 'prod', \
:filename => 'log/production.log', :age => 'daily', :safe => true, :layout => layout
DEFAULT_LOGGER = returning Logging::Logger['server'] do |l|
l.add_appenders default_appender
end