HEX
Server: nginx/1.29.3
System: Linux 11979.bigscoots-wpo.com 6.8.0-88-generic #89-Ubuntu SMP PREEMPT_DYNAMIC Sat Oct 11 01:02:46 UTC 2025 x86_64
User: nginx (1068)
PHP: 7.4.33
Disabled: exec,system,passthru,shell_exec,proc_open,proc_close,popen,show_source,cmd# Do not modify this line # 1684243876
Upload Files
File: //proc/self/root/bigscoots/mon_mem.sh
#!/bin/bash

PATH=/usr/lib64/ccache:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin

threshold=10

if [ -f /root/.bigscoots/mem.threshold ]
then
	threshold=$(head -1 /root/.bigscoots/mem.threshold | awk '{print $1}')
fi

free > /root/.bigscoots/mem

serverip=$($(which ifconfig) | grep -Eo 'inet (addr:)?([0-9]*\.){3}[0-9]*' | grep -Eo '([0-9]*\.){3}[0-9]*' | grep -v '127.0.0.1' | head -1)
memused=$(awk '/Mem/{printf("RAM Usage: %.2f%\n"), $7/$2*100}' /root/.bigscoots/mem | awk '{print $3}' | cut -d"." -f1)

if [ "$memused" -lt "$threshold" ]
then
	free > /root/.bigscoots/mem
	memused=$(awk '/Mem/{printf("RAM Usage: %.2f%\n"), $7/$2*100}' /root/.bigscoots/mem | awk '{print $3}' | cut -d"." -f1)
	if [ "$memused" -lt "$threshold" ]
	then
		CTIME=$(date +%Y-%m-%d-%H%M%S)
		if [ -f /root/.bigscoots/counters/mmaxmory ]
		then
			echo "$(date '+%m%d%Y')" >> /root/.bigscoots/counters/maxmemory
		else
			mkdir -p /root/.bigscoots/counters
			echo "$(date '+%m%d%Y')" >> /root/.bigscoots/counters/maxmemory
		fi

		ps aux > /root/.bigscoots/logs/lowmem-"${CTIME}"-ps.log
		top -b -n 1 -o %MEM -c > /root/.bigscoots/logs/lowmem-"${CTIME}"-top.log
		free -m > /root/.bigscoots/logs/lowmem-"${CTIME}"-free.log
		mysqladmin proc -v status > /root/.bigscoots/logs/lowmem-"${CTIME}"-mysqlproc.log
		curl -sq "http://localhost/phpstatus?full" -o /root/.bigscoots/logs/lowmem-"${CTIME}"-phpstatus.log
		top -b -n 1 -o %MEM -c > /root/.bigscoots/logs/lowmem-"${CTIME}"-top.log

		echo "Useful Information

Out of $(free -g | grep Mem: | awk '{print $2}')GB of Memory:

		" > /root/.bigscoots/logs/lowmem-"${CTIME}"-USEFUL.log

		echo "PHP-FPM Child Total Process Count: $(grep 'php-fpm: p' /root/.bigscoots/logs/lowmem-${CTIME}-top.log | grep -v grep | wc -l)
PHP-FPM Child Total Process Usage(Memory): $(grep 'php-fpm: p' /root/.bigscoots/logs/lowmem-${CTIME}-top.log | grep -v grep | awk '{ total += $6; count++ } END { print total/1024 }') MB
PHP-FPM Child Average Process Usage(Memory): $(grep 'php-fpm: p' /root/.bigscoots/logs/lowmem-${CTIME}-top.log | grep -v grep | awk '{ total += $6; count++ } END { print total/count/1024 }') MB
		" >> /root/.bigscoots/logs/lowmem-"${CTIME}"-USEFUL.log
		
		bash /bigscoots/general/slack.sh "#server-alerts" ":warning: $(hostname) -  ${serverip} - Memory Usage has reached 90% - Check logs /root/.bigscoots/logs/lowmem-${CTIME} \n Triggered $(grep -c $(date '+%m%d%Y') /root/.bigscoots/counters/maxmemory) times today. \n Triggered $(wc /root/.bigscoots/counters/maxmemory -l | awk '{print $1}') times total. \n \`\`\`$(head -1 /root/.bigscoots/logs/lowmem-"${CTIME}"-free.log) \n $(head -2 /root/.bigscoots/logs/lowmem-"${CTIME}"-free.log | tail -1) \n $(head -1 /root/.bigscoots/mem)\n$(head -2 /root/.bigscoots/mem | tail -1)\n$(tail -1 /root/.bigscoots/mem)\`\`\`"
		crontab -l | grep -v '/bigscoots/mon_mem.sh' | crontab -
		sleep 900
		if ! crontab -l | grep -q '/bigscoots/mon_mem.sh'
		then
			crontab -l | { cat; echo "* * * * * bash /bigscoots/mon_mem.sh"; } | crontab -
		fi 
	fi
fi