いくつかの文字列をログ ファイルに出力し、ログ ファイルを継続的に更新したいと考えています。
Pythonのロギング モジュールを調べたところ、主にフォーマットと同時アクセスに関するものであることがわかりました。
何か不足している場合や他の方法がある場合はお知らせください
いくつかの文字列をログ ファイルに出力し、ログ ファイルを継続的に更新したいと考えています。
Pythonのロギング モジュールを調べたところ、主にフォーマットと同時アクセスに関するものであることがわかりました。
何か不足している場合や他の方法がある場合はお知らせください
通常、私は次のことを行います。
# logging
LOG = "/tmp/ccd.log"
logging.basicConfig(filename=LOG, filemode="w", level=logging.DEBUG)
# console handler
console = logging.StreamHandler()
console.setLevel(logging.ERROR)
logging.getLogger("").addHandler(console)
ロギング部分は、ロギングの基本構成を初期化します。以下では、いくつかのログ情報を個別に出力するコンソール ハンドラを設定します。通常、コンソール出力はエラー (logging.ERROR) と LOG ファイルの詳細出力のみを出力するように設定されています。
ログがファイルに出力されます。たとえば、次を使用します。
logger = logging.getLogger(__name__)
logger.debug("hiho debug message")
あるいは
logging.debug("next line")
動作するはずです。
Doug Hellmann には素晴らしいガイドがあります。
ロギングの使用に関して 10 セントを追加するには。私は Logging モジュールを最近発見したばかりで、最初は気が進まなかった。最初は大変な作業のように見えるからかもしれませんが、非常にシンプルで信じられないほど便利です。
これは私が使用するセットアップです。Mkinds の回答に似ていますが、タイムスタンプが含まれています。
# Set up logging
log = "bot.log"
logging.basicConfig(filename=log,level=logging.DEBUG,format='%(asctime)s %(message)s', datefmt='%d/%m/%Y %H:%M:%S')
logging.info('Log Entry Here.')
次のようなものが生成されます。
22/09/2015 14:39:34 Log Entry Here.
Logging API を使用してファイルにログを記録できます。
例: http://docs.python.org/2/howto/logging.html#logging-to-a-file