I have a internal business group that would like the System Agent to shutdown if their servers CPU utilization reaches 95-100%.
Is there any parameters that can be set for the agent to do this, similar to how the older agents would shutdown on low disk space.
Also, is there something similar when memory utilization has reached 100% on the agent server.
Release : 12.1
There are no current agent side settings that would have the agent shut itself down should the CPU utilization or memory reach a specific threshold. As you noted there are options like that for low diskspace only.
If you are concerned with an agent getting overloaded, AE sending too many jobs to it, then you might consider implementing AutoSys load balancing options to prevent more than x number of jobs being sent to or running on an agent at any given time. See options job and machine definition setting: job_load, max_load, priority.
If you wish for product mgmt to consider looking into cpu and memory threshold monitoring and agent self shutdown might be consider for some future release we recommend you open an enhancement request (an idea) on the communities website. The customer base votes ideas up or down, product mgmt then reviews them and will take them into consideration for future development cycles.
Additionally you might look into trying to implement omcpu job types.
Something like...
job1 (omcpu) watching for the upper cpu boundry.
when it is breached the job runs to success.
job2 (cmd) runs based on success of job1.
job2 executes a script which toggles the machine offline to
prevent more jobs from going there and also kick off
another job to watch for cpu activity to lessen.
sendevent -E MACH_OFFLINE -n <agent>
sendevent -E FORCE_STARTJOB -J job3
job3 (omcpu) watching for cpu activity to drop.
when it does the job runs to success.
job4 (cmd) runs based on success of job3.
job4 toggles the machine back online and starts up job1 to resume monitoring.
sendevent -E MACH_ONLINE -n <agent>
sendevent -E FORCE_STARTJOB -J job1
You will have to play around with the boundry and intervals so it is worthwhile without being too sensitive/reactive.
And again, consider posting your idea on the communities, you may find some other customer implemented something similar and may share with you their example or experience... and of course making product mgmt aware of the request and business need for such a thing. Obviously the above is not a perfect solution as it would require 4 jobs per agent... If you are only needing to do this for 1 or 2 agents that would be fine but to do this for 300-3000 agents, it would not make sense.