LoginSignup
42
51

More than 5 years have passed since last update.

MAMPでエラーログを確認する

Posted at

PHPでコードを書いていたら、画面が真っ白になってしまった。。。
私のようなペーペーにはよくあることです。
そんなときに使えるエラーログの確認方法の1つをまとめました。
エラーを起こしている場所が分かれば、修正方針も立てやすくなります。
ご参考にしていただければ嬉しく思います。
(試してはいませんが、XAMPPでも同様の手順だと思います。)

エラーログを吐いている場所を見つける

MAMPでPHPのエラーログを吐いている(出力している)ファイルは、php_error.logです。
他にもデフォルトでappache_error.logmysql_error.logがあります。
まずはこのファイルのあるディレクトリまで移動します。
ターミナルでの操作になります

$ cd MAMP/
$ cd logs/
$ ls

MAMPディレクトリ直下のlogsディレクトリの中にあります。
lsにてlogsの中にあるファイルを見ると、php_error.logがあったと思います。
php_error.logには、エラーログが発生した場合、リアルタイムでその情報が更新されていきます。
このファイルをtail -fコマンドを使って追従します。

エラーログをリアルタイムで追う

tailコマンドは、対象のファイルの末尾10行を表示します。
そのオプションである-fは、ファイルが更新されても常に追い続けてくれるものです。
(詳しくはこちらをご参考ください。→tailコマンドのオプション「f」と「F」

$ tail -f php_error.log

すると、直近10件のエラーログが表示されると思います。

試しに適当にエラーを発生させてみましょう。
すると、画面の内容が更新されるはずです(ターミナルはtail -fした画面のままで開いておいてください。)。

ただ、大量にエラーログが発生すると、「どこからどこまでが修正前で、どこからが修正後か分からない」ということになります。

クセとして、エラーログを確認したら、enterキーで改行するようにしましょう
改行してもファイルに悪影響はありません。
ただ、改行した場所から次のエラーログを出力していくだけです。


↑少し見やすくなったと思います。
スペースより上が修正前、スペースより下が修正後に発生したエラーです。

おわりに

MAMPに限らず、多くの開発環境、フレームワークではログを発生させる仕組みがあります。
(私も多くを知っているわけではありませんが。)
まずは、どこでエラーログを出力しているか確認して、のぞいてみましょう。
(そのときにtail -fコマンドが使えます。)

42
51
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
42
51