

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 正在连接 DataDog
<a name="connecting-telemetry-sources-connecting-datadog"></a>

## Built-in，单向集成
<a name="built-in-1-way-integration"></a>

目前， AWS DevOps Agent 通过内置的单向集成支持 Datadog 用户，支持以下功能：
+ **自动触发调查**-可以将 Datadog 事件配置为通过 AWS DevOps 代理 webhook 触发 AWS DevOps 代理事件解决调查。
+ **遥测内省** —— AWS DevOps 代理可以在通过每个提供商的远程 MCP 服务器调查问题时反省 Datadog 遥测数据。

## 信息载入
<a name="onboarding"></a>

### 步骤 1：Connect
<a name="step-1-connect"></a>

使用账户访问凭证与您的 Datadog 远程 MCP 端点建立连接

#### 配置
<a name="configuration"></a>

1. 转到**能力提供者**页面（可从侧面导航栏访问）

1. **在 “**遥测**” 下的 “**可用**提供商” 部分中找到 **Datadog**，然后选择 “注册”**

1. 输入您的 Datadog MCP 服务器详细信息：
   + **服务器名称**-唯一标识符（例如，my-datadog-server）
   + **端点 URL**-您的 Datadog MCP 服务器端点。端点网址因您的 Datadog 网站而异。请参阅下面的 Datadog 站点端点表。
   + **描述**-可选的服务器描述

1. 选择下一步。

1. 审核并提交

#### Datadog 网站端点
<a name="datadog-site-endpoints"></a>

MCP 端点网址因您的 Datadog 网站而异。要识别您的网站，请在登录 Datadog 时在浏览器中查看网址，或者参[阅访问 Dat](https://docs.datadoghq.com/getting_started/site/#access-the-datadog-site) adog 网站。


| Datadog 网站 | 网站域名 | MCP 端点网址 | 
| --- | --- | --- | 
| US1（默认） | datadoghq.com | https://mcp.datadoghq.com/api/unstable/mcp-server/mcp | 
| US3 | us3.datadoghq.com | https://mcp.us3.datadoghq.com/api/unstable/mcp-server/mcp | 
| US5 | us5.datadoghq.com | https://mcp.us5.datadoghq.com/api/unstable/mcp-server/mcp | 
| EU1 | datadoghq.eu | https://mcp.datadoghq.eu/api/unstable/mcp-server/mcp | 
| AP1 | ap1.datadoghq.com | https://mcp.ap1.datadoghq.com/api/unstable/mcp-server/mcp | 
| AP2 | ap2.datadoghq.com | https://mcp.ap2.datadoghq.com/api/unstable/mcp-server/mcp | 

#### Authorization
<a name="authorization"></a>

通过以下方式完成 OAuth 授权：
+ 在 Datadog OAuth 页面上以您的用户身份进行授权
+ 如果未登录，请选择 “允许”、“登录”，然后选择 “授权”

配置完成后，Datadog 将在所有代理空间中使用。

### 步骤 2：启用
<a name="step-2-enable"></a>

 DataDog 在特定的代理空间中激活并配置适当的作用域

#### 配置
<a name="configuration"></a>

1. 在座席空间页面上，选择一个座席空间，然后按查看详情（如果您尚未创建座席空间，请参阅[创建代理空间](getting-started-with-aws-devops-agent-creating-an-agent-space.md)）

1. 选择 “权能” 选项卡

1. 向下滚动到 “遥测” 部分

1. 按添加

1. 选择 Datadog

1. 下一步

1. 查看并按保存

1. 复制 Webhook 网址和 API 密钥（保存时显示一次；API 密钥以后无法查看 — 如果您丢失了，请从 “功能” 选项卡上的 webhook 详细信息中重新生成它，这将使之前的密钥失效）

### 步骤 3：配置 Webhook
<a name="step-3-configure-webhooks"></a>

使用步骤 2 中的 Webhook 网址和 API 密钥，您可以将 Datadog 配置为发送触发调查的事件，例如监控器发出警报时。

Datadog 网络挂钩使用不记名令牌身份验证。有关一般的 webhook 请求格式和有效负载架构，请参阅[通过 Webhook 调用 DevOps 代理](configuring-integrations-and-knowledge-invoking-devops-agent-through-webhook.md)。以下各节提供了现成的Datadog配置；您无需自己构造有效负载。

#### 步骤 3.1：在 Datadog 中创建 webhook
<a name="step-31-create-the-webhook-in-datadog"></a>

1. 在 Datadog 中，打开**集成**，搜索 **Webhooks**，然后打开集成磁贴。有关更多信息，请参阅 Datado [g 文档中的 Webhook](https://docs.datadoghq.com/integrations/webhooks/)。

1. 在 **Webhook** 下，选择**新建**。

1. 在 “**名称**” 中，输入一个名称，例如`devops-agent`。您可以像`@webhook-devops-agent`在监视器消息中一样引用此名称。

1. **对于**网址**，请粘贴步骤 2 中的 Webhook 网址（可再次从代理空间的 “功能” 选项卡上的 Datadog 条目中查看）。**

1. 对于**负载**，将默认负载替换为步骤 3.2 中的模板。

1. 取消配置**身份验证方法**，改为选择 “**自定义标头**”，然后输入以下示例中显示的标题，`<API_KEY_FROM_STEP_2>`替换为步骤 2 中的 API 密钥。

1. 清除 “**表单编码**”。Webhook 端点需要原始的 JSON 正文；表单编码会导致有效负载处理失败。

1. 保存 webhook。

步骤 6 的自定义标题值：

```
{"Authorization": "Bearer <API_KEY_FROM_STEP_2>"}
```

为避免将密钥存储在普通视图中，请在选中 “**隐藏**视图” 的情况下在 webhook 磁贴中定义一个自定义变量（例如`$DEVOPS_AGENT_API_KEY`），然后改为在标题值中引用该变量。

#### 步骤 3.2：监控器触发的警报的负载模板
<a name="step-32-payload-template-for-monitor-triggered-alerts"></a>

以下模板适用于标准监控器警报，包括指标、日志、APM 和 Synthetics 监控器。Datadog 在发送 webhook 时会替换`$VARIABLE`占位符；保持原样。

```
{
  "eventType": "incident",
  "incidentId": "datadog-$ALERT_CYCLE_KEY",
  "action": "created",
  "priority": "HIGH",
  "title": "$ALERT_TITLE",
  "description": "$TEXT_ONLY_MSG",
  "service": "datadog",
  "data": {
    "monitorId": "$ALERT_ID",
    "eventType": "$EVENT_TYPE",
    "alertQuery": "$ALERT_QUERY",
    "alertScope": "$ALERT_SCOPE",
    "alertMetric": "$ALERT_METRIC",
    "alertTransition": "$ALERT_TRANSITION",
    "alertPriority": "$ALERT_PRIORITY",
    "tags": "$TAGS",
    "eventUrl": "$LINK",
    "hostname": "$HOSTNAME"
  }
}
```

#### Datadog 变量如何映射到 webhook 架构
<a name="how-datadog-variables-map-to-the-webhook-schema"></a>


| Webhook 字段 | 要使用的值 | 注意 | 
| --- | --- | --- | 
| eventType | 字面字符串 incident | 必需常量。 | 
| incidentId | datadog-$ALERT\_CYCLE\_KEY | $ALERT\_CYCLE\_KEY从监视器触发到解析一直保持不变，因此重新通知会将重复数据删除到单个调查中。仅当您希望每份通知都开始单独调查时，才使用$ID（每个事件的 ID）。 | 
| action | 字面字符串 created | 不要映射$ALERT\_TRANSITION到此字段。其值（例如Triggered和Recovered）不是有效action值。改为通过监控消息控制 webhook 何时触发（参见步骤 3.3）。 | 
| priority | 其中一个字面字符串CRITICAL、HIGH、MEDIUMLOW、或 MINIMAL | 不要$ALERT\_PRIORITY在这里使用。它扩展为 Datadog 监视器优先级 (P1—P5)，这不是该字段的有效值。webhook 返回了 200 的响应，但没有开始调查。要发送不同的优先级，请为每个优先级创建一个 webhook（例如devops-agent-critical和devops-agent-high），然后从每台显示器引用相应的 webhook。 | 
| title | $ALERT\_TITLE | 显示器的警报标题。 | 
| description | $TEXT\_ONLY\_MSG | 删除了 Markdown 的事件文本。更喜欢这个$EVENT\_MSG，它的 Markdown 格式会增加噪音。 | 
| service | 字面上的服务名称 | 可选。标识来源的静态字符串，例如datadog或您的服务名称。 | 
| timestamp | 省略 | 可选。Datadog 的日期变量 ($DATE,$DATE\_POSIX) 是时代值，而不是该字段期望的 ISO 8601 格式，因此请省略该字段。 | 
| data | Datadog 上下文变量 | 可选但不推荐。中的data所有内容都作为原始事件传递给代理，从而为调查提供监控查询、范围、标签以及返回 Datadog 事件的链接。 | 

#### 步骤 3.3：在显示器上引用 webhook
<a name="step-33-reference-the-webhook-from-your-monitors"></a>

在警报应触发调查的每个监视器中，在监视器消息中添加 webhook 提及，其作用范围是只有警报过渡才会触发它：

```
{{#is_alert}}
@webhook-devops-agent
{{/is_alert}}
```

如果没有`{{#is_alert}}`条件通知，警告和恢复通知也会发送 webhook。恢复事件会对公开调查进行重复数据删除`$ALERT_CYCLE_KEY`，但是警告会开始调查您可能不想调查的阈值。

#### 验证配置
<a name="verify-the-configuration"></a>

从显示器发送测试通知（显示器编辑器中的**测试通知**）并确认以下内容：

1. **Webhook 返回 200 的响应。**你可以在 Datadog webhook 集成的事件流中看到交付状态。4xx 响应表示标`Authorization`题错误。 Re-check API 密钥并确认已清除 **“编码为表单**”。

1. **调查将在您的特工空间开始。**（测试通知的调查在没有根本原因的情况下结束——这是预料之中的。） 未进行调查的 200 响应意味着有效载荷在被接受后未通过验证。检查 Datadog 事件流中的 webhook 响应正文：无效的负载会返回 200 响应，其正文列出了验证错误（例如`'P2' is not one of ['CRITICAL', 'HIGH', ...]`），而有效的负载则返回。`{"message": "Webhook received"}`最常见的原因是非文字`priority`值（参见前面的映射表）和同一警报`incidentId`周期中先前测试的重复项。

有关 Webhook 的一般疑难解答，请参阅[通过 Webhook 调用 DevOps 代理](configuring-integrations-and-knowledge-invoking-devops-agent-through-webhook.md)。

了解更多：[Datadog 远程 MCP 服务器](https://www.datadoghq.com/blog/datadog-remote-mcp-server/)

## 移除
<a name="removal"></a>

遥测源在两个级别上连接，分别是代理空间级别和账户级别。要将其完全删除，必须先将其从所有使用它的代理空间中删除，然后才能将其取消注册。

### 步骤 1：从代理空间中移除
<a name="step-1-remove-from-agent-space"></a>

1. 在座席空间页面上，选择一个座席空间，然后按查看详情

1. 选择 “权能” 选项卡

1. 向下滚动到 “遥测” 部分

1. 选择 Datadog

1. 按移除

### 第 2 步：注销账号
<a name="step-2-deregister-from-account"></a>

1. 转到**能力提供者**页面（可从侧面导航栏访问）

1. 滚动到 “**当前注册**” 部分。

1. 检查代理空间计数是否为零（如果不是，请在其他代理空间中重复上述步骤 1）

1. **选择 Datadog，然后从 “操作” 菜单中选择 “**取消注册**”。**