IBM Support

Launching into Agile Service Manager from an OMNIbus event - part 2

Technical Blog Post


Abstract

Launching into Agile Service Manager from an OMNIbus event - part 2

Body

In my previous blog entry I explained how to set up an integration between OMNIbus Web GUI and ASM within DASH; the solution would allow an operator to right-click on an alert within the Event Viewer and launch the ASM Topology Viewer in a new browser window or tab, in order to view the current topology around the related resource.

In today's post I will describe a variation on that solution, which involves:
a) updating a Topology Viewer on the same DASH page as the event list
b) displaying the topology at a previous point in time

 

As a first step, we need to create a new page in DASH which will be used to display both an event list and a resource topology. In DASH, navigate to Console Settings > General > Pages, create a new page, add an Event Viewer and a Web Widget portlet onto it, and arrange them as desired.

Configure the Web Widget portlet preferences to hide the browser toolbar, and to provide a starting URL if required; one possibility for the URL would be /ibm/console/inasm/topology.jsp, which displays an empty topology viewer.

 

image

 

The next step is to define a Web GUI script tool which sends a DASH portal "DisplayURL" event. Go to Administration > Event Management Tools > Tool Configuration on the DASH menu, in order to open the Web GUI tools administration page, and create a new tool of type "Script". In this example, the Script Command of the new tool would be:

 

/* Convert ObjectServer LastOccurrence seconds value into milliseconds */
var utime = 1000 * {@LastOccurrence};

 

/* Build a URL for the Topology Viewer where:
   a) the seed is the resource whose name matches the "Node" value from the event
   b) the hop count is 2
   c) the point in time is set to be the same as the LastOccurrence of the event */
var address = 'inasm/topology.jsp?resourceName={@Node}&hops=2&time=' + utime;

 

/* Send a DASH portal event which contains the URL */
var eventPayload = {
    'name': 'http://ibm.com/TIP#DisplayURL',
    'URL': address
};
{$param.portletNamespace}sendPortletEvent(eventPayload);

 

Once the new tool definition is saved, add it to the Web GUI "alerts" menu, via Administration > Event Management Tools > Menu Configuration within DASH.

Now you can open the page containing the event list and Topology Viewer, select an event of interest, right-click on it, and run the new tool. Doing this will then refresh the web widget in order to display an updated topology for the selected event, showing the state of the topology as it was when the event occurred.

 

image

If you wanted to go further, you could make even more use of the historical topology capability of ASM, and create additional right-click tools which show the resource topology at one minute before the event last occurred, and at one minute after. To do this you would use the same script command as the example above, except that you would change the time calculation as follows:

/* Set utime to 1 minute before the event occurred */
var utime = 1000 * {@LastOccurrence} - 60000;

/* Set utime to 1 minute after the event occurred */
var utime = 1000 * {@LastOccurrence} + 60000;

 

Viewing the resource topology just before an event occurred, when it occurred, and just after it occurred would allow an operator to spot changes to the topology layout, resource statuses, or resource properties that might help to shed light on the problem.

 

[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"","label":""},"Component":"","Platform":[{"code":"","label":""}],"Version":"","Edition":"","Line of Business":{"code":"","label":""}}]

UID

ibm11081863