「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > Python でのロギング

Python でのロギング

2024 年 11 月 8 日に公開
ブラウズ:737

Logging con Python

ログ、ロギング。 Python でイベントを登録する方法と

ロギングを使用してログを作成すると、コードに多くの機能と柔軟性が与えられます。この短い記事では、基本と、それをプロジェクトに組み込むための追加事項を示します。

ロギングとは何ですか?そしてログは?

ログはイベントを監視する方法です。これらのイベントは、特定の変数情報 (変数の値または関数の結果) と一定レベルの重要性を伴う説明メッセージを通じて表示されます。
ログは Python の印刷に似ていますが、違いは、必ずしも画面に印刷されるわけではなく、これらのログは既知のファイルに保存できることです。

どうやって使えばいいのでしょうか?

Python にすでにネイティブに組み込まれているロギング ライブラリを使用します:

import logging

logging.basicConfig(
    filename="log-de-hoy.log",
    encoding="utf-8",
    level=logging.DEBUG,
    format="%(asctime)s %(levelname)s %(message)s"
)

def add(a, b):
    try:
        result = a   b
        logging.info(f"Adding {a} and {b}. Result: {result}")
    except TypeError:
        result = None
        logging.error("The values should be numeric")
    return result

print(add(2, 3)) # 5
print(add(2, "3")) # None

これを実行すると、log-de-hoy.log というファイルが生成されます:

2023-12-08 11:56:30,544 INFO Adding 2 and 3. Result: 5
2023-12-08 11:56:30,544 ERROR The values should be numeric

説明

??基本的な設定を開始します。logging.basicConfig で次のように宣言します。

  • filename: ログを追加する特定のファイルの名前 (たとえば、名前は log-de-hoy.log ですが、理想的にはその日の日付を含むわかりやすい名前にする必要があります)
  • エンコーディング: 各ログを保存する形式のタイプ
  • レベル: どのレベルから観察するかを定義します。さまざまなレベルがドキュメントに記載されており、logging.INFO が 20 である数値があることがわかります。debug が必要な場合は、少なくとも 10 が必要です。したがって、logging.DEBUG では、値 10 以降のレベルが登録されていることを確認してください。
  • format: ログが記録される形式。この場合はメッセージ レベルの日付です。

??合計した結果をレベル情報

とともに記録します

?? intとstringの加算エラーをレベルerror

で登録します。

なぜロギングを使用するのでしょうか?

これは異常を迅速に特定するのに役立つ強力なツールであるため、すでに想像できているかもしれません。これを使用するユースケースの例は次のとおりです:

  • ?デバッグとトラブルシューティング
  • ?パフォーマンスの監視と分析
  • ?監査とコンプライアンス
  • ?セキュリティと異常検出

終了するには…

実装は簡単ですよね?それを任意のプロジェクトに統合し、大量のプリントの使用をやめるのはプラスですか?.

ロギング モジュールは、ここで示したものよりもはるかに多くの機能を提供します。でも、これだけあれば十分すぎるほどです!必要に応じて、ドキュメントでは他のケース、メソッド、構成などについて詳しく説明しています。

リリースステートメント この記事は次の場所に転載されています: https://dev.to/javicerodriguez/logging-con-python-2j7m?1 侵害がある場合は、[email protected] に連絡して削除してください。
最新のチュートリアル もっと>

免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。

Copyright© 2022 湘ICP备2022001581号-3