When a service outage occurs, Uptime Infrastructure Monitor can generate an alert in a number of ways including sending an email, opening a Windows pop-up, or initiating a pager message. You can also define your own script alert that is executed on the monitoring station when an outage occurs. You can use the Script Alert option to create custom alerting methods that fit your exact needs.
Some examples of custom alerting implementations include:
- SMS modem-based alerting
- TAPI modem alerting
- Internal Problem Ticket creation system alerts
- On call team rotation
- Customized alert email body formatting
How custom alert scripts work
Custom alert scripts are defined with the Script Alert option on the Alert Profile page. The script is a path to a script or executable on the monitoring station system that UIM runs when a service outage occurs. You control the actions that the script or executable takes, which provides full control over how Uptime Infrastructure Monitor sends out alert notifications during a service outage.
For Windows alert scripts, the path used must use UNIX-style / instead of \ and must be quoted if your path contains spaces. For example:
C:/Program Files/uptime software/uptime/scripts/my_custom_alerter.bat
When UIM runs the script or executable, it passes on information about the specific service outage that triggered the alert. This information is passed using the system environment variables that are local to each execution of the recovery script. The script or executable is run once for each UIM user that is notified using this alert.
The environment variables passed to the alert script and their meanings are included in the following table but for the latest documentation please refer to the Alert profile and Action profile variables topics in the main UIM Help documentation.
Variable | Description | Example Contents |
---|---|---|
Service Message Fields These fields remain constant for each execution of your script associated with a single service outage. | ||
UPTIME_ALERTTYPE | Type of alert message. | One of: Problem, Recovery |
UPTIME_HOSTNAME | Name of the host associated with the service outage. | oracle_server |
UPTIME_HOSTSTATUS | Status of the host associated with the service outage. | One of: OK, WARN, CRIT, MAINT, UNKNOWN |
UPTIME_MESSAGE | Output selection of the alert. | Type: Problem Service: db_status (CRIT/threshold error) Host: orale_db (OK) |
UPTIME_SUBJECT | Subject line that normally appears in the email message for this alert. | Uptime Alert: UPTIME-oracle_server -> CRIT |
UPTIME_SVCNAME | Name of the service monitor generating this alert. | UPTIME-oracle_server |
UPTIME_SVCOUTPUT | Output of the service monitor generating this alert. | processoccurrences: 0 is less than 1 |
UPTIME_SVCSTATUS | Current status of the service monitor generating this alert. | One of: OK, WARN, CRIT, MAINT, UNKNOWN |
UPTIME_DATETIME | Date and time of the alert. | Mon May 15 11:12:22 CDT 2024 |
User-Related Fields These fields change for each user passed to your script. The script is executed once for each user that you want notified. | ||
UPTIME_CONTACTLOGINNAME | Login name of the notified user account. | testuser |
UPTIME_DESKTOPHOST | Windows desktop homename setting of the notified user account. | testuser-pc |
UPTIME_DESKTOPWORKGROUP | Windows workgroup for the desktop host specified above. | WORKGROUP |
UPTIME_EMAIL | Email address of the notified user account. | testuser@yourcompany.com |
UPTIME_MOBILE | Pager number of the notified user account. | 1234123@sms.mynetwork.com |
General Fields | ||
UPTIME_SCRIPT | Name of the script being executed. | C:/Program Files/uptime software/uptime710/scripts/my_custom_alerter.bat |
UPTIME_SMTPHELOSTRING | HELO string used in your SMTP server configuration. | |
UPTIME_SMTPPASSWORD | Password used from authentication in your SMTP server configuration. | |
UPTIME_SMTPPORT | Server port used in your SMTP server configuration. | |
UPTIME_SMTPSENDER | Sender address string used in your SMTP server configuration. | |
UPTIME_SMTPSERVER | Server hostname used in your SMTP server configuration. | |
UPTIME_SMTPUSER | User name used for authentication in your SMTP server configuration. |
Environment variable examples
How the script or executable uses environment variables vary depending on the language used to write your script or executable. The following examples illustrate how environment variables are accessed in several common languages.
Language | Common methods of accessing environment variables |
---|---|
Perl | Use of the ENV array to access environment variables with Perl. For example:
|
PHP | When run from the command line, use the getenv() function to access environment variables within PHP. For example:
|
Bash and Ksh | Bash and Ksh enable you to access local environment variables just like any other local variable. For example:
|
Batch File | Add the % symbol around the names of environment variables in Windows batch files. For example:
|
VB Script | Use the the
|