V1rus Private
User / IP
:
216.73.217.108
Host / Server
:
190.92.174.125 / aerosofthealthcare.com
System
:
Linux s3739.bom1.stableserver.net 4.18.0-513.24.1.lve.2.el8.x86_64 #1 SMP Fri May 24 12:42:50 UTC 2024 x86_64
Cmd
|
Upload
|
Mass Deface
|
Create
|
Sym
:
/
lib64
/
nagios
/
plugins
/
Viewing: check_meminfo
#!/bin/bash # Nagios check_meminfo script # 2023 (C) WorldHost Group # Author: Tsvetan Gerov <tsvetan@wordlhost.group> # Version 0.2 MEMINFO="/proc/meminfo" # Default values MEMWARNING="90" MEMCRITICAL="95" SWAPWARNING="70" SWAPCRITICAL="80" APPSWARNING="60" APPSCRITICAL="70" Help() { # Display Help echo "check_meminfo" echo echo "Syntax: check_meminfo [-w|-c|-W|-C]-a|-s|-h" echo "options:" echo "w Warning percentage for memory" echo "c Critical percentage for memory". echo "W Warning percentage for swap" echo "C Critical percentage for swap" echo "a Warning percentage for apps" echo "s Critical percentage for apps" echo "h Print this help" echo exit } getMemory() { awk '/^MemTotal:/ {total = $2;} /^MemFree:/ {free = $2;} /^MemAvailable:/ {avail = $2;} /^Buffers:/ {buffers = $2;} /^Cached:/ {cached = $2; if (avail == "") avail = free + buffers + cached; printf "%d\n", (total - avail) / total * 100;}' $MEMINFO } getSwap() { TOTALSWAP=$(grep SwapTotal /proc/meminfo | awk '{print$2}') if [ $TOTALSWAP -eq "0" ]; then echo "0" else awk '/^SwapCached:/ {cached = $2;} /^SwapTotal:/ {total = $2;} /^SwapFree:/ {free = $2; printf "%d\n", (total - free - cache) / total * 100}' $MEMINFO fi } getApps() { awk '/^MemTotal:/ {total = $2;} /^MemFree:/ {free = $2;} /^Buffers:/ {buffer = $2;} /^Cached:/ {cached = $2;} /^Slab:/ {slab = $2;} /^PageTables:/ {pagetables = $2;} /^SwapCached:/ {swapcache = $2; printf "%d\n", (total - free - buffer -cached - slab - pagetables - swapcache) / total * 100}' $MEMINFO } while getopts w:c:W:C:a:s:h flag do case "${flag}" in w) MEMWARNING=${OPTARG};; c) MEMCRITICAL=${OPTARG};; W) SWAPWARNING=${OPTARG};; C) SWAPCRITICAL=${OPTARG};; a) APPSWARNING=${OPTARG};; s) APPSCRITICAL=${OPTARG};; h) Help;; esac done # CRITICAL if [ $(getMemory) -gt $MEMCRITICAL ]; then echo "CRITICAL: RAM Usage: $(getMemory)/100%" exit 2 elif [ $(getApps) -gt $APPSCRITICAL ]; then echo "CRITICAL: Memory APPs Usage: $(getApps)/100%" exit 2 elif [ $(getSwap) -gt $SWAPCRITICAL ]; then echo "CRITICAL: SWAP Usage: $(getSwap)/100%" exit 2 # WARNING elif [ $(getMemory) -gt $MEMWARNING ]; then echo "WARNING: RAM Usage: $(getMemory)/100%" exit 1 elif [ $(getApps) -gt $APPSWARNING ]; then echo "WARNING: Memory APPs: $(getApps)/100%" exit 1 elif [ $(getSwap) -gt $SWAPWARNING ]; then echo "WARNING: SWAP Usage: $(getSwap)/100%" exit 1 # OK else echo "OK: RAM: $(getMemory)/100% APPS: $(getApps)/100% SWAP: $(getSwap)/100%" exit 0 fi
Coded With 💗 by
HanzOFC