Skip to main content

Module 2: Data processing

Module contents:

BASIC | 6 MIN

After watching this video, you will be able to create a workflow to process events, explain the use of workflows in Moogsoft, and set up an event workflow to normalize event data.

Documentation on this topic is available.

Use case walkthrough: Event data normalization ►

This video steps through a use case for setting up custom event processing and normalizing events in APEX AIOps Incident Management.

*Please note Moogsoft is now part of Dell's IT Operations solution called APEX AIOps, and changed its name to APEX AIOps Incident Management. The UI may differ slightly but the content covered is still relevant.

After watching this video, you will be able to create a workflow to process events. Specifically, you can explain the use of workflows in Incident Management and set up an event workflow to normalize event data.

1_EventDataNormalization_00_00_16_14_Still001.jpg

Workflow Engine lets you create and add additional processing to your Incident Management workflow.

2_EventDataNormalization_00_00_25_11_Still002.jpg

Let’s use an example and actually build a workflow.  

Suppose you are a SAAS company and you are planning to cluster alerts by location and customer. However, your source event data looks like this. The host part of the FQDN has your customer names, and the domain is the location. 

So, with the first action in this workflow, we will split the source field value and map it to the customer and location fields.

3_EventDataNormalization_00_00_45_02_Still003.jpg

Also, some of your events are from QA servers, and we don’t want our users to pay attention to them.  So as the second action in this workflow, we are going to add an environment label so we can exclude those events from the clustering process.

4_EventDataNormalization_00_01_04_01_Still004.jpg

Finally, We have two support levels - silver and gold.  In order to prioritize the gold level support customers, we want to tag the events from them as such.

5_EventDataNormalization_00_01_13_15_Still005.jpg

Let’s build a workflow to take care of all three tasks. Let’s make sure everyone knows what this workflow is about…

6_EventDataNormalization_00_01_27_25_Still006.jpg

The field we want to examine is the Source field.

7_EventDataNormalization_00_01_36_16_Still007.jpg

And the host information needs to go into a customer tag. The domain information needs to go into location. We’ll put it in the data center location field. We are all set with task number 1.

9_EventDataNormalization_00_01_47_11_Still009.jpg

Next, we’ll extract the suffix from the source name to label the test and production environments.

10_EventDataNormalization_00_01_58_27_Still010.jpg

Here is a regular expression to capture the suffix of the source name.

12_EventDataNormalization_00_02_08_10_Still012.jpg

We’ll  store it in an Environment tag. That task is done.

13_EventDataNormalization_00_02_12_21_Still013.jpg

Finally, we need to label the support level so users can quickly identify which alerts are impacting your gold level customers.

14_EventDataNormalization_00_02_26_01_Still014.jpg

We’ll add a Support tag and set the default support level to silver.

16_EventDataNormalization_00_02_35_08_Still016.jpg

We’ll match these customer names. Then, we’ll update their support level to gold.

17_EventDataNormalization_00_02_42_23_Still017.jpg
18_EventDataNormalization_00_03_06_02_Still019.jpg

Now we use the support level information down the stream.  We can add the support level to the incident description, or send the gold support cases to the premium support team. We are done setting up all three actions.

Now let’s test this.

We can test the workflow right from this UI.  We’ll simulate the input here. Let’s say the source fields says this.  If our workflow is set up correctly, this input should be parsed and mapped to three different fields for us - customer, location, and environment.

Here are the test results. Looks like the source value got properly parsed and mapped to the customer and the location fields.

19_EventDataNormalization_00_03_38_25_Still020.jpg

We’ve also extracted the environment substring.

20_EventDataNormalization_00_03_43_28_Still021.jpg

Here’s the support level label.

21_EventDataNormalization_00_03_48_08_Still022.jpg

And we’ve updated the support level for gold customers.

22_EventDataNormalization_00_03_53_27_Still023.jpg

Everything looks good, so let’s activate it.

Here are the alerts  from our monitoring source. The incoming data is customized the way we want it, and its ready for produce meaningful incidents.

23_EventDataNormalization_00_04_15_16_Still024.jpg

Now you know how to use event workflows in Incident Management to normalize event data. Thanks for watching!

BASIC | 6 MIN

In this video, learn how to add external data to events in Moogsoft using the Workflow Engine, Data Catalog, and the Correlation Engine.

Documentation on this topic is available.

Use case walkthrough: Add external data to events ►

This video explains how to Add External Data to Events in APEX AIOps Incident Management by using a data catalog to facilitate enrichment.

*Please note Moogsoft is now part of Dell's IT Operations solution called APEX AIOps, and changed its name to APEX AIOps Incident Management. The UI in this video may differ slightly but the content covered is still relevant.

In this quick video, we’ll go over how to configure enrichment in APEX AIOps Incident Management.

Here’s our scenario. We want to cluster our alerts by the service impacted,

1_Add_External_Data_Take_One.jpg

But the incoming events do not always have the service information.

2_Add_External_Data_Take_One.jpg

We do have a spreadsheet that stores the source to service connections,

3_Add_External_Data_Take_One.jpg

So we want to query by the source in the data catalog, retrieve the service information, and add it to the events.

4_Add_External_Data_Take_One.jpg

It takes 3 steps to make this happen.

First we need to upload the service data to APEX AIOps Incident Management.

5_Add_External_Data_Take_One.jpg

Next set up a process to look up the catalog for the matching source information, to grab the service.

6_Add_External_Data_Take_One.jpg

Next set up a process to look up the catalog for the matching source information,  and add to events.

7_Add_External_Data_Take_One.jpg

Lastly, cluster alerts by the service field value using the correlation engine.

8_Add_External_Data_Take_One.jpg

Let’s step through the process from beginning to end.

Here’s our data catalog. It’s a csv file that has the Source and Service information.

9_Add_External_Data_Take_One.png

Let’s go to data catalog, and upload this.

Give a name and description other administrators would recognize.

9_Add_External_Data_Take_One.jpg

Here’s the file we just looked at.

10_Add_External_Data_Take_One.jpg

Good.  Looks like our data made it in.

11_Add_External_Data_Take_One.jpg

Now we need to tell APEX AIOps Incident Management which field to query by.  

For that, we need to setup a workflow.

12_Add_External_Data_Take_One.jpg

This workflow is for events.

We’ll process all incoming events, so we don’t need to set up a trigger. 

13_Add_External_Data_Take_One.jpg

But let’s say you know only the events from a certain data source are missing the service information, then you can set up a trigger so only the applicable events will trigger this workflow. Once an event enters this workflow, we want to query a catalog.

14_Add_External_Data_Take_One.jpg

Pick the catalog you want to reference.. here’s the csv we just uploaded. (select from the catalog name dropdown)Now we are going to map the fields.

15_Add_External_Data_Take_One.jpg

First, we need to tell Incident Management to query by the source value. All default fields in Incident Management are available under the base field category, and the source field is one of them. And, source information is also stored in the data catalog, under the source field.

25_Add_External_Data_Take_One.jpg

Next, specify what field value needs to go where. So in our case, we want to retrieve the service information from the data catalog, and feed that value into the Service field which is one of the base fields in Incident Management. Also, IF the data catalog has no value for the particular source, we’ll fill in “unknown."

17_Add_External_Data_Take_One.jpg

Once you name the workflow, you can test it. Testing a workflow is easy. Just pull this up and simulate an input here.

18_Add_External_Data_Take_One.jpg

So let’s send in an event with one of the existing sources in the data catalog.

19_Add_External_Data_Take_One.jpg

OK, it didn’t error out.

And now, although the event we sent in only had a source info, now it has the service information.

20_Add_External_Data_Take_One.jpg

Also note that you can configure enrichment programmatically using our APIs.  Consult the Catalog API and Workflow Service API sections in our documentation.

Finally, set up a correlation engine to cluster by service.  We have a separate tutorial that explains how to add a new correlation setting, so consult that for a step by step instruction.  Basically this correlation will process alerts that match the scope filter, and cluster them if they have identical service information into incidents.

21_Add_External_Data_Take_One.jpg
22_Add_External_Data_Take_One.jpg

We’ve done the entire setup, so now the final test.  We are going to send in fifteen events with varying attributes but with the same source information.  If our setup is correct, all events should be enriched with the same service information, and end up being in one incident.  Here we go.

23_Add_External_Data_Take_One.jpg

Here’s an incident.  It has twelve alerts s in it.  And you can verify that each were properly enriched to have the service information. 

24_Add_External_Data_Take_One.jpg

Thanks for watching!

BASIC | 7 MIN

In this video, you will learn how to set up maintenance windows in Moogsoft Cloud.

Demo video: Setting up maintenance windows in APEX AIOps Incident Management

This video provides a demo on how to set up maintenance windows in APEX AIOps Incident Management and suppress noise.

*Please note Moogsoft is now part of Dell's IT Operations solution called APEX AIOps, and changed its name to APEX AIOps Incident Management. The UI in this video may differ slightly but the content covered is still relevant.

When an asset is undergoing maintenance, the data could look anomalous.

1_MaintenanceWindow.jpg

But we don’t need to worry about it since we know the cause and the effect is temporary. In this video, we’ll show you how to tag those alerts so you won’t be distracted by them.

2_MaintenanceWindow.jpg

Let’s say this resource will go into maintenance, so, during that time, we want to tag all the events that come in from there as “in maintenance”.

3_MaintenanceWindow.jpg

Specify what’s in maintenance here.

4_MaintenanceWindow.jpg

And when the maintenance window takes effect. You can schedule it ahead of time, and make it recurring if you want to. 

5_MaintenanceWindow.jpg

But, let’s set it to start now so I can show you the result right away.

6_MaintenanceWindow.jpg

Now, the alerts that match the maintenance window criteria will be marked as such, giving the users more context for the incidents.

7_MaintenanceWindow.jpg

One thing to keep in mind here is the difference between these two columns. The “In maintenance” column indicates whether the alert is in a currently active maintenance window. So even though it says true for this alert, after this maintenance window closes it will turn to false.

8_MaintenanceWindow.jpg

After that, you can still tell if the alert happened during a maintenance window or not by checking the “maintenance” column.

9_MaintenanceWindow.jpg

Now, you may prefer not seeing the alerts that happened during the maintenance window at all.

10_MaintenanceWindow.jpg

Let me show you how to do that. We can set up a filter to ignore those alerts raised during the maintenance window from the impacted assets.

This way we can reduce noise and surface what truly requires the user’s attention.

11_MaintenanceWindow.jpg

To filter out the alerts in maintenance, we are going to add a scope filter to our correlation definition.

12_MaintenanceWindow.jpg

Now, only the alerts that are not in maintenance will be processed by this correlation engine.

So that’s the UI-based way of creating and managing maintenance windows. We also offer API-based method. For example, you may currently set up maintenance windows in ServiceNow. Then rather than entering the same information in Incident Management, you can make an API call from ServiceNow to create a window in Incident Management.

13_MaintenanceWindow.jpg

Now you know how to set up maintenance windows and suppress noise. Thanks for watching!