Agent class constructor
Syntax
The agent class constructor must begin with the following declaration:
class Agent(NAE):
def __init__(self):
The name of the constructor,
Agent
, is recommended, but using a different name does not result in an error.
Description
The main body of the script is the agent class constructor. The agent class constructor can contain:
Monitors
Conditions
Rules
Actions
Agent functions such as
Graph
,on_parameter_change
, andBaseline
.Analytics Data Collections (ADCs)
Example
Example of an agent class constructor:
class Agent(NAE):
def __init__(self):
uri1 = '/rest/v1/system/subsystems/*/*/power_supplies/*?attributes=status'
self.m1 = Monitor(uri1, name='System CPU utilization')
self.r1 = Rule('High CPU utilization')
self.r1.condition('{} > {}', [self.m1, self.params['threshold']])
self.r1.action(self.action_high_cpu)
self.r1.action("CLI","top cpu")
self.r1.action("SHELL","ps -ef")
def action_high_cpu(self, event):
self.set_alert_level(AlertLevel.CRITICAL)
# CPU value when the Condition met
cpu = event["value"]
ActionSyslog("CPU Utilization at %s%." % cpu)
ActionCLI("top cpu")
ActionShell("ps -ef")