HEX
Server: LiteSpeed
System: Linux s1049.use1.mysecurecloudhost.com 4.18.0-477.27.2.lve.el8.x86_64 #1 SMP Wed Oct 11 12:32:56 UTC 2023 x86_64
User: xedaptot (3356)
PHP: 8.3.31
Disabled: NONE
Upload Files
File: //proc/self/root/proc/thread-self/root/lib64/nagios/plugins/a2_yum_processes.shared
#!/bin/bash
#
# SysEng Project: https://jira.a2hosting.com/browse/SYSENG-1853
# Refactored - https://a2hosting.atlassian.net/browse/SYSENG-27232
#
yum_procs=( $(ps aux | grep /usr/bin/yum | grep -v grep | awk '{print $2}') )
yum_proc_count=( $(ps aux | grep /usr/bin/yum | grep -vc grep) )
yum_max_age=21600 # 6 hours
threshold=1


if [[ ! "$(hostname -f)" =~ (a2hosting.com|supercp.com)$ ]]; then
  # random sleep to prevent running on all VMs on the same node at the same time
  sleep $(( ( RANDOM % 120 )  + 1 ))
fi

if [[ "${yum_proc_count}" -gt "${threshold}" ]]; then
  for proc in ${yum_procs[@]}; do
    yum_proc_age=$(ps -p ${proc} -o etimes=)
    if [[ "${yum_proc_age}" -gt "${yum_max_age}" ]]; then
      echo "${count} processes running"
      exit 2
      break
    fi
  done
else
  echo "YUM processes - OK"
  exit 0
fi