0

カスタムロガーを作ろうとしています。ロガーを environment.rb で定義し、それを他のファイルで使用できることを他の場所で読みました。

私はenvironment.rbにあります:

# Load the rails application
require File.expand_path('../application', __FILE__)

my_logger = Logger.new("#{Rails.root}/log/my.log")
my_logger.formatter = Logger::Formatter.new


# Initialize the rails application
MyApp::Application.initialize!

そして、たとえばコントローラーからロガーを呼び出します。

    my_logger.info "got here"

ただし、次のエラーが表示されます。

未定義のローカル変数またはメソッド「my_logger」

なぜこれが起こっているのかについての手がかりはありますか?ありがとう!

4

2 に答える 2

2

独自のログを維持できます:

my_logger = ActiveSupport::BufferedLogger.new("#{Rails.root}/log/my.log")
于 2012-04-06T12:44:33.843 に答える
2

ファイルを書き込み/追加モードで開く:

試す :

logfile = File.open('#{Rails.root}/log/my.log', 'a')  
my_logger = Logger.new(logfile)
my_logger.info 'Hello World!'
于 2012-04-06T12:37:18.890 に答える