Pythonのlogging
libに問題があります。以下のコードで「ロガー」を作成します。
logger = logging.getLogger()
def logger_init(level):
try:
syslog = SysLogHandler(address=LOG_DESTINATION)
except Exception, ex:
return
formatter = logging.Formatter('%(module)s[%(process)d]: %(message)s')
syslog.setFormatter(formatter)
syslog.setLevel(level)
logger.addHandler(syslog)
そして、私はそれを次のように呼びます:
logger.debug(SOME_STR_TO_BE_LOGGED)
または次のように:
logger.error(SOME_STR_TO_BE_LOGGED)
そして、ロガーを次のように初期化します。
log_level = logging.ERROR
if options.DEBUG_LOG: #### This comes from options parser and it is True.
log_level = logging.DEBUG
logger_init(log_level)
問題はerror
、 とwarn
が非常にうまく機能していることですが、メソッドinfo
もdebug
メソッドも syslog に何も出力しません。
私は syslog-ng を使用しており、フィルタを設計しました。つまり、 から までのすべてのレベルを受け入れdebug
ますemerg
。
ここで何が問題なのですか?何か案は?