PHP ログをファイルに出力する

error_log関数でエラーログを出力

エラーログなどを任意のファイルに等に出力する場合は「error_log」関数を使用すると便利です。error_log関数は任意のメッセージをログファイルに出力したり、メール送信できます

error_log (PHP 4, PHP 5, PHP 7)
error_log — 定義されたエラー処理ルーチンにエラーメッセージを送信する

https://www.php.net/manual/ja/function.error-log.php

error_log関数の書き方

error_log ( string $message [, int $message_type = 0 [, string $destination [, string $extra_headers ]]] ) : bool

error_logで使用できるメッセージタイプ

メッセージタイプ 詳細
0 php.iniで指定しているログファイル(error_log =)にメッセージを出力する。
1 第3引数(destination)で指定したメールアドレスにメール送信できます
2 ※このオプションは使用しません
3 第3引数(destination)で指定したファイル名にエラーメッセージが追加できます
エラーメッセージの最後に改行が追加されます。また、改行するには改行コードが追記する必要があります」
4 エラーメッセージをSAPIログ出力ハンドラに送信します。

error_log関数のサンプル

php.iniで指定しているログファイル(error_log =)に任意のエラーメッセージを出力する場合

error_log("〇〇の処理で失敗しました", 0);

任意のエラーメッセージをメールアドレスにメール送信する
error_log("〇〇の処理で失敗しました", 1,"hoge@example.com");

指定したファイル名に任意のエラーメッセージが追加します
$text = "PHP処理で失敗しました";

ErrLog($text);

function  ErrLog($text){
  $path = '/var/tmp/error_test.log';
  $currentdate = date("m/d H:i:s");

  $logmessages = $currentdate . " : " . $text;
  error_log($logmessages . "\n", 3, $path);
}

任意のファイルにエラーメッセージを出力されています
$ cat /var/tmp/error_test.log 
07/23 16:15:00 : PHP処理で失敗しました
07/25 11:10:10 : PHP処理で失敗しました

 

スポンサーリンク