1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

面倒な logger 設定、もうやめませんか?― loguru のすすめ

Posted at

ログって大事なのはわかってるけど、logger の設定って面倒くさくないですか?

  • loggerlogging? どっちだっけ?」
  • 「PoC(検証用コード)だからそんな細かくログレベルとか決めてないし…」
  • 「とりあえず print() でいいや」

──これ、全部ぼくのことです。

でも、「とりあえず print」 から卒業したい、ちゃんとしたログがほしいって思ったときに出会ったのが loguru でした。

loguru ってなに?

loguru は、Python の標準ライブラリ logging の複雑さを解消するために作られた、シンプルでパワフルなロギングライブラリです。

特徴をざっとまとめると:

  • ✅ 初期設定ゼロでも使える(logger.info("Hello")だけでOK)
  • ✅ ログレベル、色付き出力、ファイル保存などが超簡単に設定できる
  • ✅ 呼び出し元(ファイル名・行数)も自動で出してくれる
  • ✅ print のような感覚で書けるのに、ちゃんとログ

まずは使ってみよう

インストールは pip で一発:

pip install loguru

使い方は超シンプルです。

from loguru import logger

logger.info("Hello, world!")

これだけで、以下のような見やすいログが標準出力されます:

2025-05-22 10:00:00.000 | INFO  | __main__:<module>:3 - Hello, world!

色もついてて見やすい(ターミナルによりますが)。

print の代わりに logger を

PoC(Proof of Concept)の段階だと、複雑なログ設定をするより print() で済ませたくなる気持ち、わかります。

でも loguru なら、print と同じくらい気軽に書けるのに、ログとしての便利さが段違いです。

  • いつ・どこで出たログかがわかる
  • あとからログレベルだけ変えてデバッグログを出すのも簡単
  • ファイル出力やフィルタリングも一行で追加できる
logger.add("debug.log", level="DEBUG")
logger.debug("これはファイルに出力されるよ")

標準の logging との違いは?

機能 logging loguru
初期設定 必須 不要
色付き出力 自力で設定必要 デフォルトで対応
呼び出し元の情報表示 自力で設定必要 自動で表示
ログファイル出力 Handler 設定が必要 logger.add() 一発でOK

Python 標準の logging モジュールは柔軟性はありますが、設定が面倒な割に手軽さが足りないんですよね。

まとめ:とりあえず loguru にしとこう

もし今「logger の設定どうしよう」「めんどい」「print でいいか」と思ってるなら──
次からは loguru をインポートして始めてみてください。

from loguru import logger

これだけで、ちょっとだけ "ちゃんとしたエンジニア" 感が出せますよ(しかも実際に便利)。

おまけ:Python に慣れてる人向けの補足

Python 標準の logging に慣れてる人からすると、「loguru ってただの糖衣構文でしょ?」って思うかもしれません。でも、使ってみるとその開発体験のスムーズさに驚くと思います。

シンプルだけど拡張性もある──そのちょうどいいバランスが loguru の良さです。

1
3
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
1
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?