前回
rotation
sinkが str または pathlib.Path の場合、
ログを書き込むためのファイルが開く
rotation チェックは、ログを記録する前に行われる。
作成するファイルと同じ名前の既存のファイルがすでに存在する場合、ファイルの上書きを防ぐために、既存のファイルのベース名に日付が追加される
logger.add("log/app.log", rotation="1 B")
rotation, retention, compression
logger.add("file_2.log", rotation="12:00")
# 毎時12時にファイルが新規作成される
logger.add("file_3.log", rotation="1 week")
# ログファイルが毎週新規作成される
logger.add("file_4.log", retention="10 days")
# 10日以上経過したログを削除
logger.add("file_5.log", compression="zip")
# ログファイルがZIP形式に圧縮される
'''
ログが閉じられないとZIP圧縮されないため、
rotationまたはretentionのパラメータを記載する
'''
@logger.catch
try-except文を記述しなくても、エラーを自動的に処理してログに記録する
@logger.catch
def divide(a, b):
return a / b
divide(1, 0)