Monitoring Log files in Realtime on Unix

by Pete Freitag

Here's a handy trick for monitoring log files on unix, linux or mac's.

SSH on to your server then type:

tail -f /var/log/httpd/access_log

The above command will show you the last few lines of the log file, this is no surprise if your familiar with tail command. However the -f option will print to your console any new lines added to the log file in realtime. So you can get a live view of the traffic on your server.

Comments

Flo

Multitail is even more useful. It displays multiple logfiles in split windows on your console and can even merge several logfiles in one view or show you program output (eg. lsof -i) Give it a go!

Bernie Dolan

I've also found it helpful to use grep if you want to filter your "realtime" tailed output by IP address, page name, etc. tail -f /var/log/httpd/access_log | grep '192.168.1.100'

thad

works on windows too, if you install cygwin and add C:\cygwin\bin to your path - http://www.cygwin.com/

leofox

How do tail on a log file that will be created in the current working directory?

Joe

This is fantastic. Thanks for the tip :)

Vikas

This doesnt work in case of rolling logs. As soon as the log is archieved , the command still keeps the pointer on the archieved file and not on the new file. the following script is good and can help monitoring rolling logs. http://www.buggybread.com/2012/03/log-monitoring-shell-script-to-send.html