Feature

A local program in any programming language (e.g. python, shell, java, etc) can execute a command on a local server 

Configure

References


Workspace Field Label

Configuration Key

DescriptionPossible ValuesDefault Value
NamenameUnique name for the actionString
Working DirectoryworkingDirectoryWorking directory of command or script, can use context variablesString
ProgramcommandCommand/Program to execute, example: powershell.exe , /bin/bash, can use context variablesString
ArgumentsargumentsArguments to pass to the command, can use context variablesString, list of strings
Quote ArgumentsquoteArgumentsif set, will quote arguments that contain spaces or quotesBoolean
ScriptscriptScript name to execute, as defined under Automation > ScriptString
Run on schedule?schedule*Calculated Field* if set to true, allows schedule cron expression to be definedBoolean
Triggered By SLAs
*Calculated Field* Collection of SLAs this action is configured for

TimeouttimeoutExecution timeout in secondsInteger
Exit ValueexitValueExpected exit value of command and scriptInteger
Logging EnabledloggingEnabled

Boolean


Notify On SuccessnotifyOnSuccess

Boolean


Notify On Failure

notifyOnFailure

Boolean


Execution CountlimitCount

Used in combination with limitInterval to define upper limit on how many times to execute this action.

Integer


Execution IntervallimitInterval

Used in combination with limitCount to defines interval during which upper limit applies.

String, one of the following values:
YEAR, MONTH, WEEK, DAY, HOUR, MINUTE



references

*Advanced Field* References to configuration entries associated with this action.

Allows other configuration items such as credentials to be used within the Template as a key/item pair that can then be used within the Alert Template, eg. ยง{Credentials.username} .*option1*

Also allows for direct key/value references to be defined that do not reference other configuration items. *option2*

name - unique reference name
eg. Credentials
key *option 1*- Germain config collection key
eg. germain.apm.monitoringConfig.credentials
itemName *option 1* - Germain config item key
eg. SSHProdCredentials
Value *option 2* - hard value for reference
Password1


Example - Configure a local program action - Windows service restart

Navigate to Automation > Local Program

In this screen you'll be able to easily spot which Local Program actions are available and configured to trigger on SLAs
Clicking on an existing action will bring you to the respective configuration page.
In order to create a new local program action we'll click the + symbol up top which will bring up our Local Program Wizard

Step 1 - Local Program


Type in the action name, Windows-Service-Restart-Local, and click Next

Step 2 - Command

Type in the Program to Execute, powershell.exe and add a single argument Restart-Service #ServiceName#

Click Next

Step 3 - Schedule

Since we want this action to execute once a SLA threshold is breached. we will skip this step, press Next

Step 4 - SLA

For this example, we would restart our Windows service once the Memory Usage SLA has been breached.
Click Finish.

We now have a local action configured that restarts a Windows Service on our Enterprise Server once the Memory Usage SLA is breached.

The above example while simplified showcases how simple it would be to configure additional automation using the Germain. For more robust scenarios you would likely want the local program to execute over a remote host ( which in powershell could be achieved by passing the -ComputerName argument and defined a SLA specific for the target server.