Tuesday, September 25, 2007

Proactive monitoring from linux terminal

As I was watching several google search keywords being used by most site visitors around this linux blog, I noticed several search keywords that led most users into this site

One of the recent google keyword search from CA,USA was:

~~~~~~~~~~~~~~~~~~~~~~~~~~~
linux watch ls directory
~~~~~~~~~~~~~~~~~~~~~~~~~~~

with equivalent google search URL:

google search keyword

and in turn, google replied with this URL

from one of my Linux SysAd blog entries as you can see.

However, the returned URL is about ls command usage but not watching directory and files proactively from display screen. Yes, it is somehow related but needs more command tweaking and another linux command.

So, I am creating this blog entry for monitoring directory and files proactively live from your display screen via command line terminal.

Here's several ways on how to watch live directory/files changes from your display screen.

Fire up your first terminal and issue
# cd /tmp
# watch ls -C

Then fireup your second terminal and issue the commands below
# cd /tmp
# touch A1
# touch A2
# touch Z1

During the creation of A1, A2, Z1 files using linux touch command, you need to switch and focus your screen display with the terminal which was first launched.

Here's a way to watch them change on the fly sorted by ctime or creation timestamp.

From the first terminal, issue
# watch ls -Cc

By default, 'watch' linux command refreshes every 2 seconds. You can modify it using -n watch parameter like so

# watch -n 0 ls -CC

which waits for 0.1 seconds for file changes to be displayed out from your screen terminal.


If you are only interested to file changes owned by user vertito, simply

# watch -n 0 'ls -Cc | grep vertito'


Note:
1. printing characters are being stripped by watch linux command
2. any terminal resize would not do screen repaint automatically but after the next watch update


Now, to watch your ethernet TX/RX packets from ethernet device using watch, simply

# watch -n 0 ifconfig eth0

The above is like the command line version of NIC network general properties in windoze. You can also use these when troubleshooting network card and ethernet link connectivity issues or any network congestion issue from your current broadcast network.


If somebody is transferring FTP files into one of your managed host or partition, or an external host is uploading large files into your shared SAMBA folder and you want to watch your current disk/partition space usage proactively while the transfer is occurring, simply

# watch -n 0 df -ah
# watch -n 0 du -sh


To watch your host memory and swap resources proactively using watch

# watch -n 0 free
# watch -n 0 cat /proc/swaps

partially similar to top linux command.


To watch your queued mail proactively from terminal (postfix or sendmail), simply
# watch -n 0 mailq


I guess I have monitored and reacted proactively from my blog site as well because of this entry name.

There's a lot more live monitoring of logs and statistics that can be combined with watch linux command, you can create your own combination of linux command and shell scripts too!

That's all folks, enjoy, thanks for the black box tip!

0 comments:

Sign up for PayPal and start accepting credit card payments instantly.
ILoveTux - howtos and news | About | Contact | TOS | Policy