Integrating with Dynatrace via webhook


Dynatrace uses webhook to push real-time alerts about problems detected in the environment. Whenever Dynatrace detects any problem, its webhook triggers an HTTP POST request to send alerts to a target URL.

Configure an integration with Dynatrace to receive alerts via webhook in BMC Helix Intelligent Integrations and monitor them as events. As a tenant administrator, you can optimize the performance, availability, reliability, and reachability of the applications that provide your business services.

You can view the collected data in various BMC Helix application and derive the following benefits:

BMC Helix application

Type of data collected or viewed

Benefits

BMC Helix Operations Management

Events (Dynatrace alerts are received as events) 

Use a centralized event view to monitor and manage events, perform event operations, and filter events. Identify actionable events from a large volume of event data by processing events.

For more information, see Monitoring events and reducing event noise.

Important

You can also configure the BMC Helix Intelligent Integrations Dynatrace connector to collect alert, metric, and topology data from Dynatrace by using APIs. For the alert and topology data received from Dynatrace, you can view the services and situations in BMC Helix AIOps. For more information, see Integrating-with-Dynatrace-via-API.

As a tenant administrator, perform the following steps to configure a connection with Dynatrace, verify the connection, and view the collected data in various BMC Helix applications.

ConnectorSteps.png

Supported versions

BMC Helix Intelligent Integrations supports version 1.297 of Dynatrace for data collection.


Task 1: To plan for the connection

  • Depending on the location of the third-party product (SaaS, on-premises), choose one or more BMC Helix Intelligent Integrations deployment modes and review the corresponding port requirements. For information about various deployment modes and port requirements, see Deployment-scenarios.
  • Based on the deployment mode, use the BMC Helix Intelligent Integrations SaaS deployment or the BMC Helix Intelligent Integrations on-premises gateway or both. For more information about the gateway, see Deploying-the-BMC-Helix-Intelligent-Integrations-on-premises-gateway.

In the preceding list, third-party product refers to Dynatrace.


Task 2: To configure the connection with Dynatrace via webhook

  1. Depending on the deployment mode, perform one of the following steps to access BMC Helix Intelligent Integrations:
    • BMC Helix Intelligent Integrations SaaS – Log on to BMC Helix Portal, and click Launch on BMC Helix Intelligent Integrations.
    • BMC Helix Intelligent Integrationson-premises gateway – Use the following URL to access BMC Helix Intelligent Integrations:
      https://<hostName>:<portNumber>/swpui
  2. On the CONNECTORS tab, clickadd_icon.pngin the SOURCES panel.
  3. Click the Dynatrace Alerts Webhook tile.
  4. Specify a unique instance name.

    Best practice
    We recommend that you specify the instance name in the following format: 

    <sourceType>_<sourceControllerServerName>_<InstanceQualifier>

    The instance qualifier helps you to distinguish the multiple instances configured from the same source server. For example, you can name your instances as DynatraceAlertsWebhook_Host_PROD, DynatraceAlertsWebhook_Host_TEST, and so on.


  5. Click CREATE COLLECTORS to create the collector stream for the selected data type.
  6. Configure the distributors for the selected data type by clicking the data type in the Distributors section and specifying the parameters for the selected data type, as explained in the following table:
    Parameter name
    Description
    Max Batching Size
    Specify the maximum number of data items to send in a single POST request to the destination API.
    The batch size 
    depends on the destination’s ability to buffer the incoming data.Default: 250
    Max Batching Delay
    Specify the maximum time (in seconds) to wait before building and processing a batch.Default: 3 seconds 
    Base Retry Delay
    Specify the initial time (in seconds) for which to wait before retrying to build and process a batch.
    The waiting time increases in the following sequence: n1, n2, n3, and so on, where n indicates the number of seconds.Default: 2 secondsExample:Base Retry Delay is set to 2 seconds.Retry is performed after 2, 4, 8, 16, ... seconds.
    Max Intra-Retry Delay
    Specify the maximum limit for the base retry delay. Default: 60 secondsExample:Max Intra-Retry Delay is set to 60 seconds.
    Base Retry Delay is set to 2 seconds.Retries are performed 2, 4, 8, 16, 32,... seconds later.
    Max Retry Duration
    Specify the total time for retrying a delivery. For REST destinations, a delivery is a batch of data items in one POST request. Default: 5 minutesExample:Max Retry Duration is set to 8 hours.
    Base Retry Delay is set to 2 seconds.Requests are sent for 2+4+8+16+32+64+132... until 8 hours in total duration is reached. After that, no subsequent attempts are made to retry the delivery.The assumption here is that if there is an outage or other issue with the destination tool, recovery should take less than the value of the Max Retry Duration parameter to be completed.
    Attributes To Be Dropped When Updating Events
    Specify the event attributes that you do not want to be updated in BMC Helix Operations Managementwhen events are updated. For example, if you do not want an event's severity, source address, source category, and subcategory to be updated in BMC Helix Operations Management , you need to specify those attributes in a comma-separated format: severity,source_address,source_category,source_subcategory .Important:You can obtain the event attribute names in BMC Helix Operations Management, by exporting any event data in JSON, BAROC, XML, or CSV format . The exported file contains all attributes of the event data, and from there you can identify the attributes to be dropped. 
  1. Click CREATE DISTRIBUTORS to create the required distributor stream for the selected data type.
  2. Click VALIDATE AND CREATE and then click SAVE STREAM to save the stream.
    After you save the stream, the connector that you just created is listed on the SOURCES panel.
  1. On the SOURCES panel, click Configure Mediator ConfigureMediator_icon.pngfor the source connection that you created.
  2. Click copy copy_URL.pngto copy the auto-generated Entuity collector URL and save it in a temporary file.
    For example, https://hostA/hii/api/mediator/v3/push/9mn-6c97-4c2e-8pc5-12c0asdf?token=API-KEY.
  3. Depending on whether you are using only SaaS deployment of BMC Helix Intelligent Integrationsor BMC Helix Intelligent Integrationson-premises gateway, perform the following steps:
    • If you are using only SaaS deployment of BMC Helix Intelligent Integrations or the on-premises gateway with authentication enabled, perform the following steps:
      1. Log on to BMC Helix Portal and generate an access key.
        For instructions, see Setting up access keys for programmatic access

      2. Copy the generated API key and save it in a temporary file.
        The key is generated in the format: <accessKey>::<secretKey>::<tenantID>.
        For example, Y40OSC49QZA11Q8A1H9H6::MnVLk69TNyCEponsthHJ1Hj1uKcjTB::385261281
      3. Change the format of the API key to <tenantID>::<accessKey>::<secretKey>.
        For example, 385261281::Y40OSC49QZA11Q8A1H9H6::MnVLk69TNyCEponsthHJ1Hj1uKcjTB
      4. In a temporary file, modify the auto-generated Dynatrace webhook URL by replacing API-KEY with the API key that you formatted in the previous step.
        For example, https://host.ab.com/hii/api/mediator/v3/push/9mn-6c97-4c2e-8pc5-12c0asdfd?token=385261281::Y40OSC49QZA11Q8A1H9H6::MnVLk69TNyCEponsthHJ1Hj1uKcjTB.
      5. Configure Dynatrace to forward alerts data to BMC Helix Intelligent Integrations.
    • If you are using the on-premises gateway with authentication disabled, perform the following steps:
      1. Save the URL in a temporary file.
      2. Remove the following string from the collector URL:?token=API-KEY
        The updated collector URL looks like the following example:
        https://hostA/hii/api/mediator/v3/push/9mn-6c97-4c2e-8pc5-12c0asdf.
      3. Configure Dynatrace to forward alerts data to BMC Helix Intelligent Integrationsvia webhook.
  4. On the SOURCES panel, move the slider to the right to start the data stream for the connector you created in step 8.
    ImportantFor a data stream, the Run Latency (max/avg), Items (Avg per Run), and Last Run Status columns on the Streams page might show the status as No Runs during the data collection process. After completion of the process, these columns are updated with an appropriate status.


Task 3: To configure Dynatrace to push alerts to BMC Helix Intelligent Integrations via webhook

  1. Log on to Dynatrace, and from the menu select Manage > Settings.
  2. On the Settings page, scroll down to expand the Integration option and select Problem notifications.
  3. On the Problem notifications page, click Add notification.
  4. Depending on whether you are using only SaaS deployment of BMC Helix Intelligent Integrations or the on-premises gateway, copy the webhook collector URL that you modified in Task 2: Step 11 and paste it as the default value in the Webhook URL field.
  5. Make sure that the Call webhook if problem is closed option is selected.
  6. Specify the following notification format and content in the Custom payload field. Whenever any vulnerability is detected or resolved in Dynatrace, the custom payload is sent through an HTTP POST to BMC Helix Intelligent Integrations:

    {
    "state":"{State}",
    "problemId":"{ProblemID}",
     "problemURL":"{ProblemURL}",
    "problemDetailsMarkdown":"{ProblemDetailsMarkdown}",
    "ProblemDetailsJSON":{ProblemDetailsJSON},
     "ProblemDetailsJSONv2":{ProblemDetailsJSONv2}
    }

    Important

    Don't update the payload. We don't support any customizations.

  7. Click Save Changes.
  8. (Optional) Click Send test notification to verify whether Dynatrace webhook can push the sample payload to BMC Helix Intelligent Integrations.
  9. Go to Task 2: Step 12 to start the data stream.


Task 4: To verify the connection

In BMC Helix Intelligent Integrations , on the SOURCES panel, confirm that the data streams for the integration you created are running. Data streaming is indicated by moving colored arrows.

DynatraceWebhook_Stream.png

A moving dark blue arrow (EventsStream_Icon.png) indicates that event stream is running. Event data will be pushed as soon as alerts are available.


To view data in BMC Helix applications

Important

If the event or metric data is ingested by using BMC Helix Intelligent Integrations, and the topology data is ingested through some other means, all the use cases in BMC Helix AIOps might not work as expected because the external IDs generated by BMC Helix Intelligent Integrations and BMC Helix Discovery differ. In addition, host name might differ in both the products. 

To view events in BMC Helix Operations Management

  1. In BMC Helix Operations Management, select Monitoring > Events.
  2. Filter the events by the DynatraceAlert class.
    Dynatrace_Alert.png

Incoming event from are processed in BMC Helix Operations Managementthrough a set of deduplication rules to determine whether the incoming event is a duplicate event or a new event. For more information, see Event-deduplication-suppression-and-closure-for-reducing-event-noise.

For information about events, see Monitoring and managing events.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*