我正在玩编写Sinatra应用程序。我想从配置块中记录一些东西。但是,在应用程序范围中运行,如果我在配置块中执行enable :logging
,则不包括Logger方法。在尊重我有效的任何日志配置时,是否有一些正常的方式来记录配置块的消息?
目前,我做类似以下操作:
class Blah < Sinatra::Base
configure do
enable :logging
@@log = Logger.new("/dev/stderr")
@@log.info "blah"
end
end
我宁愿使用enable :logger
行的一个配置的所有记录器,默认为一个设置。与以下相似的内容是理想的:
class Blah < Sinatra::Base
configure do
enable :logging
logger.info "blah"
end
end
截至1.3(我认为)Sinatra如您所描述的记录仪,但默认情况下将其写入STDOUT和STDERR,如果您想将其击中到文件中,将其添加到您的config.ru:
logger = Logger.new('log/awesome_app.log')
use Rack::CommonLogger, logger
run AwesomeApp