

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

# 配置 Amazon Q 开发者版 Datadog 插件
<a name="datadog-plugin"></a>

Datadog 是一款监控与安全平台，可提供基础设施、应用程序及网络监控与分析功能。如果您使用Datadog监控 AWS 应用程序，则可以使用 Amazon Q Developer 聊天中的Datadog插件访问监控信息，而无需离开 AWS 管理控制台。

您可以使用该Datadog插件来了解Datadog、了解它如何与 AWS 服务配合使用，并询问您的Datadog案例和监视器。收到响应后，您可进一步提问，例如如何解决某个问题，或查询 Datadog 资源的详细信息。

要配置插件，您需提供 Datadog 账户中的身份验证凭证，以建立 Amazon Q 与 Datadog 之间的连接。配置插件后，通过在 Amazon Q 聊天中将 ****@datadog**** 添加到问题的开头，即可访问 Datadog 指标。

**警告**  
DatadogAmazon Q 中的Datadog插件无法检测到用户权限。当管理员在账户中配置Datadog插件时，在该 AWS 账户中拥有插件权限的用户可以访问该账户中可由该Datadog插件检索的任何资源。  
您可以配置 IAM 策略来限制用户可访问的插件。有关更多信息，请参阅 [配置用户权限](#datadog-configure-user-permissions)。

## 先决条件
<a name="datadog-plugin-prerequisites"></a>

### 添加权限
<a name="add-datadog-plugin-permissions"></a>

要配置插件，需具备以下管理员级别的权限：
+ 访问 Amazon Q 开发者版控制台的权限。有关授予所需权限的 IAM 策略示例，请参阅[支持管理员使用 Amazon Q 开发者版控制台](id-based-policy-examples-admins.md#q-admin-setup-admin-users)。
+ 配置插件的权限。有关授予所需权限的 IAM 策略示例，请参阅[支持管理员配置插件](id-based-policy-examples-admins.md#id-based-policy-examples-admin-plugins)。

### 获取凭证
<a name="acquire-datadog-credentials"></a>

开始配置前，请记录您 Datadog 账户中的以下信息。配置插件时，这些身份验证凭据将存储在 AWS Secrets Manager 密钥中。
+ **站点参数**：您使用的 Datadog 站点参数。例如 `us3.datadoghq.com`。有关更多信息，请参阅 Datadog 文档中的[开始使用 Datadog 站点](https://docs.datadoghq.com/getting_started/site/)。
+ **API 密钥与应用程序密钥**：允许 Amazon Q 调用 Datadog API 以访问事件和指标的访问密钥。您可以在 Datadog 账户的**组织设置**中找到这些密钥。有关更多信息，请参阅 Datadog 文档中的 [API 与应用程序密钥](https://docs.datadoghq.com/account_management/api-app-keys/)。

## 密钥与服务角色
<a name="datadog-secrets-service-roles"></a>

### AWS Secrets Manager 秘密
<a name="datadog-secrets"></a>

配置插件时，Amazon Q 会为您创建一个用于存储Datadog身份验证凭证的新 AWS Secrets Manager 密钥。此外，您也可以使用自己创建的现有密钥。

如果您选择自行创建密钥，请确保其包含以下凭证，并采用以下 JSON 格式：

```
{ 
   "ApiKey": "<your-api-key>", 
   "AppKey": "<your-applicaiton-key>" 
}
```

有关创建密钥的更多信息，请参阅《AWS Secrets Manager 用户指南》**中的[创建密钥](https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_secret.html)。

### 服务角色
<a name="datadog-service-role"></a>

要在 Amazon Q 开发者版中配置 Datadog 插件，您需要创建一个服务角色，用于授权 Amazon Q 访问 Secrets Manager 密钥的权限。Amazon Q 会通过扮演该角色来访问存储 Datadog 凭证的密钥。

在 AWS 控制台中配置插件时，您可以选择创建新密钥或使用现有密钥。若创建新密钥，系统会自动为您创建关联的服务角色。若使用现有密钥和现有服务角色，请确保您的服务角色包含以下权限，并已附加相应的信任策略。所需的服务角色取决于您的密钥加密方式。

如果密钥使用 AWS 托管 KMS 密钥进行加密，需使用以下 IAM 服务角色：

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "secretsmanager:GetSecretValue"
            ],
            "Resource": [
                "arn:aws:secretsmanager:us-east-1:111122223333:secret:secret-id"
            ]
        }
    ]
}
```

------

如果您的密钥使用客户托管密 AWS KMS 钥加密，则需要以下 IAM 服务角色：

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "secretsmanager:GetSecretValue"
            ],
            "Resource": "arn:aws:secretsmanager:us-east-1:111122223333:secret:secret-id"
        },
        {
            "Effect": "Allow",
            "Action": [
                "kms:Decrypt"
            ],
            "Resource": "arn:aws:kms:us-east-1:111122223333:key/key-id",
            "Condition": {
                "StringEquals": {
                    "kms:ViaService": "secretsmanager.us-east-1.amazonaws.com"
                }
            }
        }
    ]
}
```

------

要允许 Amazon Q 扮演该服务角色，服务角色需包含以下信任策略：

**注意**  
`codewhisperer` 前缀是与 Amazon Q Developer 合并前的服务的旧名称。有关更多信息，请参阅 [Amazon Q 开发者版重命名：变更摘要](service-rename.md)。

------
#### [ JSON ]

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "q.amazonaws.com"
      },
      "Action": ["sts:AssumeRole", "sts:SetContext"],
      "Condition": {
        "StringEquals": {
          "aws:SourceAccount": "111122223333",
          "aws:SourceArn": "arn:aws:codewhisperer:us-east-1:111122223333:profile/profile-id"
        }
      }
    }
  ]
}
```

------

有关服务角色的更多信息，请参阅《*AWS Identity and Access Management 用户指南》*中的[创建角色以向 AWS 服务委派权限](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_create_for-service.html)。

## 配置 Datadog 插件
<a name="datadog-configure"></a>

您需在 Amazon Q 开发者版控制台中配置插件。Amazon Q 会使用存储在 AWS Secrets Manager 中的凭证，实现与 Datadog 的交互。

要配置 Datadog 插件，请完成以下流程：

1. 在开发者/主页打开 Amazon Q [https://console.aws.amazon.com/amazonq/开发](https://console.aws.amazon.com/amazonq/developer/home)者控制台

1. 在 Amazon Q 开发者版控制台首页，选择**设置**。

1. 在导航栏中，选择**插件**。

1. 在插件页面，点击 **Datadog** 面板上的加号，打开插件配置页面。

1. 在**站点 URL** 字段中，输入您使用的 Datadog 站点 URL。

1. 在 “**配置**” AWS Secrets Manager中，选择 “**创建新密钥**” 或 “**使用现有密钥**”。Secrets Manager 密钥将用于存储您的 Datadog 身份验证凭证。

   如果您要创建新密钥，请输入以下信息。

   1. 在 **Datadog API 密钥**字段中，输入您 Datadog 组织的 API 密钥。

   1. 在 **Datadog 应用程序密钥**字段中，输入您 Datadog 账户的应用程序密钥。

   1. 系统会自动创建一个服务角色，供 Amazon Q 访问存储 Datadog 凭证的密钥。请勿编辑系统为您创建的服务角色。

   如果您使用现有密钥，请从 **AWS Secrets Manager 密钥**下拉菜单中选择一个密钥。该密钥需包含前文步骤中指定的 Datadog 身份验证凭证。

   有关所需凭证的更多信息，请参阅[获取凭证](#acquire-datadog-credentials)。

1. 对于**配置 AWS IAM 服务角色**，选择**创建新的服务角色**或**使用现有服务角色**。
**注意**  
如果您在步骤 6 中选择了**创建新密钥**，则无法使用现有服务角色。系统会自动为您创建一个新角色。

   如果您要创建新的服务角色，系统会自动创建一个服务角色，供 Amazon Q 访问存储 Datadog 凭证的密钥。请勿编辑系统为您创建的服务角色。

   如果您要使用现有服务角色，请从显示的下拉菜单中选择一个角色。请确保该服务角色包含[服务角色](#datadog-service-role)中定义的权限和信任策略。

1. 选择 **Save configuration**。

1. 当 Datadog 插件面板显示在“插件”页面的**已配置插件**部分后，用户即可访问该插件。

如果您要更新插件凭证，必须删除当前插件，然后配置一个新插件。删除插件会清除之前的所有配置信息，且每次配置新插件时，都会生成一个新的插件 ARN。

## 配置用户权限
<a name="datadog-configure-user-permissions"></a>

要使用插件，需具备以下权限：
+ 在控制台中与 Amazon Q 进行交互的权限。有关授予聊天所需权限的 IAM 策略示例，请参阅[允许用户与 Amazon Q 聊天允许用户将 Amazon Q CLI 与 AWS CloudShell](id-based-policy-examples-users.md#id-based-policy-examples-allow-chat)。
+ `q:UsePlugin` 权限。

当您向某个 IAM 身份授予已配置 Datadog 插件的访问权限后，该身份将能访问插件可检索的 Datadog 账户中的所有资源。该插件无法检测 Datadog 的用户权限。若需控制对插件的访问权限，可在 IAM 策略中指定插件的 ARN。

每次创建插件或删除并重新配置插件时，系统都会为其分配一个新的 ARN。如果您在策略中使用了插件 ARN，且希望授予对新配置插件的访问权限，则需更新该 ARN。

要查找 Datadog 插件的 ARN，请转至 Amazon Q 开发者版控制台的**插件**页面，然后选择已配置的 Datadog 插件。在“插件详细信息”页面，复制插件 ARN。您可将该 ARN 添加到策略中，以允许或拒绝对 Datadog 插件的访问。

如果您创建策略以控制对 Datadog 插件的访问权限，请在策略中指定插件提供商为 `Datadog`。

有关控制插件访问权限的 IAM 策略示例，请参阅[支持用户与来自一个提供商的插件进行聊天](id-based-policy-examples-users.md#id-based-policy-examples-allow-plugin-type)。

## 与 Datadog 插件进行交互
<a name="use-datadog-plugin"></a>

要使用该Datadog插件，请在有关Datadog您的 AWS 应用程序监视器和案例的问题开头输入**@datadog**。针对 Amazon Q 问题的后续提问或回复，也必须包含 **@datadog**。

以下是一些使用案例示例及对应的问题，可帮助您充分利用 Amazon Q Datadog 插件：
+  **了解如何在 AWS 工作负载中使用Datadog功能** — 询问Datadog功能如何与某些 AWS 服务配合使用。Amazon Q 可能会询问您更多关于您所尝试操作的信息，以提供最佳答案。
  + **@datadog how do I use APM on EC2?** 
+ **检索并汇总案例和监控信息**：查询特定案例或监控信息，或通过指定属性（如创建日期、状态、创建者）获取监控和案例的相关信息。有关属性的更多信息，请参阅 Datadog 文档中的[属性](https://docs.datadoghq.com/monitors/manage/status/#properties)。
  + **@datadog summarize the global outage case** 
  + **@datadog summarize my top cases** 
+ **检查处于警报状态的显示器** — 让 Amazon Q Datadog 插件查找处于警报状态的 AWS 应用程序监视器。您还可以针对列出的监控进一步提问。
  + **@datadog what monitors are in alarm?** 
  + **@datadog what is the status for monitor <monitor ID>?** 