2

新しいロガーを作成していて、ログ レベルを Rails の構成値と同じになるように構成したいと考えています。

@logger = Logger.new(STDOUT)
@logger.level = Rails.configuration.log_level

level には整数が必要で、log_level はシンボル (:info) であるため、エラーが発生します。:info を Logger が理解できるもの (Logger::INFO) に変換するにはどうすればよいですか?

私は使用してみました:

@logger.level = "Logger::#{Rails.configuration.log_level.to_s.upcase}".constantize

しかし、定数化はシンボルを認識しません:

NameError: uninitialized constant Logger::INFO
4

1 に答える 1

4

ちょうどそれを見つけました:

Logger.const_get(Rails.configuration.log_level.to_s.upcase)
于 2013-02-01T20:36:13.150 に答える