Ruby on rails 如何在我的gem中向Rails记录器写入
我有一个我写的gem,我在rails应用程序中使用它 我想从我的gem中写入rails记录器,但很明显,那里不存在标准的rails记录器Ruby on rails 如何在我的gem中向Rails记录器写入,ruby-on-rails,ruby,ruby-on-rails-3,Ruby On Rails,Ruby,Ruby On Rails 3,我有一个我写的gem,我在rails应用程序中使用它 我想从我的gem中写入rails记录器,但很明显,那里不存在标准的rails记录器 >你应该能够使用 Rails。Logger-< /Cord>你可能想考虑让你的GEM使用可配置的记录器,即允许用户将 MyGeal.Logger-设置为他们想要的任何记录器。p> 您可以将其默认为只写入stdout的内容,在rails应用程序中,您可以在初始化器中设置MyGem.logger=rails.logger。在rails之外使用您的gem的人也可以
>你应该能够使用<代码> Rails。Logger-< /Cord>你可能想考虑让你的GEM使用可配置的记录器,即允许用户将<代码> MyGeal.Logger-<代码>设置为他们想要的任何记录器。p>
您可以将其默认为只写入stdout的内容,在rails应用程序中,您可以在初始化器中设置
MyGem.logger=rails.logger
。在rails之外使用您的gem的人也可以这样做。正如Frederick Cheung所说,您应该为您的gem使用命名空间记录器:MyGem.logger
然后将其设置为Railtie中的Rails记录器,以便您的gem在Rails内外都能很好地工作
module MyGem
class Railties < ::Rails::Railtie
initializer 'Rails logger' do
MyGem.logger = Rails.logger
end
end
end
模块MyGem
类别Railties<::Rails::Railtie
初始值设定项“Rails logger”do
MyGem.logger=Rails.logger
结束
结束
结束
Rails.logger.debug怎么样?或Rails.logger.info
等。?