目次
ロガーを作成します
ファイル ハンドラーを作成し、ログをファイルに書き込みます
ログ形式を定義します
形式をハンドラーに適用します
ロガーにハンドラーを追加
コードを記述し、ログが格納されるロガー オブジェクトを呼び出します。記録する必要があります
ホームページ バックエンド開発 Python チュートリアル Python でログ処理とデバッグを行う方法に関するベスト プラクティスとヒント

Python でログ処理とデバッグを行う方法に関するベスト プラクティスとヒント

Oct 18, 2023 am 10:18 AM
python デバッグ ログ処理

Python でログ処理とデバッグを行う方法に関するベスト プラクティスとヒント

Python でログ処理とデバッグを行う方法に関するベスト プラクティスとヒント

  1. はじめに
    大規模な Python アプリケーションを作成するときのログ処理とデバッグは非常に重要です。重要なのは、問題を追跡し、エラーを診断し、コードを改善するのに役立ちます。この記事では、Python でのログ処理とデバッグのベスト プラクティスとテクニック、および具体的なコード例を紹介します。
  2. 標準ライブラリ ロギングの使用
    Python には、ログ処理モジュールであるロギングが組み込まれており、ログ レコードを処理するための包括的な API セットが提供され、非常に使いやすくなります。基本的なロギングの例を次に示します。

importlogging

ロガーを作成します

logger =logging.getLogger(__name__)
logger.setLevel (logging. DEBUG)

ファイル ハンドラーを作成し、ログをファイルに書き込みます

file_handler =logging.FileHandler('app.log')
file_handler.setLevel(logging .DEBUG)

ログ形式を定義します

formatter =logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')

形式をハンドラーに適用します

file_handler.setFormatter(formatter)

ロガーにハンドラーを追加

logger.addHandler(file_handler)

コードを記述し、ログが格納されるロガー オブジェクトを呼び出します。記録する必要があります

logger.debug('これはデバッグ レベルのログです')
logger.info('これは情報レベルのログです' )
logger.warning('これは警告レベルのログ')
logger.error('これはエラー レベルのログです')
logger.critical('これは重大レベルのログです')

上記のコードを実行した後、同じディレクトリに app.log という名前のファイルが表示されます。このファイルには、記録されたログ情報が含まれています。必要に応じて、ログ レベル、ログ形式、ログの出力場所をカスタマイズできます。

  1. デバッグにアサーションを使用する
    ログに加えて、アサーションは非常に効果的なデバッグ手法でもあります。コードにいくつかのアサーションを追加して、プログラムのロジックとデータの正確さを検証できます。簡単な例を次に示します。

def dive(x, y):

assert y != 0, "除数不能为0"
return x / y
ログイン後にコピー

print(divide(10, 0))

この例では、除数が 0 の場合、アサーションは AssertionError 例外をトリガーしてスローします。例外情報に基づいてエラーの場所を簡単に特定できます。

  1. pdb を使用した対話型デバッグ
    Python 標準ライブラリには、強力な対話型デバッガー pdb も提供されています。コードに import pdb; pdb.set_trace() を挿入して、このコード行で pdb デバッグ モードに入ります。ブレークポイントの設定、変数値の出力、コードのステップ実行などの一連の pdb コマンドを使用して、プログラムを 1 行ずつデバッグできます。以下に例を示します。

def add(a, b):

import pdb; pdb.set_trace()
return a + b
ログイン後にコピー

print(add(1, 2))

このコードを実行すると、プログラムが import pdb; pdb.set_trace() として実行されると、pdb デバッグ モードに入ります。コマンドを入力して、変数の値を表示したり、コードをステップ実行したり、その他のデバッグ操作を実行したりできます。

  1. 高度なデバッグにはサードパーティ ライブラリを使用する
    組み込みの pdb に加えて、より高度なデバッグの実行に役立つサードパーティ ライブラリがいくつかあります。最も人気のあるものの 1 つは py debugger (py debugger) で、リモート デバッグ、コードの編集、リロードなど、より豊富なデバッグ機能を提供できます。 pip を使用して py デバッガーをインストールできます: pip install py debugger
  2. 結論
    Python でのログ処理とデバッグは非常に重要であり、問​​題を追跡して修正し、プログラムの信頼性と安定性を向上させるのに役立ちます。 Python の組み込みロギング モジュール、アサーション、および PDB デバッガーを使用すると、デバッグ効率が向上し、問題を迅速に特定できます。さらに、サードパーティのライブラリを使用して、より高度なデバッグ操作を行うこともできます。これらの技術とツールをプロジェクトに適切に適用することは、開発作業に大きな助けとなります。
#参考資料:

    Python 公式ドキュメントロギング モジュール: https://docs.python.org/3/library/logging.html
  1. Python 公式ドキュメント - pdb デバッガー: https://docs.python.org/3/library/pdb.html

以上がPython でログ処理とデバッグを行う方法に関するベスト プラクティスとヒントの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

PHPおよびPython:コードの例と比較 PHPおよびPython:コードの例と比較 Apr 15, 2025 am 12:07 AM

PHPとPythonには独自の利点と短所があり、選択はプロジェクトのニーズと個人的な好みに依存します。 1.PHPは、大規模なWebアプリケーションの迅速な開発とメンテナンスに適しています。 2。Pythonは、データサイエンスと機械学習の分野を支配しています。

Python vs. JavaScript:コミュニティ、ライブラリ、リソース Python vs. JavaScript:コミュニティ、ライブラリ、リソース Apr 15, 2025 am 12:16 AM

PythonとJavaScriptには、コミュニティ、ライブラリ、リソースの観点から、独自の利点と短所があります。 1)Pythonコミュニティはフレンドリーで初心者に適していますが、フロントエンドの開発リソースはJavaScriptほど豊富ではありません。 2)Pythonはデータサイエンスおよび機械学習ライブラリで強力ですが、JavaScriptはフロントエンド開発ライブラリとフレームワークで優れています。 3)どちらも豊富な学習リソースを持っていますが、Pythonは公式文書から始めるのに適していますが、JavaScriptはMDNWebDocsにより優れています。選択は、プロジェクトのニーズと個人的な関心に基づいている必要があります。

Dockerの原則の詳細な説明 Dockerの原則の詳細な説明 Apr 14, 2025 pm 11:57 PM

DockerはLinuxカーネル機能を使用して、効率的で孤立したアプリケーションランニング環境を提供します。その作業原則は次のとおりです。1。ミラーは、アプリケーションを実行するために必要なすべてを含む読み取り専用テンプレートとして使用されます。 2。ユニオンファイルシステム(UnionFS)は、違いを保存するだけで、スペースを節約し、高速化する複数のファイルシステムをスタックします。 3.デーモンはミラーとコンテナを管理し、クライアントはそれらをインタラクションに使用します。 4。名前空間とcgroupsは、コンテナの分離とリソースの制限を実装します。 5.複数のネットワークモードは、コンテナの相互接続をサポートします。これらのコア概念を理解することによってのみ、Dockerをよりよく利用できます。

ターミナルVSCODEでプログラムを実行する方法 ターミナルVSCODEでプログラムを実行する方法 Apr 15, 2025 pm 06:42 PM

VSコードでは、次の手順を通じて端末でプログラムを実行できます。コードを準備し、統合端子を開き、コードディレクトリが端末作業ディレクトリと一致していることを確認します。プログラミング言語(pythonのpython your_file_name.pyなど)に従って実行コマンドを選択して、それが正常に実行されるかどうかを確認し、エラーを解決します。デバッガーを使用して、デバッグ効率を向上させます。

Python:自動化、スクリプト、およびタスク管理 Python:自動化、スクリプト、およびタスク管理 Apr 16, 2025 am 12:14 AM

Pythonは、自動化、スクリプト、およびタスク管理に優れています。 1)自動化:OSやShutilなどの標準ライブラリを介してファイルバックアップが実現されます。 2)スクリプトの書き込み:Psutilライブラリを使用してシステムリソースを監視します。 3)タスク管理:スケジュールライブラリを使用してタスクをスケジュールします。 Pythonの使いやすさと豊富なライブラリサポートにより、これらの分野で優先ツールになります。

Windows 8でコードを実行できます Windows 8でコードを実行できます Apr 15, 2025 pm 07:24 PM

VSコードはWindows 8で実行できますが、エクスペリエンスは大きくない場合があります。まず、システムが最新のパッチに更新されていることを確認してから、システムアーキテクチャに一致するVSコードインストールパッケージをダウンロードして、プロンプトとしてインストールします。インストール後、一部の拡張機能はWindows 8と互換性があり、代替拡張機能を探すか、仮想マシンで新しいWindowsシステムを使用する必要があることに注意してください。必要な拡張機能をインストールして、適切に動作するかどうかを確認します。 Windows 8ではVSコードは実行可能ですが、開発エクスペリエンスとセキュリティを向上させるために、新しいWindowsシステムにアップグレードすることをお勧めします。

Visual StudioコードはPythonで使用できますか Visual StudioコードはPythonで使用できますか Apr 15, 2025 pm 08:18 PM

VSコードはPythonの書き込みに使用でき、Pythonアプリケーションを開発するための理想的なツールになる多くの機能を提供できます。ユーザーは以下を可能にします。Python拡張機能をインストールして、コードの完了、構文の強調表示、デバッグなどの関数を取得できます。デバッガーを使用して、コードを段階的に追跡し、エラーを見つけて修正します。バージョンコントロールのためにGitを統合します。コードフォーマットツールを使用して、コードの一貫性を維持します。糸くずツールを使用して、事前に潜在的な問題を発見します。

vscodeとは何ですか?vscodeとは何ですか? vscodeとは何ですか?vscodeとは何ですか? Apr 15, 2025 pm 06:45 PM

VSコードは、Microsoftが開発した無料のオープンソースクロスプラットフォームコードエディターと開発環境であるフルネームVisual Studioコードです。幅広いプログラミング言語をサポートし、構文の強調表示、コード自動完了、コードスニペット、および開発効率を向上させるスマートプロンプトを提供します。リッチな拡張エコシステムを通じて、ユーザーは、デバッガー、コードフォーマットツール、GIT統合など、特定のニーズや言語に拡張機能を追加できます。 VSコードには、コードのバグをすばやく見つけて解決するのに役立つ直感的なデバッガーも含まれています。

See all articles