-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmemory-alert.sh
More file actions
executable file
·25 lines (22 loc) · 1.17 KB
/
memory-alert.sh
File metadata and controls
executable file
·25 lines (22 loc) · 1.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#!/bin/sh
ramusage=$(free | awk '/Mem/{printf("RAM Usage: %.2f\n"), $3/$2*100}'| awk '{print int($3)}')
if [ "$ramusage" -gt 90 ]; then
#SUBJECT="ATTENTION: Memory Utilization is High on $(hostname) at $(date)"
SUBJECT="Critical Memory Utilization on Oroville Production Servername $(hostname) at $(date)"
MESSAGE="/tmp/memory_mail.out"
TO="emailaddress@emailserver.com"
echo "Memory Current Usage is: $ramusage%" >> $MESSAGE
echo "" >> $MESSAGE
echo "------------------------------------------------------------------" >> $MESSAGE
echo "Top Memory Consuming Process Using top command" >> $MESSAGE
echo "------------------------------------------------------------------" >> $MESSAGE
# echo "$(top -b -o +%MEM | head -n 20)" >> $MESSAGE
echo "$(top -b | head -n 20)" >> $MESSAGE
echo "" >> $MESSAGE
echo "------------------------------------------------------------------" >> $MESSAGE
echo "Top Memory Consuming Process Using ps command" >> $MESSAGE
echo "------------------------------------------------------------------" >> $MESSAGE
echo "$(ps -eo pid,ppid,%mem,%cpu,cmd --sort=-%mem | head)" >> $MESSAGE
mail -s "$SUBJECT" "$TO" < $MESSAGE
rm /tmp/memory_mail.out
fi