Pythonのロゴ
4284 ワード
Logging From Python
Preface *Jack Lee*
loggingはPythonがログを記録するためのモジュールを提供する.
このうち6種類のログレベルがある. NOTSET:00は設置する. DEBUG:10詳細. INFO:20正常動作情報. WARNING:30警告メッセージ. ERROR:40エラーメッセージ. CRITICAL:50致命情報.
Getting Startは、下位レベルを設定、現在レベル以上の情報のみが表示される. ログモジュールを使用する ログオブジェクトを作成し、レベル を設定する.処理オブジェクトを作成するレベル を設定する.ログフォーマット を定義ログオブジェクトに処理オブジェクトを追加 Formatterログ形式 %(name)s:logger名前 %(levelno)s:ログレベルの数値形式 %(levelname)s:ログレベルのテキスト形式 %(filename)s:ログ出力を呼び出すファイル名 %(module)s:ログ出力を呼び出すモジュール名 %(asctime)s:現在時刻の時間文字列 %(message)s:ユーザが出力情報 %(funcName)s:ログ出力を呼び出す関数名 %(lineno)d:ログ出力関数を呼び出す文が存在するコード行 %(created)f:現在の時刻、UNIX標準の浮動小数点型で示す. %(thread)d:スレッドID. %(threadName)s:スレッド名. %(process)d:プロセスID. %(processName)s:プロセス名.
Preface *Jack Lee*
loggingはPythonがログを記録するためのモジュールを提供する.
このうち6種類のログレベルがある.
Getting Start
import logging
# log , , .
logger = logging.getLogger('test_log.txt')
logger.setLevel(logging.DEBUG)
# .
sh = logging.StreamHandler()
sh.setLevel(logging.ERROR)
# log .
fh = logging.FileHandler('test_log.txt')
fh.setLevel(logging.DEBUG)
# .
fromatter = logging.Formatter('TIME:%(asctime)s LOG:%(levelname)s INFO:%(message)s')
sh.setFormatter(fromatter)
fh.setFormatter(fromatter)
# log .
logger.addHandler(sh)
logger.addHandler(fh)
if __name__ == '__main__':
logger.debug('This is DEBUG')
logger.error('ERROR')
logger.info('info')
logger.critical('critical')