Integrating with Datadog


As a tenant administrator, it's important that you can monitor the connected systems and quickly identify and resolve any issues. The BMC Helix Intelligent Integrations Datadog connector collects events, metrics, and topology data from Datadog. This connector collects the topology data for hosts.

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

BMC Helix application

Type of data collected or viewed

Benefits

BMC Helix Operations Management

Events 

Use a centralized event view to monitor, filter, and manage events, and perform event operations in one place.
Process events to help identify actionable events quickly from a large volume of data.
For more information, see Monitoring events and reducing event noise.

BMC Helix Operations Management

Metrics

Use alarm and variate policies to detect anomalies and eliminate false positives for more accurate results while monitoring the health of your system.
For more information, see Detecting anomalies by using static and dynamic thresholds.

BMC Helix Discovery

Topology

Collect the topology data for hosts from Datadog in BMC Helix Discovery.
For more information, see Managing your IT infrastructure.

BMC Helix AIOps

Situations (created from events)

Improve the mean time to resolve (MTTR) based on the situation-driven workflow.
Lower the mean time to detect or discover (MTTD) and the time required for investigating tickets.
For more information, see Monitoring situations.

BMC Helix Dashboards

Events

Create dashboards to get a consolidated view of data collected from third-party products across your environment.
For more information, see Creating custom dashboards

BMC Helix AIOps

Services (created from topology)

Monitor the overall health of a service.  When the service gets impacted by any factor, view the events generated because of the impact, analyze the causes of the impact, and quickly remediate those events to restore the health of the impacted service.
For more information, see Monitoring services.

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

Supported versions

BMC Helix Intelligent Integrations supports version v1 of Datadog API for data collection.

Task 1: To plan for the connection

Review the following prerequisites to help you plan and configure a connection with Datadog.

Datadog prerequisites

Create a Datadog user with standard role and obtain the API token and application key for that user.

The standard role has the following permissions by default:

  • APM Read
  • CI Visibility Read
  • Dashboards Read
  • Incidents Read
  • Monitors Read
  • Notebooks Read
  • RUM Apps Read
  • SLOs Read

For more information, see the following sections in the Datadog documentation:

BMC Helix Intelligent Integrations prerequisites

  • 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.
  • You have the latest Technology Knowledge Update (TKU) required to collect the topology data only for hosts from
    the third-party product. To obtain the latest TKU, see Schedule and Roadmap
  • The on-premises gateway must be able to reach the third-party product on the required port (default is 443).

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

Task 2: To configure the connection with Datadog

  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 Integrations on-premises gateway – Use the following URL to access BMC Helix
      Intelligent Integrations: https://<hostName>:<portNumber>/swpui
  2. On the CONNECTORS  tab, click add_icon.png in the SOURCES panel.
  3. Click the Datadog tile.
  4. Specify the following details for the source connection:
    1. 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 Datadog_Host_PROD, Datadog_Host_TEST, and so on.

    2. Specify the Datadog host name and port number (default port number is 443).
    3. Specify the Datadog HTTP or HTTPS port number depending on the connection protocol.
    4. Select the HTTPS  option to use an https connection to the Datadog host.
    5. Specify the API version V1 token and application key.
  5. Click VALIDATE AND CREATE.
    The specified connection details are validated and the corresponding source connection is created in the Source Connection list.
  6. Select the source connection that you created from the list if it is not selected already.

    Important
    The destination host connection is created and configured automatically when the source connection is
    created.

     

  7. Ensure that the options for the datatypes for which you want to collect data are selected.
  8. Configure the collectors for the selected data types by clicking the respective data type in the Collectors section. Specify the parameters for the selected data type, as explained in the following table:

    Parameter name

     Description

    Data Type

    Datadog Events

    Datadog Metrics

    Datadog Topology

    Collection Schedule

    Select one of the following options to specify the data collection frequency:

    • Duration: When you select this option, data collection happens constantly. Specify the schedule in minutes, hours, or day. 
      Default: 5 minutes
      Example:
      Collection Schedule
      is set to 5 mins.
      Current time is 00:30.

      If you run the collector just after 00:30, data is collected every 5 mins, first at 00:30 and next at 00:35, and so on.  
    • Cron schedule: When you select this option, data collection happens periodically. Specify the schedule by using a cron expression.
      A cron expression is a string consisting of five subexpressions (fields) that describe individual details of the schedule.  
      These fields, separated by blank spaces, can contain any of the allowed values with various combinations of the allowed characters for that field.
      Default: */5 * * * * (evaluates to 5 minutes)

      Format:
      Minutes Hours (24-hour format) Day of Month Month Day of Week

      Example:
      If you specify 10 15 3 7 * , data is collected at 15:10 hours every third day in the month of July.

    For more information about how this parameter affects data collection, see Data collection schedule.

    ✅️

    ✅️

    ✅️

    Data Collection Window

    Specify the historical time period (in minutes) from the current time for which the data should be collected from Datadog .

    Default: 5 minutes

    Example:

    Collection Schedule is set to 5 mins.
     Data Collection Window is set to 5 mins.
     Current time is 00:30.

    If you run the collector just after 00:30:

    • For events, the data is collected first at 00:30 for the interval, 00:25 - 00:30, and next at 00:35 for the interval, 00:30 - 00:35, and so on.
    • For metrics, the maximum, minimum, average, and sum of the metric values are collected within the specified data collection window. For example, if you are collecting system idle time, and the data collection window is set for 5 minutes, you will get only one metrics data, that is, the maximum time the system remains idle within a 5 minutes collection window. By reducing the data collection window you can collect more metrics data.

    For more information about how this parameter affects data collection,  see Data collection window .

    ✅️

    ✅️

    ❌️

    Data Latency

    Specify the time (in minutes) by which the data time window should be shifted back on the timeline.

    This parameter is useful in delayed data availability situations.

    Default: 0 minutes

    Example:

    Collection Schedule is set to 5 mins.
     Data Collection Window is set to 10 mins.
    Data Latency is set to 2 mins.
     Current time is 00:30.

    If you run the collector just after 00:30, data is collected first at 00:30 for the interval, 00:18 to 00:28 and next at 00:35 for the interval, 0:23 to 00:33, and so on.

    For more information about how this parameter affects data collection, see Data latency.

    ✅️

    ✅️

    ❌️

    Tags

    Specify the tags to filter the list of events.

    To specify multiple tags, use a comma-separated list.

    Examples:

    • To collect events for the Ausdsm-01 cluster in the Kubernetes source, specify the following tags:
      source:kubernetes,cluster_name:ausdsm-01
    • To collect events for the Monitor Alerts source, specify the following tags:
      source:alert,monitor

    For more information about the tags, see the Arguments section of the Events topic in the Datadog documentation

    ✅️

    ❌️

    ❌️

    Metrics

    Select one or more metrics from the list.

    If you don't choose any option, no metrics data is collected. 

    The system metrics are grouped as follows:

    Space aggregation grouping of system metrics

    Host and Device:

    system.net.bytes_rcvd
    system.net.bytes_sent
    system.net.packets_in.count
    system.net.packets_in.drop
    system.net.packets_in.error
    system.net.packets_out.count
    system.net.packets_out.drop
    system.net.packets_out.error
    system.net.tcp.en_drops
    system.net.tcp.en_overflows

    Host: 

    system.cpu.context_switches
    system.cpu.guest
    system.cpu.idle
    system.cpu.interrupt
    system.cpu.iowait
    system.cpu.num_cores
    system.cpu.stolen
    system.cpu.system
    system.cpu.user
    system.fs.file_handles.allocated
    system.fs.file_handles.allocated_unused
    system.fs.file_handles.in_use
    system.fs.file_handles.max
    system.fs.file_handles.used
    system.fs.inodes.free
    system.fs.inodes.in_use
    system.fs.inodes.total
    system.fs.inodes.used
    system.load.1
    system.load.15
    system.load.5
    system.load.norm.1
    system.load.norm.15
    system.load.norm.5
    system.mem.buffered
    system.mem.cached
    system.mem.commit_limit
    system.mem.committed
    system.mem.committed_as
    system.mem.free
    system.mem.nonpaged
    system.mem.page_tables
    system.mem.paged
    system.mem.pagefile.free
    system.mem.pagefile.pct_free
    system.mem.pagefile.total
    system.mem.pagefile.used
    system.mem.pct_usable
    system.mem.shared
    system.mem.slab
    system.mem.slab_reclaimable
    system.mem.total
    system.mem.usable
    system.mem.used
    system.proc.count
    system.proc.queue_length
    system.swap.cached
    system.swap.free
    system.swap.pct_free
    system.swap.swap_in
    system.swap.swap_out
    system.swap.total
    system.swap.used
    system.uptime
    system.io.block_in
    system.io.block_out
    system.net.conntrack.count
    system.net.conntrack.expect_max
    system.net.conntrack.max
    system.net.conntrack.tcp_max_retrans
    system.net.conntrack.tcp_timeout_max_retrans
    system.net.iface.mtu
    system.net.iface.num_rx_queues
    system.net.iface.num_tx_queues
    system.net.iface.tx_queue_len
    system.net.ip.forwarded_datagrams
    system.net.ip.fragmentation_creates
    system.net.ip.fragmentation_fails
    system.net.ip.fragmentation_oks
    system.net.ip.in_addr_errors
    system.net.ip.in_csum_errors
    system.net.ip.in_delivers
    system.net.ip.in_discards
    system.net.ip.in_header_errors
    system.net.ip.in_no_routes
    system.net.ip.in_receives
    system.net.ip.in_truncated_pkts
    system.net.ip.in_unknown_protos
    system.net.ip.out_discards
    system.net.ip.out_no_routes
    system.net.ip.out_requests
    system.net.ip.reassembly_fails
    system.net.ip.reassembly_oks
    system.net.ip.reassembly_overlaps
    system.net.ip.reassembly_requests
    system.net.ip.reassembly_timeouts
    system.net.ip.reverse_path_filter
    system.net.tcp.abort_on_timeout
    system.net.tcp.active_opens
    system.net.tcp.attempt_fails
    system.net.tcp.backlog_drops
    system.net.tcp.current_established
    system.net.tcp.established_resets
    system.net.tcp.failed_retransmits
    system.net.tcp.from_zero_window
    system.net.tcp.in_csum_errors
    system.net.tcp.in_errors
    system.net.tcp.in_segs
    system.net.tcp.out_resets
    system.net.tcp.out_segs
    system.net.tcp.passive_opens
    system.net.tcp.paws_connection_drops
    system.net.tcp.paws_established_drops
    system.net.tcp.prune_called
    system.net.tcp.prune_ofo_called
    system.net.tcp.prune_rcv_drops
    system.net.tcp.retrans_segs
    system.net.tcp.syn_cookies_failed
    system.net.tcp.syn_cookies_recv
    system.net.tcp.syn_cookies_sent
    system.net.tcp.syn_retrans
    system.net.tcp.to_zero_window
    system.net.tcp.tw_reused
    system.net.udp.in_csum_errors
    system.net.udp.in_datagrams
    system.net.udp.in_errors
    system.net.udp.no_ports
    system.net.udp.out_datagrams
    system.net.udp.rcv_buf_errors
    system.net.udp.snd_buf_errors

    Any other system metrics are also grouped by host.

    ❌️

    ✅️

    ❌️

    Host Filter

    Specify the filter based on the host tag to limit the number of hosts for which you want to collect the metrics data.

    Examples:

    • To collect metrics for all the hosts, specify the filter as host:
    • To collect metrics for the hosts whose name begin with the text aus, specify the filter as host: aus*

    If you don't choose any option, no metrics data is collected. For more information about the filter syntax, see the Using Tags topic in the Datadog documentation

    ❌️

    ✅️

    ❌️

    Time Aggregation

    Select a time aggregation to specify the metric value you want to include in the time bucket. For all data points, you can collect maximum, minimum, sum, or average of metrics data in a time bucket.

    Default: Maximum

    For more information about the Time Aggregation, see the Anatomy of a metric query section in the Datadog documentation. 

    ❌️

    ✅️

    ❌️

  9. Click CREATE COLLECTORS to create the required collector streams for the selected data types.
  10. Configure the distributors for the selected data types by clicking the respective data type in the Distributors section. Specify 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 seconds

    Example: 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 seconds

    Example: 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 minutes

    Example: 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. 

  11. Click CREATE DISTRIBUTORS to create the required distributor streams for the selected data types.
  12. Click one of the following buttons:

    • SAVE STREAM: Click this button if you want to edit the integration details before creating the instance. After you save the stream, the connector that you just created is listed in the SOURCES panel. Move the slider to the right to start the data stream.
    • SAVE AND START STREAM: Click this button if you want to save the integration details and start receiving data immediately.

    Important
    For 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.

    For more information about the data streams, see Starting-or-stopping-data-streams

Task 3: To verify the connection

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

Datadog_stream.png

  • A moving blue arrow (EventsStream_Icon.png ) indicates that the event stream is running. Event data will be pushed according to the configured Collection Schedule interval.
  • A moving red arrow ( MetricsStream_Icon.png)  indicates that the metrics stream is running. Metric data will be pushed according to the configured Collection Schedule interval.
  • A moving light blue arrow (TopologyStream_Icon.png) indicates that the topology stream is running. Topology data will be pushed according to the configured Collection Schedule interval.

To view data in BMC Helix applications

View data collected from Datadog  in multiple BMC Helix applications.

To view events in BMC Helix Operations Management

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

Incoming events from Datadog (except from an unknown host) are processed in BMC Helix Operations Management through 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 more information about events, see Monitoring and managing events.

To view metrics in BMC Helix Operations Management

  1. In BMC Helix Operations Management, select Monitoring > Devices.
  2. Click the links for the required device.
  3. On the Monitors tab, click the required monitor.
    The Performance Overview tab shows the metrics graph. For information about metrics, see Viewing collected data.
    Datadog_metrics_BHOM.png

     

To view Situations in BMC Helix AIOps

Before you view situations in BMC Helix AIOps, ensure that the following prerequisites are met: 

  1. CIs are present in BMC Helix Discovery or BMC Helix AIOps for the events that are being collected from Datadog   .
  2. Create a Business Service model in one of the following applications:
  3. Perform one of the following tasks:

To view Situations

  1. In BMC Helix AIOps, go to the Situations page.
    This page shows the Situations created from the events that are ingested into BMC Helix Operations Management. 
  2. Click the required Situation to view the messages contained in the Situation and other details such as priority and severity of the message. 
    For information about Situations, see Monitoring situations.

To view topology in BMC Helix Discovery

  1. In BMC Helix Discovery, select Explore > Data
  2. Click the Host List link.
    The Host List page shows the list of host names and its other attributes received from Datadog. For information about entities in the infrastructure, see Managing your IT infrastructure.

  3. Click the entity name to view its topology.

The following figures show the topology data for a host in the Datadog UI and in the BMC Helix Discovery UI:

Datadog_host_record.png

Discovery_host_record.png

To view services in BMC Helix AIOps

  1. In BMC Helix AIOps, go to the Services page.
    This page shows the datadoghost service. 
    AIOps_Datadog_host.png
  2. To view the impact on the service, hover over the service.
    The impact score in percentage and Situations, events, incidents, or configuration items (CIs) associated with a service are displayed.  
  3. Click the service to view the health summary, causal analysis, health insights, and other key metrics of interest.

For more information about services, see Monitoring services.

Mapping of event attributes between Datadog and BMC Helix Operations Management

The following table shows the mapping between Datadog and BMC Helix Operations Management:

Event attribute

Datadog 

BMC Helix Operations Management

Event severity

(Indicated by event status in Datadog)

Error

Critical

Warn

Minor

Info

Info

Ok

Ok

Mapping of metrics attributes between Datadog and BMC Helix Operations Management

The following table shows the mapping between Datadog and BMC Helix Operations Management:

Datadog 

BMC Helix Operations Management

Attributes

Example

Attributes

Example

Metric Name

system.disk.read_time_pct

Metric

system.disk.read_time_pct(Percent)

Unit

Percent

Display Name

disk

Monitor Type

DATADOG_disk

Device Name

dm-0

Monitor Name

disk_dm-0

Host Name

host:vl-aus-dsmw-10

Associated Device

vl-aus-dsmw-10

 

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