Cpu and memory usage scripts


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Cpu and memory usage scripts
# 1  
Old 01-22-2017
Cpu and memory usage scripts

All

I am writing a script to generate an email when cpu and memory usage is high for 5 min continuously

help me urgent

I wrote below scritpt
Code:
LOAD=75.00
CPU_LOAD= 'sar -P all 300 5 |grep 'Average.all* '| awk -F " " '(print 100.0 -$NF)''
IF [{ $CPU_LOAD > $LOAD ]};
ECHO "pLEASE CHECK YOUR PROCESS ON YOUR $HOSTANME VALUE OF CPU ..." -S MAILX...

Is this best way to get 5 min output ?

also how to write for alerting high memory usage being high above75% for 5 min


Moderator's Comments:
Mod Comment Please use CODE tags as required by forum rules!

Last edited by RudiC; 01-22-2017 at 02:41 PM.. Reason: Added CODE tags.
# 2  
Old 01-22-2017
You could run the check from cron every minute and keep a count of the number of times the CPU is high in a dat file then you can warn via email if the CPU is high for more than x checks and also notify when it normalises again.

I run something like this myself:

Code:
#!/bin/bash
CHKFILE=/usr/wrk/CPU.dat
LIMIT=25
CMAX=5
USAGE=$(sar 5 6 | grep "Average")
IDLE=$(echo $USAGE | awk '{printf "%.0d", $8}')

# Read in number of past checks that have exceeded $LIMIT
[ -f $CHKFILE ] && read CPUCNT < $CHKFILE
CPUCNT=${CPUCNT:-0}

[ -z "$IDLE" ] && exit

if (( IDLE < LIMIT ))
then
   ((CPUCNT++))
   ((CPUCNT >= CMAX)) &&
   mailx -s "Sustained high CPU usage: $((100 - IDLE))%" anil@domain.com <<EOF
$(echo $USAGE | awk '{printf "User: %s%%, Nice: %s%%, System: %s%%, I/O Wait: %s%% Steal %s%%\n", $3, $4, $5, $6,$7,$8}')
EOF
else
   ((CPUCNT >= CMAX)) &&
   mailx -s "CPU usage normalised: $((100 - IDLE))%" anil@domain.com <<EOF
$(echo $USAGE | awk '{printf "User: %s%%, Nice: %s%%, System: %s%%, I/O Wait: %s%% Steal %s%%\n", $3, $4, $5, $6,$7,$8}')
   CPUCNT=0
EOF
fi

echo "$CPUCNT" > $CHKFILE

Edit:
In a similar way you can use sar -r 5 6 (5 readings averaged over 6 seconds each) to monitor memory usage - Look at column #4 for pct memory used.
The counts for number of readings exceeding limit could be stored in the same data file.

Last edited by Chubler_XL; 01-22-2017 at 04:21 PM..
Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. Shell Programming and Scripting

Get the memory and cpu usage

what is the best way to get the memory and cpu usage of a process on any system? this is relatively simple. however, i'm looking for a unified method that would work on linux, sunos, hpux, aix. ps -ef | egrep myprocess | awk '{print $4}' ---> there could be several instances of 'myprocess'... (3 Replies)
Discussion started by: SkySmart
3 Replies

2. UNIX for Advanced & Expert Users

How often should I monitor the CPU and memory usage ?

Hi all, When you monitor the CPU and memory usage, how often do you do it ? Do it too often or too rarely will both cause the problem. So does anyone have hand-on experience ? And for my case, the requirement says that when CPU usage is above X% or memory usage is above Y%, I should reject... (5 Replies)
Discussion started by: qiulang
5 Replies

3. AIX

How to monitor the IBM AIX server for I/O usage,memory usage,CPU usage,network..?

How to monitor the IBM AIX server for I/O usage, memory usage, CPU usage, network usage, storage usage? (3 Replies)
Discussion started by: laknar
3 Replies

4. UNIX for Dummies Questions & Answers

CPU Utilization and Memory Usage

Can any one suggest me, how to get the last week's (Last n weeks) average CPU utilization and Memory usage? (2 Replies)
Discussion started by: siba.s.nayak
2 Replies

5. Solaris

current CPU usage, memory usage, disk I/O oid(snmp)

Hi, I want to monitor the current cpu usage, monitor usage , disk I/o and network utlization for solaris using SNMP. I want the oids for above tasks. can you please tell me that Thank you (2 Replies)
Discussion started by: S_venkatesh
2 Replies

6. HP-UX

how can I find cpu usage memory usage swap usage and logical volume usage

how can I find cpu usage memory usage swap usage and I want to know CPU usage above X% and contiue Y times and memory usage above X % and contiue Y times my final destination is monitor process logical volume usage above X % and number of Logical voluage above can I not to... (3 Replies)
Discussion started by: alert0919
3 Replies

7. UNIX for Dummies Questions & Answers

cpu, memory and virtual memory usage

Hi All, Does anyone know what the best commands in the UNIX command line are for obtaining this info: current CPU usage memory usage virtual memory usage preferably with date and time parameters too? thanks ocelot (4 Replies)
Discussion started by: ocelot
4 Replies

8. UNIX for Dummies Questions & Answers

recording cpu and memory usage

Is there a way for me to record cpu and memory usage over time without buying and installing new software? I know I can use top to see the current state, but can I record that data somehow? (2 Replies)
Discussion started by: cshih31
2 Replies

9. Programming

CPU usage and memory usage

Please tell me solaris functions/api for getting following information 1- Function that tells how much memory used by current process 2- Function that tells how much memory used by all running processes 3- Function that tells how much CPU is used by current process 4- Function that tells how... (1 Reply)
Discussion started by: mansoorulhaq
1 Replies

10. Programming

Monitor CPU usage and Memory Usage

how can i monitor usages of CPU, Memory, Hard disk etc. under SUN Solaries through a c program or java program i want to store that data into database so i can show it graphically thanks in advance (2 Replies)
Discussion started by: Gajanad Bihani
2 Replies
Login or Register to Ask a Question