ITM 6 Expert Advice

by Nick Lansdowne

ITM 6 expert advice has the potential to empower operators to resolve problems independently, without engaging the subject matter experts or escalating problems. However, to ensure useability, it is key that the informtion is accurate and up-to-date. The ITM Siutation editor does facilitate the creation of static pages of limited size, but more flexibility can be gained by linking through to context senstitive information utilising a web-server. In this manner expert advise can be maintained in an external database maintained by the subject matter expert, and pages dynamically created on-demand. Additionally, the advice displayed can include server or time dependent information, as escalation routes or out-of-hours contacts may change dependent these parameters.

This tip will explain the ITM configuration to facilitate passing specific information from a situation event instance to a web-server. In this scenario a very basic CGI script is used to demonstate the attributes passed to the web-server.

Static Expert Advice

Editing a situation, through the situation editor, reveals the Expert Advice tab. A hardcoded html link can be added to this entry box, as demonstrated below. However, this expert advice links to a static web-page, and hence the advice is common to all instances of that situation.

Static LInk

Basic Dynamic Expert Advice

To create a dynamic link, using an attribute from a situation event instance, requires the attribute value to be assigned to a variable prior to calling the html link. This is demonstrated below:

sitName = $EVENT:ATTRIBUTE.ISITSTSH.SITNAME$;

This variable can then be referenced within the html link definition. Note that the static text is within quotes, the variable is outside of the quotes, and attached with the plus-sign “+”.

"  http://w2k3se-itm-01/cgi-bin/itm.pl?situationName="+sitName

The full syntax is demonstrated in the figure below:

Basic  Dynamic Link

This method passes the situation name to the web-server using a GET request. This is a HTML standard, with the attribute/value pair defined after the “?”. For example, for a situation name Custom_Missing_Process, the HTML link will be generated as follows:

  http://w2k3se-itm01/cgi-bin/itm.pl?sitName=Custom_Missing_Process

A CGI script on the web-server can extract the attribute name/value pair, and dynamically generate a web-page based on the information.

For an Apache web-server, the text after the “?” is assigned to the local environment variable QUERY_STRING, accessible to the CGI script, in this example itm.pl. The sample CGI script, below, extracts the attribute/value pairs from the environment variable and creates the associative array, or hash, %get in the sub-routine processGet. The %get array is then printed in the main body of the script.

#!c:/perl/bin/Perl.exe
# print "GET" request variables and values

print "Content-type: text/plain; charset=iso-8859-1nn";

&processGet();

#Print get attribute/value paris
while ( ($var, $val) = each (%get) ) {
print $var." : ".$val."n";
}

#Sub-routine

sub processGet {
foreach $pair (split("&", $ENV{'QUERY_STRING'})) {
($var, $val) = split("=", $pair);
$get{"$var"} = $val;
}
}

The displayed Expert Advice from this CGI script is shown in the figure below. Obviously this is not a production CGI script, but it demomstrates the attribute passed to the script that may be used for generating dynamic pages.

Dynamic Expert Advice

Passing Multiple Attributes to the Web-server

In a similar approach to above, it is possible to pass multiple attributes to the web-server. Each situation attribute must be assigned to a variable name, and the attribute name and value added to the string at the tail of the HTML link. Each pair is seperated with an ampersan character, i.e. “&”.

The example below passes details of the monitoring server, the monitored server, the display item and situation event status. Note that the link is wrapped onto multiple lines.

"  http://w2k3se-itm-01/cgi-bin/itm.pl?situationName="+sitName+"&monServer="+monServer+"&sysName="+sysName

+"&dispItem="+dispItem+"&status="+status

An example of the Expert Advice displayed for this situation event, assuming the example CGI script, is shown in the figure below.

Dynamic Expert Advice

Again, this is not a production page, but demomstrates the attributes passed to the script that may be used for generating dynamic pages.

Conclusion

Expert advice can reduce fix time for system problems by providing invaluable information to operators. Through the use of dynamic html links not only is the maintenance of this information simplified, by empowering the individual subject matter experts to update details outside of ITM, but also it enables the inclusion of dynamic information that is not only specific to the situation event, but potentially other situation attributes, for example the server name or the time of day.

Visits: 15