$ cpu_pid_sav=0 $ cpu_thresh=85 $check_cpu_hog: $! $ wo "Checking for CPU hog..." $ purge/nolog cpu_%%%%%%%%.%%%%%%%% $ monitor process/topcpu- /sum=cpu_'pid'.'pid' - /end="''f$cvtime("+00:00:05","ABSOLUTE")'"- /nodisp $ open/read cpufile cpu_'pid'.'pid' $ read/end=cpufile_err cpufile cpurec $ read/end=cpufile_err cpufile cpurec $ read/end=cpufile_err cpufile cpurec $ read/end=cpufile_err cpufile cpurec $ read/end=cpufile_err cpufile cpurec $ read/end=cpufile_err cpufile cpurec $ read/end=cpufile_err cpufile cpurec $ read/end=cpufile_err cpufile cpurec $! SH SYM CPUREC $ cpu_pid=f$extract(1,8,cpurec) $ cpu_amount=f$extract(33,3,cpurec) $ cpu_amount=f$integer(cpu_amount) $ close cpufile $ delete cpu_'pid'.'pid; $ if cpu_amount .ge. cpu_thresh $ then $ if cpu_pid .eqs. cpu_pid_sav $ then $ wo "***Process ''cpu_pid' >''cpu_thresh' % cpu for 15 mins (current ''cpu_amount'%)" $ else $ cpu_pid_sav=cpu_pid $ wo "...potential cpu hog - ''cpu_pid' (current ''cpu_amount'%)" $ endif $ else $ cpu_pid_sav = "" $ wo "...no cpu hog" $ endif $ wait 00:15:00.00 $ goto check_cpu_hog $! $cpufile_err: $ wo "Unexpected termination to monitor file" $ close cpufile