🔰【PHP開発ガイド】 エラーログを出力しよう

PHPでエラーログを出力する

アプリケーション開発ではエラー発生の原因等を調査するために必要な情報をログとして出力し、サーバ上に保存する必要があります。

PHPではerror_log関数という標準の機能を使用してログを出力することができます。

以下は例外発生時に年月日日時とエラーメッセージを専用のログファイルに保存しています。


<?php

try {
    errorTest();
} catch (Exception $e) {
    $destination = '/var/www/logs/error.log';
    error_log(date('Y-m-d H:i:s') . ' : ' . $e->getMessage() . "\n", 3, $destination);
}

function errorTest()
{
    throw new ErrorException('エラー発生');
}

error_log関数は第一引数にログに書き込むメッセージ、第二引数にはエラーメッセージの記録方法(ログファイルに書き込む場合は3でOK)、第三引数にログファイルの絶対パスを指定します。

/var/www/logs/error.log


2023-01-29 06:25:14 : エラー発生

任意の場所でのログ出力以外にも、未処理の例外をハンドリングする set_error_handler やプログラム停止時に実行される register_shutdown_function と組み合わせることで、発生したエラーを確実にログに保存することが可能となります。

set_error_handler等の詳細は以下を参照ください。

【PHP】エラー及び例外ハンドラーの定義

Follow me!

🔰【PHP開発ガイド】 エラーログを出力しよう” に対して1件のコメントがあります。

コメントは受け付けていません。