Apache server logo

How to use the Apache error log for debug

Part of your job as a programmer is to track bugs, to find errors or just the check some backend results.

Some people find it hard to use the debuggers or they can’t be installed remotly. So you can choose this small cheat to do this job.

This can be done by manipulating and watching the log files of your Web server.

In the Apache web server you can configure your own error log files. You can set different error logs for your different virtual hosts

Example how to set access and error logs in Apache

Example how to set access and error logs in Apache

Тhe simplest command to watch it in real-time is by typing in console:

tail -f /var/log/apache2/error.log

(This is the default Apache logs path)

Extended version

To use the extended version you have to add this row in your code:

error_log(print_r('<track_word> '$var_to_print.json_encode(, JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES),1));

You must set the same ‘track_word’ in both places.

We use json_encode because we have to convert all the object or arrays to log compatible look

tail -f /var/log/apache2/wherror.log | grep --line-buffered <track_word> | sed 's/\\n/\n/g'

Paste the code above in the console and run your PHP code. Enjoy

Hits: 35

Share area

Leave a Reply

Your email address will not be published. Required fields are marked *