• Skip to main content
  • Skip to secondary menu
  • Skip to primary sidebar
  • Skip to footer

AI活用エンジニアへの道

生成AI時代のエンジニアの生き方を考えるメディア(作成途中)

  • コラム
  • 生成AI
  • プログラミング
    • Python入門
    • Flask入門
    • Django入門
  • プロフィール
Home / プログラミング / Flask / Flaskでデバッグをしてエラー解析する方法(debugパラメータ設定、VScodeでのデバッグ等)

Flaskでデバッグをしてエラー解析する方法(debugパラメータ設定、VScodeでのデバッグ等)

1 debug=Trueで実行する
2 app作成時にdebugの設定を書き込む
3 設定ファイルからDEBUGの設定を読み込む
4 実行時にFLASK_DEBUG=1を環境変数に入れて実行する
5 VSCodeでデバッグ実行し、コードを実行途中で止める
6 関連記事

Flaskで開発をする場合にデバッグをして、エラーを発見することは非常に重要である。

デバッグの設定を入れるには、複数の方法があるが、ここでは、いくつか紹介した。

[rtoc_mokuji title="" title_display="" heading="h3" list_h2_type="" list_h3_type="" display="" frame_design="" animation=""]

debug=Trueで実行する

Flaskのアプリケーションを立ち上げるさい(app.run())、オプションとして、debug=Trueとするとデバッグをすることができる。
実際に見ていこう

Example

  • デバッグモードでのアプリケーションを実行
from flask import Flask, render_template

app = Flask(__name__)

@app.route('/index')
def index():
    return render_template('index.html')

if __name__ == '__main__':
    app.run(debug=True) # debug=Trueとするとデバッグモードで立ち上がる

 
これを実行するとターミナルには、PINが表示される。

  • ターミナルの表示内容


 

エラー時の解析には、このPINを利用する。

  • エラー画面

以下に、エラー画面を表示した。
このとき、エラー画面最下部に見えるエラーメッセージの右端のターミナルのようなものをクリックする。

 
すると、PINの入力が求められるので、ターミナルに表示されていたPINを入力する。

  • PINを入力する


 

すると、コンソールが表示されて、様々な値を入力して何が正しいのか確かめる。

  • コンソールが表示される

app作成時にdebugの設定を書き込む

FlaskはデフォルトでDEBUGがFalseとなって実行されるが、これを直接いじるとDEBUG=Trueとして実行されて、デバッグが可能になる。

Example

  • DEBUGにして実行する
app = Flask(__name__)# アプリケーションの作成
app.config['DEBUG'] = True# デバッグモードをTrueにする

デバッグの手順の続きは、上記(debug=Trueで実行する)と同様なので省略する。

設定ファイルからDEBUGの設定を読み込む

Flaskの設定を別に記述して、それを設定として読み込むことでDEBUGすることもできる。
これは、本番環境と、開発環境でDEBUGの設定を分けたい場合などに便利なやり方である。

 

Example

  • 設定を記述する
class DevelopmentConfig:
    DEBUG = True # debugの設定

 
次に、これをapp.pyから読み込む

  • app.pyの記述
from flask import Flask, render_template

app = Flask(__name__)
app.config.from_object('config.DevelopmentConfig') # configファイルからFLaskの設定を読み込む

@app.route('/index')
def index():
    return render_template('index.html')

if __name__ == '__main__':
    app.run()

 
他にも設定の読込み方法は、色々あるが、詳細は公式サイトを参考にされるとよい。
(公式サイト)

デバッグの手順の続きは、上記(debug=Trueで実行する)と同様なので省略する。

実行時にFLASK_DEBUG=1を環境変数に入れて実行する

環境変数にFLASK_DEBUG=1を入れてアプリケーションを実行するとデバッグモードで実行される。

export FLASK_APP="mainfilename.py"
export FLASK_DEBUG=1 (windowsのコマンドプロンプトの場合set)
python -m flask run --host=0.0.0.0

デバッグの手順の続きは、上記(debug=Trueで実行する)と同様なので省略する。

VSCodeでデバッグ実行し、コードを実行途中で止める

VSCodeでデバッグするには、画面左の虫のボタンを押して、デバッグ画面に遷移し、デバッグで実行すればよい。
1つ1つ手順を見ていく。

Example

  • 1. コードを止めたい場所に印をつける

コードの左側をクリックすると赤い丸がつく、コードを途中で止めて、実行状態を確認したい場所に赤い丸をつける。


 

  • 2. デバッグ実行する

デバッグマークを選択して、実効とデバッグでflaskを選択する。

 

  • 3. 1で印をつけた場所が実行されるように画面遷移する

アプリケーションが立ち上がったら、画面遷移を行い、1で印をつけた部分を実行させると。VSCodeが印をつけた部分で処理を止め、処理の状態を確認できる。
このとき、コードを追いながら変数の中身を確認できるようになる。

以上、Flaskでのデバッグの様々なやり方について紹介した。


« Previous

テンプレートを利用する方法

Next »

テンプレートのfor, if, コメント文


Flask入門記事一覧はこちら

関連記事

Pythonの型ヒント:コレクション型とOptional型の使い方
Pythonの型ヒント:コレクション型とOptional型の…
Python型ヒントについて、変数と関数の引数と戻り値に付与する基本的な書き方について
Python型ヒントについて、変数と関数の引数と戻り値に付与…
【まとめ】よく使うLinuxのショートカット11選
【まとめ】よく使うLinuxのショートカット11選
覚えておくべきLinuxコマンド50選
覚えておくべきLinuxコマンド50選
FlaskでFormを用いてPOSTリクエストを行い、送信された値を取得する
FlaskでFormを用いてPOSTリクエストを行い、送信さ…
Flaskでabortを用いてHTTPException例外を強制的に発生させる
Flaskでabortを用いてHTTPException例外…

Primary Sidebar

人気記事

  • 1
    PyCharm,IntelliJのおすすめプラグイン一覧
  • no image 2
    Python未経験だが、フリーランスの案件に採用さ…
  • 3
    ITエンジニアとしてスキルを高めるためのUdemy講…
  • 4
    アメリカのシリコンバレーでプログラミングを無…

特集記事

  • 1
    Cursorの使用のポイントとコツ(コード補完、イ…
  • 2
    ITエンジニアとしてスキルを高めるためのUdemy講…

目次

1 debug=Trueで実行する
2 app作成時にdebugの設定を書き込む
3 設定ファイルからDEBUGの設定を読み込む
4 実行時にFLASK_DEBUG=1を環境変数に入れて実行する
5 VSCodeでデバッグ実行し、コードを実行途中で止める
6 関連記事
StartCode ロゴ
AI時代のエンジニアを最速で育てる
法人向けIT研修で即戦力を育成しています。詳しくはお問い合わせください。
▶ 詳細はこちら
Flask講座
【Udemy】Flask入門講座(0からFlaskを学習: Python講座つき)
受講生6500人ほどの人気講座。<strong>View, Template, Model</str...
詳細 ▶

Footer

利用規約