Laravel-エラー処理
ほとんどのWebアプリケーションには、エラー処理のための特定のメカニズムがあります。これらを使用して、エラーと例外を追跡し、それらをログに記録してパフォーマンスを分析します。この章では、Laravelアプリケーションでのエラー処理について説明します。
重要なポイント
Laravelでのエラー処理について詳しく学ぶ前に、次の重要な点に注意してください。
新しいプロジェクトの場合、Laravelはエラーと例外を App\Exceptions\Handlerデフォルトでは、クラス。その後、分析のためにユーザーに送信されます。
Laravelアプリケーションがデバッグモードに設定されている場合、スタックトレースを含む詳細なエラーメッセージが、Webアプリケーション内で発生するすべてのエラーに表示されます。
デフォルトでは、デバッグモードはに設定されています false に変更できます true。これにより、ユーザーはスタックトレースを使用してすべてのエラーを追跡できます。
Laravelプロジェクトの構成には以下が含まれます debugエラーに関する情報をユーザーに表示する量を決定するオプション。Webアプリケーションのデフォルトでは、オプションはの環境変数で定義された値に設定されます。.env ファイル。
値はに設定されます true ローカル開発環境で、に設定されています false 実稼働環境で。
値がに設定されている場合 true 実稼働環境では、機密情報をエンドユーザーと共有するリスクが高くなります。
エラーログ
Webアプリケーションにエラーを記録すると、エラーを追跡し、エラーを削除するための戦略を計画するのに役立ちます。ログ情報は、次のWebアプリケーションで構成できます。config/app.phpファイル。Laravelでエラーログを処理する際は、次の点に注意してください-
LaravelはモノログPHPロギングライブラリを使用しています。
エラー追跡に使用されるロギングパラメータは次のとおりです。 single, daily, syslog そして errorlog。
たとえば、エラーメッセージをログファイルに記録する場合は、アプリ構成のログ値を次のように設定する必要があります。 daily 以下のコマンドに示すように-
'log' => env('APP_LOG',’daily’),
の場合 daily ログモードがパラメータとして使用され、Laravelはエラーログを一定期間取得します 5 days、デフォルトで。ログファイルの最大数を変更する場合は、のパラメータを設定する必要がありますlog_max_files 構成ファイル内で目的の値に設定します。
‘log_max_files’ => 25;
重大度レベル
LaravelはモノログPHPロギングライブラリを使用するため、重大度レベルの分析に使用されるさまざまなパラメーターがあります。利用可能なさまざまな重大度レベルは次のとおりです。error, critical, alert そして emergency messages。以下のコマンドに示すように、重大度レベルを設定できます。
'log_level' => env('APP_LOG_LEVEL', 'error')