Installing the Datadog Agent for Middleware

This guide explains how to configure the Datadog Agent to send data exclusively to Middleware. Middleware supports the ingestion of APM traces, metrics and logs from the Datadog Agent

This feature is supported in Datadog's Linux and Kubernetes Agent

Prerequisites

1 Traces

Datadog Agent version 6.7.0 or above

2 HTTP Logs

Datadog Agent version 6.13 or above

3 Metrics

Datadog Agent version 6.17 or above

Datadog Linux Agent

Datadog's Linux agent stores configuration in YAML format. This file is located in /etc/datadog-agent/datadog.yaml by default. You will need to update this file to enable sending metrics, traces, and logs to the Middleware platform.

Initial Configuration

Add the following configuration to your datadog.yaml file:

Trace Configuration

Add the following apm_dd_url within the apm_config section in your datadog.yaml file:

If you already have the apm_config section in your datadog.yaml file, add an apm_dd_url endpoint in the same section. Datadog agent does not support multiple apm_config sections.

The Linux Datadog Agent is configured by default in the following YAML file: /etc/datadog-agent/datadog.yaml

Log Configuration

Add the following logs_dd_url within the logs_config section in your datadog.yaml file:

Configuration

In order to get visibility into the processes running on your infrastructure, enable live processes collection under the process_config section as shown below:

Restart Datadog Agent

Run the following code in your terminal to restart the Datadog Agent:

Replace <MW_API_KEY> with your Middleware API Key and {ACCOUNT-UID} with your Middleware account UID.

Datadog Kubernetes Agent

Datadog Kubernetes agent supports Helm and Operator modes of installation. Middleware can ingest traces, metrics, and logs from the Datadog Kubernetes agent installed using any of these modes.

Helm Chart Installation

If you have installed the Datadog Agent using their Helm chart, you must add the following sections to your datadog-values.yaml.

Replace <your-cluster-name> with your actual cluster name, and login to see your account's MW_API_KEY and MW_UID.

You can remove the logs_config and/or apm_config sections if you don't want to send logs or APM to Middleware.

You can also remove the orchestrator section or other sections to prevent sending Kubernetes metrics and metadata info.

Please provide accurate ClusterName values where required in the YAML, as it helps in correctly correlating data in Middleware. Any issues with cluster names can lead to inconsistencies.

FAQs

How do I troubleshoot if I can't see my data in Middleware?

  1. For Datadog Linux agent, ensure that the agent is in an active state. You can issue the following command to find out the status:

  2. Verify that the Middleware API key and target URLs are correct.

  3. Ensure there's only one apm_config and logs_config section in the configuration file (/etc/datadog/datadog.yaml).

  4. For Datadog Kubernetes agent, ensure that the datadog-agent and cluster-agent pods are operational. You should check that liveness and readiness checks are reporting healthy for both of these pods.

  5. For Kubernetes Helm chart installation method, check the datadog-values.yaml and ensure that the agents section is at the same level as the datadog section. The agents section should NOT be inside the datadog section.

Need assistance or want to learn more about Middleware? Contact our support team in Slack.