Color encoding on the disk space script


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Color encoding on the disk space script
# 22  
Old 03-24-2014
Thanks Chubler XL Smilie

It worked fine!!! Now i can easily collect the list of space issues Smilie Thanks thanks thanks a lot!!!

I would like to appreciate all at this moment to made this code runs successfully!!

Final worked code is given below :

1) Code#1 : to retrive the output for the threshold reached filesystems and save it as .html format file.

Code:
df -g| awk 'NR>1&&($4+0)>60' | awk -v H=$(hostname) '
  BEGIN {print "<table border=\"1\" cellpadding=\"4\" style=\"border-collapse: collapse\">"}
  NR>1{
    $0= H " " $0
    print "<tr>"
    for( i = 1; i <= NF; i++ ) {
      printf "%s", "<td"
      if (i==5&&$i+0>80) printf " bgcolor=#FF3366"
      else if (i==5&&$i+0>60) printf " bgcolor=#FF6333"
      print ">" $i "</td>"
    }
    print "</tr>"
  }
  END { print "</table>" }' > server1.html

2) code#2 - to send the collection of .html file as a mailbody and send it to the email.
Code:
(
printf "From: DSReport@vasint.com \n"
printf "To: hariharan.sundaram@vasint.com\n"
printf "Subject:Disk Space Report\n"
printf "Content-Type: text/html\n"
printf "Content-Disposition: inline\n\n"
printf "<html>\n<body>\n"
cat server1.html
printf "<p></p>\n"
printf "</body>\n</html>\n" ) | sendmail -t

Resulted output is attached Smilie Thank you all. This thread can be closed!! Smilie
Color encoding on the disk space script-outputpng

Last edited by Kalaihari; 03-24-2014 at 07:50 PM.. Reason: Code error
# 23  
Old 03-24-2014
Good news, glad you are getting the results your after.

One possible issue is these two NR tests highlighted below could be throwing away the first line of your data:

Code:
df -g| awk 'NR>1&&($4+0)>60' | awk -v H=$(hostname) '
  BEGIN {print "<table border=\"1\" cellpadding=\"4\" style=\"border-collapse: collapse\">"}
  NR>1{

and should probably be replaced with:

Code:
df -g| awk -v H=$(hostname) '
  BEGIN {print "<table border=\"1\" cellpadding=\"4\" style=\"border-collapse: collapse\">"}
  NR>1&&($4+0)>60{

This User Gave Thanks to Chubler_XL For This Post:
# 24  
Old 03-25-2014
Sure chubler ,

I will try replacing it in and will let you know the final result.

Cheers
Hari
# 25  
Old 03-26-2014
Hi Chubler XL,

Thanks !!! Smilie IT WORKED .

One more small favour. Instead of bringing the servername in each line. Is that possible to make it as a first row of the table

I tried by giving the below command :

Code:
host=$(hostname)
        df -g |              awk -v host=`hostname`BEGIN {print "<table border=\"1\" cellpadding=\"4\" cellspacing=\"4\">"}
 NR>1&&($4+0)>60{

         print "<tr>"
                  print "<td>" print host
         
print "</td>"
print "</tr>"
print "<tr>"
    for( i = 1; i <= NF; i++ ) {
      printf "%s", "<td"
      if (i==5&&$i+0>80) printf " bgcolor=#FF2C2C"
      else if (i==5&&$i+0>60) printf " bgcolor=#FFF044"
      print ">" $i "</td>"
    }
    print "</tr>"
  }
  END { print "</table>" }' > server1.html

The output came for the filesystems spaces only , the first row of the table data was empty without any servername. Could you please help me to correct the above one alone as they don;t need the servernames to be mentioned in each and every table data.

Thanks
Hari
# 26  
Old 03-26-2014
You only want 1 line at the top of the table with host name right, best idea is to do this in the begin block like this:

Code:
df -g | awk -v host=`hostname` '
BEGIN {
    print "<table border=\"1\" cellpadding=\"4\" cellspacing=\"4\">"
    printf "<tr><td>%s</td></tr>\n", host
}
NR>1&&($4+0)>60{
    print "<tr>"
    for( i = 1; i <= NF; i++ ) {
    ...

This User Gave Thanks to Chubler_XL For This Post:
# 27  
Old 03-27-2014
Thanks Chubler_XL Smilie

Thank you for your worthful support given to me Smilie You are awesome!! Smilie

PFA output result Smilie

Cheeers
HARISmilie
Color encoding on the disk space script-ssspng
# 28  
Old 03-31-2014
Hi ChublerXL,

Last and it will definitely be the LAST help needed from you. It will be simple for you either.

I just need the headers to be noted in the email

like FILESYSTEM GB BLOCKS USED% MOUNTED ON to bring it in the email table.

Could yu please bring it up on the script .

And it needs a different color as the table header.


Kindly help me out with this last suggestion by my leads. Thanks in advance and sorry for bothering you Smilie

Thanks
Hari
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. UNIX for Beginners Questions & Answers

Disk space script

i have 3 servers and i am checking for the disk space of a specific mount-point, should not be more than 85 % considering example as below server1 mountpoint_1 has 70% diskutilization server2 mountpoint_1 has 80% diskutilization server3 mountpoint_1 has 7% diskutilization now when it... (6 Replies)
Discussion started by: abhaydas
6 Replies

2. Shell Programming and Scripting

I need help!! disk free space script

i want to write a shell script,when disk uses is 90% then automatically send a email to distribution list (group member)...... (1 Reply)
Discussion started by: sonu pandey
1 Replies

3. Solaris

Disk space being used up while running a script

We have a script which when run consumes the space of the disk from where it is being run. we have to kill this script every time to release space. why do this happen ? any work around please we are using solaris 10 P.S. : a part of the code will make some connection to the DB (1 Reply)
Discussion started by: chidori
1 Replies

4. Emergency UNIX and Linux Support

Disk space script output in color

I'm connecting to 15 servers in using ssh and storing disk space details of each server in a text file Finally , I'm emailing that text file at the particular id using mail -x . The report looks something like this. Filesystem size used avail capacity Mounted on /proc ... (30 Replies)
Discussion started by: ajaypatil_am
30 Replies

5. Shell Programming and Scripting

Disk Space Monitoring Script - OLD and NEW

It's the old thread "Disk Space Monitoring Script", modified for UNIX This is the new code: df -k | awk ' { if ( int($4) > 90) {subject = $1 " More than 90% disk usage. Used: " $4 email = "email@test.com" print subject cmd = "mailx -s \"" subject "\" " email cmd | getline... (4 Replies)
Discussion started by: dungureanu
4 Replies

6. Shell Programming and Scripting

Script for Disk space

:( Hi All, i have 4 linux server for which i want set up script to monitor the disk space ... here my problem is i want the output like graph... also it should reflect in monitor ...as non stop process.. can any one suggest me any way where i can implement the script? ... (3 Replies)
Discussion started by: Shahul
3 Replies

7. Shell Programming and Scripting

Please help - disk space check script

I have a disk space check script that uses an exceptions file, the only issue with the script is that it does not work with values higher than the FSMAX=85 value. I have a file system that is at 92% and it doesn't change, so I would like to add it to the exceptions file. The exceptions file format... (0 Replies)
Discussion started by: maddhadder71
0 Replies

8. Shell Programming and Scripting

Disk Space Monitoring Script

#!/bin/bash # Disk Space Monitoring for more than 95 % # and Sending Alerts by Mail if ; then `df -k |awk '$5 > 95 {print $1 " ----------- " $5}' |mailx -s "More than 95% disk usage in DEV" email@test.com'; else exit 0 fi I get the... (8 Replies)
Discussion started by: sriram003
8 Replies

9. Shell Programming and Scripting

Disk space script

Hi all, Can any one help me in making a disk space script in solaris 8/9 for instance i only want to get those partitions whose diskspace has exceed 70%. Any volunteer? Cheers! BR/asad (8 Replies)
Discussion started by: asadlone
8 Replies

10. Shell Programming and Scripting

Frustrating Disk space script

This my frustrating disk space script that is supposed to send me a email whenever the disk space reaches 90% but this has some problem that just would not work ..can anyone please tell me when im going wrong #!/bin/ksh sendemail=-1 space=`df -bhk /users/siebelserver |awk '{print$5}'` echo... (4 Replies)
Discussion started by: vivsiv
4 Replies
Login or Register to Ask a Question