Creating ServiceNow incidents from BMC Helix Operations Management events by using MuleSoft Anypoint platform
BMC Helix iPaaS, powered by MuleSoft provides a pre-built integration template that enables you to create incidents in ServiceNow for BMC Helix Operations Management events. To use the integration template with the values that are defined out of the box, you update the project configuration with details of your systems and deploy the integration template.
The template provides the following capabilities:
|Use case||BMC Helix Operations Management to ServiceNow|
Creates an incident in ServiceNow when an event occurs in BMC Helix Operations Management
Synchronizes the status and comments in the ServiceNow incident with the status and worknotes in the BMC Helix Operations Management event
Blah new use case
BMC Helix Operations Management to ServiceNow data flows
The following images give an overview of the data flow for creating and updating a ServiceNow incident from a BMC Helix Operations Management event:
Before you begin
You require the following items to successfully set up and use this integration:
|Authentication and permissions|
|MuleSoft Anypoint platform subscription|
Important: BMC provides pre-build integration templates for the MuleSoft platform, targeting common integration use cases for BMC products. To obtain a MuleSoft platform license, contact MuleSoft support.
An API access key, a secret key, and a tenant ID for BMC Helix Operations Management to register BMC Helix iPaaS with your BMC Helix Operations Management instance. Create an API user in BMC Helix Portal, and then add the access key, secret key, and tenant ID to the hom_tenant_id, hom_access_key and hom_client_secret project variables you define in the project.
Task 1: To generate the secret key and ID for BMC Helix Operations Management
- Log in to BMC Helix Portal.
- Select Common Services > User Management.
- Log in to BMC Helix Operations Management.
- On the API users tab, click Add API User.
- Enter the following details required for the API user:
- API user name
- Key expiry
- Click Confirm.
Copy the generated secret key, API access key, and tenant ID values.
You can copy the access key, and secret key only when they are generated. After that, they are stored in an encrypted format and you cannot copy them. If you do not copy the values when they are generated or if you lose them, you must generate a new one.
You need these values to register BMC Helix iPaaS with your BMC Helix Operations Management instance. For more information about generating the tenant ID, access key, and secret, see .
Task 2: To create a topic to store events
If you are using the Kafka based queuing mechanism, create a topic in Kafka to store event data. Events are organized and stored in topics. Customers must install and manage their Kafka instance.
To create a topic to store data, complete the following procedure:
- Open a terminal session in Kafka and run:
$ bin/kafka-topics.sh --create --topic bhomEventsWithServiceNowIncidents--bootstrap-server localhost:9092.
After you create the topic, run the
kafka-topics.shcommand without any arguments to display usage information. You can view details such as the partition count of the new topic.
$ bin/kafka-topics.sh --describe --topic bhomEventsWithServiceNowIncidents--bootstrap-server localhost:9092.
Topic:quickstart-events PartitionCount:1 ReplicationFactor:1 Configs:
Topic: quickstart-events Partition: 0 Leader: 0 Replicas: 0
For more information, see .
Task 3: To download and deploy the integration template project
- Download the file for the integration template.
Log in to MuleSoft Anypoint Platform and select Management Center > Runtime Manager.
To configure your integration template, click Deploy application.
To select the .jar file that you downloaded, and enter project details, on the Runtime tab of the Deploy Application page, select the following values:
Field name Action Application Name Enter a unique name for your application. Deployment Target
Select the space for deploying the application; for example, CloudHub.
Select Choose File > Upload file, and select the Integration template .jar file.
Runtime tab Runtime version
Select the MuleSoft runtime version used to develop the application.
Select a core size for your application.
The core size defines resource allocation for your application and impacts performance.
For more information about worker size, see .
Select the number of dedicated instances of Mule for the application.
Deploying your application with more than one worker balances incoming load across allocated worker nodes. It also provides a backup if any of the worker nodes is not responding.
On the Properties tab of the Deploy Application page, add the following values:
key value Kafka properties (Mandatory only if you are using Kafka)
To enable the Kafka queuing mechanism for incoming Webhook requests for fault tolerance, set the value to true.
By default this value is set to false.
Enter the Kafka server URL in the following format:
Important: If the Kafka messaging system is disabled, enter localhost:9092 in this key.
Enter the host URL for ServiceNow.
Enter the user ID to access ServiceNow.
Enter the password of the user ID to access ServiceNow.
Enter the version of your instance of ServiceNow.
Enter the ID of the ServiceNow user for whom the incident should be created. BMC Helix Operations Management properties bhom.connector.url Enter the host URL for your instance of BMC Helix Operation Management.
Enter the access key of the API user created in Task 1.
Enter the secret key of the API user created in Task 1.
Enter the tenant ID of the API user created in Task 1. MuleSoft API Webhook properties api.webhook.profile.username Enter the username to authenticate the integration request to the MuleSoft API. api.webhook.profile.password Enter the password for user defined to access the MuleSoft API. Deployment environment mule.env Depending on the environment where you want to deploy the project, add one of the following values:
Optionally, if you want to enable email notifications, add the following values:
key value email.property.smtp Enter the SMTP host details for email configuration. email.property.recipients Enter a comma separated list of email addresses for recipients who should receive the notification emails. email.property.sender Enter the email address from which the notification emails should be sent. email.property.username Enter the username to access the SMTP server from which notification emails should be sent. email.property.password Enter the password for the user to access the SMTP server from which notification emails should be sent.
- Click Deploy Application.
While the application is being deployed, the log updates are displayed. After the application is successfully deployed, a green circle is displayed next to the template name.
Task 4: To enable the integration
To enable the integrations, you need to run the webhook creation scripts from your MuleSoft Anypoint Platform. These scripts automatically create the required webhooks for the integration.
Log in to the MuleSoft Anypoint Platform and select Runtime Manager.
On the Applications tab, click the project name.
On the application details page, click Schedules.
Select the appropriate option from the list displayed, and click Run Now. The following options are available:
Name Description BHOM-Create-Integration_Manual Trigger Creates the required Webhooks to enable creation of incidents in ServiceNow for events created in BMC Helix Operations Management BHOM-Purge-Integration_Manual Trigger Purges existing Webhooks defined for the integration template ServiceNow-Create-Integration_Manual Trigger Creates the required Webhook to enable sync of worknotes and status between the BMC Helix Operations Management event and ServiceNow incident ServiceNow-Pause-Integration_Manual Trigger Pauses the sync of worknotes and status between the BMC Helix Operations Management event and ServiceNow incident ServiceNow-Purge-Integration_Manual Trigger Purges the existing Webhook defined to enable sync of worknotes and status between the BMC Helix Operations Management event and ServiceNow incident ServiceNow-Resume-Integration_Manual Trigger Resumes the sync of worknotes and status between the BMC Helix Operations Management event and ServiceNow incident
After you enable the integration, a corresponding incident is created in ServiceNow when an event is created in BMC Helix Operations Management. Updates made to the ServiceNow incident status or worknote are synced with the BMC Helix Operations Management event.