Related \nDocumentation | \nVersion \nof up.time \naffected | \nAffected \nPlatforms | \n
\n | All | \nAll | \n
Article \nContents \n
\n \n\n \n
Overview
\n \nWhen a service outage occurs, up.time 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 \nwill be 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:
\n \n-
\n
- SMS modem-based \nalerting \n
- TAPI modem alerting \n
- Internal Problem \nTicket creation system alerts \n
- On call team \nrotation \n
- Customized alert \nemail body formatting \n \n
\n \n
How custom alert scripts work
\n \nCustom 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 up.time will run when a service outage occurs. You control the actions that the script or executable takes, which provides full control over how up.time sends out alert notifications during a service outage.
\n \nNote: For
\nWindows alert scripts, the path used must use UNIX-style / instead of \ and must be quoted if your path contains spaces. For example:
\n "C:/Program
\nFiles/uptime software/uptime/scripts/my_custom_alerter.bat"
When up.time 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 \nexecutable is run once for each up.time user that will be notified using this alert.
\n \nThe environment variables passed to the alert script and their meanings are included below: \n \n
Variable | \nDescription | \nExample \nContents | \n
Service \nMessage Fields - These will remain constant for each \nexecution of your script associated with a single service outage. | \n||
UPTIME_ALERTTYPE | \nThis is the \ntype of alert message | \nOne of: \nProblem, Recovery | \n
UPTIME_HOSTNAME | \nThe name of the \nhost that the service outage is associated with. | \noracle_server | \n
UPTIME_HOSTSTATUS | \nThe status of \nthe host that the service outage is associated with. | \nOne of: OK, \nWARN, CRIT, MAINT, UNKNOWN | \n
UPTIME_MESSAGE | \nThe output \nsection of the alert. | \nType: Problem \nService: db_status (CRIT/threshold error) \nHost: oracle_db (OK) |
\n
UPTIME_SUBJECT | \nThe subject \nline that would normally appear in an emailed alert for this alert. | \nUptime Alert - \nUPTIME-oracle_server -> CRIT | \n
UPTIME_SVCNAME | \nThe name of the \nservice monitor generating this alert. | \nUPTIME-oracle_server | \n
UPTIME_SVCOUTPUT | \nThe output of \nthe service monitor generating this alert. | \nprocessoccurrences: \n0 is less than 1 | \n
UPTIME_SVCSTATUS | \nThe current \nstatus of the service monitor generating this alert. | \nOne of: OK, \nWARN, CRIT, MAINT, UNKNOWN. | \n
UPTIME_DATETIME | \nThe date and \ntime of the alert. | \nMon May 15 \n11:12:22 EDT 2006 | \n
User \nrelated fields - these will change for each user that is \npassed to your script, the script will be executed once for each user \nthat should be notified. | \n||
UPTIME_CONTACTLOGINNAME | \nThe login name \nof the user who is being notified. | \ntestuser | \n
UPTIME_DESKTOPHOST | \nThe windows \ndesktop hostname setting for the user being notified. | \ntestuser-pc | \n
UPTIME_DESKTOPWORKGROUP | \nThe windows \nworkgroup for the desktop host specified above. | \nWORKGROUP | \n
UPTIME_EMAIL | \nThe email \naddress associated with the user who is being notified. | \n[email protected] | \n
UPTIME_MOBILE | \nThe pager \nnumber associated with the user being notified. | \n[email protected] | \n
General \nfields | \n||
UPTIME_SCRIPT | \nThe name of the \ncurrent script being executed. | \nC:/Program \nFiles/uptime software/uptime4/scripts/my_custom_alerter.bat | \n
UPTIME_SMTPHELOSTRING | \nThe HELO string \nused in your SMTP server configuration. | \n\n |
UPTIME_SMTPPASSWORD | \nThe password \nused from authentication in your SMTP server configuration. | \n\n |
UPTIME_SMTPPORT | \nThe server port \nused in your SMTP server configuration. | \n\n |
UPTIME_SMTPSENDER | \nThe sender \naddress string used in your SMTP server configuration. | \n\n |
UPTIME_SMTPSERVER | \nThe server \nhostname used in your SMTP server configuration. | \n\n |
UPTIME_SMTPUSER | \nThe user name \nused for authentication in your SMTP server configuration. | \n\n |
\n \n
Environment Variable Examples
\n
How the script or executable uses environment \nvariables will vary depending on the language you have used to write your script or executable. The following examples illustrate how environment variables are accessed in several common languages:
\n \nLanguage | \nCommon \nmethods of accessing environment variables. | \n
Perl | \n
\n Use of the ENV \narray to access environment variables with Perl. For example: \n #!/usr/bin/perl |
\n
PHP | \nWhen run from
\nthe command line, use the getenv()
\nfunction to access environment variables within PHP. For example:
\n «?php |
\n
Bash and Ksh | \nBash and Ksh
\nenable you to access local environment variables just like any other
\nlocal variable. For example:
\n #!/bin/bash |
\n
Batch File | \nAdd the % symbol around
\nthe names of environment variables in Windows batch files. For example:
\n echo %UPTIME_EMAIL% |
\n
VB Script | \nUse the the
\n oShell.Environment
\nlookup function to access environment variables with
\nVB Script. For example:
\n Dim email, mobile |
\n