0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Python】logファイルを出力するには?

Last updated at Posted at 2025-04-02

こんにちは!
今回はpythonでlogファイルを出力する方法を紹介します。

1. logging モジュールを使った基本的なログ出力

Pythonの標準ライブラリである logging モジュールを使えば、簡単にログを出力できます。

import logging

# ログの基本設定
logging.basicConfig(level=logging.INFO, filename="app.log", format="%(asctime)s - %(levelname)s - %(message)s")

# ログを記録
logging.info("これは情報レベルのログです")
logging.warning("これは警告レベルのログです")
logging.error("これはエラーレベルのログです")

このコードを実行すると、app.log というファイルにログが出力されます。

2. ログのレベルについて

logging モジュールでは、以下のようなログレベルを使用できます。

ログレベル 説明
DEBUG デバッグ用の詳細な情報
INFO 一般的な情報メッセージ
WARNING 警告メッセージ
ERROR エラーメッセージ
CRITICAL 重大なエラーメッセージ

適切なレベルを選んでログを記録しましょう。

3. ロガーをカスタマイズする

複数のファイルで共通のロガーを使う場合は、Logger オブジェクトを作成して管理すると便利です。

カスタムロガーの作成

import logging

def setup_logger():
    logger = logging.getLogger("my_logger")
    if not logger.hasHandlers():
        handler = logging.FileHandler("app.log")
        formatter = logging.Formatter("%(asctime)s - %(filename)s - %(levelname)s - %(message)s")
        handler.setFormatter(formatter)
        logger.addHandler(handler)
        logger.setLevel(logging.INFO)
    return logger

logger = setup_logger()

logger.info("カスタムロガーでログを記録")

4. コンソールとファイルの両方にログを出力する

ログをファイルに保存しながら、コンソールにも表示したい場合は、StreamHandler を追加します。

import logging

def setup_logger():
    logger = logging.getLogger("my_logger")
    if not logger.hasHandlers():
        file_handler = logging.FileHandler("app.log")
        console_handler = logging.StreamHandler()
        
        formatter = logging.Formatter("%(asctime)s - %(filename)s - %(levelname)s - %(message)s")
        file_handler.setFormatter(formatter)
        console_handler.setFormatter(formatter)
        
        logger.addHandler(file_handler)
        logger.addHandler(console_handler)
        logger.setLevel(logging.INFO)
    return logger

logger = setup_logger()

logger.info("ファイルとコンソールの両方にログを出力")

最後に

今回は以上になります。
最後まで見ていただき、ありがとうございました。
では、また次の記事で~!

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?