Python がロギングを通じてファイルとコンソールにログを書き込む例

不言
リリース: 2018-05-24 15:08:58
オリジナル
3186 人が閲覧しました

以下は、Python がロギングを通じてファイルとコンソールにログを書き込む例です。これは良い参考値であり、皆さんの役に立つことを願っています。一緒に見てみましょう

以下に示すように:

import logging 

# 创建一个logger 
logger = logging.getLogger('mylogger') 
logger.setLevel(logging.DEBUG) 
# 创建一个handler,用于写入日志文件 
fh = logging.FileHandler('test.log') 
fh.setLevel(logging.DEBUG) 
# 再创建一个handler,用于输出到控制台 
ch = logging.StreamHandler() 
ch.setLevel(logging.DEBUG) 
# 定义handler的输出格式 
formatter = logging.Formatter('[%(asctime)s][%(thread)d][%(filename)s][line: %(lineno)d][%(levelname)s] ## %(message)s')
fh.setFormatter(formatter) 
ch.setFormatter(formatter) 
# 给logger添加handler 
logger.addHandler(fh) 
logger.addHandler(ch) 
# 记录一条日志 
logger.info('foorbar')
ログイン後にコピー

フォーマッタの設定に関しては、辞書のキーワード置換である %()s の形式を使用します。提供されるキーワードは次のとおりです:

モジュール (ファイル名の名前部分).名前ロギング呼び出しを含む関数の。ロギング呼び出しが発行されたソース行番号 (利用可能な場合)。LogRecord が作成された時刻。デフォルトでは、「2003-07 -08 16:49:45,896」という形式になります (カンマの後の数字は作成時刻のミリ秒部分です)。 %(threadName)sプロセス ID (利用可能な場合).%(message)sar として計算されるログメッセージログを実装するための Python のサンプルコード Python ログの構成ファイルのパスの問題についての簡単な説明
Format Description
%(name)s ロガーの名前(ロギングチャネル)
% ( levelno)s メッセージの数値ログレベル (DEBUGINFOWARNINGERRORCRIT I)キャル).
%(levelname)s メッセージのテキストログレベル ('DEBUG''INFO''WARNING''ERROR' 'CRITICAL').
%(pathname)s ロギング呼び出しが発行されたソース ファイルの完全なパス名 (可能な場合)。
%(filename) )s パス名のファイル名部分.
%(モジュール)s
%(funcName)s
%(lineno)d
%(created)f LogRecordが作成された時間(time.time()によって返される)。ログモジュールがロードされた時間を基準とします。
%(asctime)s
%(thread)d スレッドID (ある場合).
スレッド名 (ある場合). %(process)d
msg %
関連する推奨事項:

以上がPython がロギングを通じてファイルとコンソールにログを書き込む例の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート