

# Conexión a Datadog
<a name="connecting-to-datadog"></a>

Datadog es una plataforma de supervisión y análisis para aplicaciones a escala de la nube, que incluye infraestructura, aplicaciones, servicios y herramientas.

**Topics**
+ [Compatibilidad de AWS Glue con Datadog](datadog-support.md)
+ [Políticas que contienen las operaciones de la API para crear y usar conexiones](datadog-configuring-iam-permissions.md)
+ [Configuración de Datadog](datadog-configuring.md)
+ [Configuración de las conexiones a Datadog](datadog-configuring-connections.md)
+ [Leer de entidades de Datadog](datadog-reading-from-entities.md)
+ [Opciones de conexión a Datadog](datadog-connection-options.md)
+ [Cómo crear una cuenta de Datadog](datadog-create-account.md)
+ [Limitaciones](datadog-connector-limitations.md)

# Compatibilidad de AWS Glue con Datadog
<a name="datadog-support"></a>

AWS Glue admite Datadog de la siguiente manera:

**¿Es compatible como origen?**  
Sí. Puede usar los trabajos de ETL de AWS Glue para consultar datos de Datadog.

**¿Es compatible como destino?**  
No.

**Versiones de la API de Datadog compatibles**  
 
+ v1
+ v2

# Políticas que contienen las operaciones de la API para crear y usar conexiones
<a name="datadog-configuring-iam-permissions"></a>

En el siguiente ejemplo de política se describen los permisos de AWS necesarios para crear y utilizar conexiones. Si va a crear un nuevo rol, cree una política que contenga lo siguiente: 

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "glue:ListConnectionTypes",
        "glue:DescribeConnectionType",
        "glue:RefreshOAuth2Tokens",
        "glue:ListEntities",
        "glue:DescribeEntity"
      ],
      "Resource": "*"
    }
  ]
}
```

------

Si no desea utilizar el método anterior, como alternativa, utilice las siguientes políticas de IAM administradas:
+  [AWSGlueServiceRole](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/service-role/AWSGlueServiceRole): concede acceso a los recursos que necesitan diversos procesos de AWS Glue para ejecutarse en su nombre. Entre estos recursos se incluyen AWS Glue, Amazon S3, IAM, CloudWatch Logs y Amazon EC2. Si aplica la convención de nomenclatura en los recursos especificados en esta política, los procesos de AWS Glue tienen los permisos necesarios. Normalmente, esta política se asocia a los roles que se especifican a la hora de definir rastreadores, trabajos y puntos de conexión de desarrollo. 
+  [AWSGlueConsoleFullAccess](https://console.aws.amazon.com/iam/home#policies/arn:aws:iam::aws:policy/AWSGlueConsoleFullAccess): concede acceso completo a los recursos de AWS Gluecuando una identidad a la que está vinculada la política utiliza la Consola de administración de AWS. Si sigue la convención de nomenclatura para los recursos especificados en esta política, los usuarios dispondrán de todas las funciones de la consola. Esta política se suele adjuntar a los usuarios de la consola AWS Glue. 

# Configuración de Datadog
<a name="datadog-configuring"></a>

Antes de poder utilizar AWS Glue para transferir desde Datadog, deberá cumplir los siguientes requisitos:

## Requisitos mínimos
<a name="datadog-configuring-min-requirements"></a>
+ Tener una cuenta de Datadog con DD-API-KEY y DD-APPLICATION-KEY. Para obtener más información sobre cómo crear una cuenta, consulte [Creación de una cuenta de Datadog](datadog-create-account.md). 
+  La cuenta de Datadog tiene acceso de API con una licencia válida.

   

Datadog admite las siguientes seis URL. Todos los clientes de la API de Datadog se configuran de forma predeterminada para consumir las API del sitio US1 de Datadog. Si se encuentra en el sitio de la UE de Datadog, debe seleccionar la URL https://api.datadoghq.eu con la `DD-API-KEY` y la `DD-APPLICATION-KEY` del sitio de la UE de Datadog para acceder a las API. Del mismo modo, para otros sitios, debe seleccionar las URL respectivas con las `DD-API-KEY and DD-APPLICATION-KEY` del sitio correspondiente. 
+ URL DE LA API DE US1: [https://api.datadoghq.com](https://api.datadoghq.com)https://api.datadoghq.com
+ URL DE LA API DE LA UE: [https://api.datadoghq.eu ](https://api.datadoghq.eu)
+ URL DE LA API DE US3: [https://api.us3.datadoghq.com](https://api.us3.datadoghq.com) 
+ URL DE LA API DE US5: [https://api.us5.datadoghq.com](https://api.us5.datadoghq.com)
+ URL DE LA API DE S1-FED: [https://api.ddog-gov.com](https://api.ddog-gov.com)
+ URL DE LA API DE JAPÓN: [https://api.ap1.datadoghq.com](https://api.ap1.datadoghq.com)

Si cumple estos requisitos, estará listo para conectar AWS Glue a la cuenta de Datadog.

# Configuración de las conexiones a Datadog
<a name="datadog-configuring-connections"></a>

Datadog admite la autenticación personalizada. Estos son los pasos que hay que seguir para configurar la conexión a Datadog:

Para configurar una conexión a Datadog:

1. En AWS Secrets Manager, cree un secreto con los siguientes detalles: 

   Para la aplicación conectada administrada por el cliente: el secreto debe contener el secreto del consumidor de la aplicación conectada con `API_KEY` y `APPLICATION_KEY` como claves. 
**nota**  
Es imprescindible crear un secreto por conexión en AWS Glue.

1. En AWS Glue Studio, cree una conexión en **Conexiones de datos** según los pasos que se indican a continuación: 

   1. Al seleccionar un **Tipo de conexión**, elija Datadog.

   1. Proporcione la `Instance_Url` de Datadog a la que se desea conectar.

   1. Seleccione el rol de IAM que AWS Glue puede asumir y que cuente con los permisos necesarios para realizar las siguientes acciones: 

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

****  

      ```
      {
        "Version":"2012-10-17",		 	 	 
        "Statement": [
          {
            "Effect": "Allow",
            "Action": [
              "secretsmanager:DescribeSecret",
              "secretsmanager:GetSecretValue",
              "secretsmanager:PutSecretValue",
              "ec2:CreateNetworkInterface",
              "ec2:DescribeNetworkInterfaces",
              "ec2:DeleteNetworkInterface"
            ],
            "Resource": "*"
          }
        ]
      }
      ```

------

   1. Seleccione el `secretName` que desee usar para esta conexión en AWS Glue para colocar los tokens. 

   1.  Seleccione las opciones de red si quiere usar su red. 

1. Conceda el rol de IAM asociado a su permiso de trabajo de AWS Glue para leer `secretName`. 

# Leer de entidades de Datadog
<a name="datadog-reading-from-entities"></a>

 **Requisitos previos** 

Un objeto de Datadog desde el que desea leer. Consulte la tabla de entidades compatibles que aparece a continuación para comprobar las entidades disponibles. 

 **Entidades compatibles** 


| Entidad | Se puede filtrar | Admite límite | Admite Ordenar por | Admite Seleccionar \$1 | Admite Partición | 
| --- | --- | --- | --- | --- | --- | 
|  Serie de tiempo de métricas  | Sí | No | No | Sí | No | 
|  Consultas de registros  | Sí | Sí | Sí | Sí | No | 

 **Ejemplo** 

```
Datadog_read = glueContext.create_dynamic_frame.from_options(
    connection_type="datadog",
    connection_options={
        "connectionName": "connectionName",
        "ENTITY_NAME": "log-queries",
        "API_VERSION": "v2",
        "INSTANCE_URL": "https://api.datadoghq.com",
        "FILTER_PREDICATE": "from = `2023-10-03T09:00:26Z`"
    }
```

 **Detalles de entidades y campos de Datadog** 

[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/es_es/glue/latest/dg/datadog-reading-from-entities.html)

# Opciones de conexión a Datadog
<a name="datadog-connection-options"></a>

Las siguientes son opciones de conexión para Datadog:
+  `ENTITY_NAME`(cadena): (obligatorio) se utiliza para leer y escribir. El nombre del objeto en Datadog.
+  `API_VERSION`(cadena): (obligatorio) se utiliza para leer y escribir. La versión de la API de Rest de Datadog que desea utilizar. La versión de `v1` admite la entidad `metrics-timeseries`, mientras que la versión `v2` admite la entidad `log-queries`.
+  `INSTANCE_URL`(cadena): (obligatorio) se usa para lectura. URL de la instancia de Datadog. La URL de la instancia de Datadog varía según la región. 
+  `SELECTED_FIELDS`(lista<Cadena>): predeterminado: empty(SELECT \$1). Se usa para leer. Columnas que desee seleccionar para el objeto. 
+  `FILTER_PREDICATE`(cadena): predeterminado: vacío. Se usa para leer. Debe estar en el formato de Spark SQL. 
+  `QUERY`(cadena): predeterminado: vacío. Se usa para leer. Consulta completa de Spark SQL. 

# Cómo crear una cuenta de Datadog
<a name="datadog-create-account"></a>

1. Vaya a [https://www.datadoghq.com/](https://api.datadoghq.com). 

1. Elija **COMENZAR DE FORMA GRATUITA**.

1. Ingrese la información requerida y regístrese. 

1. Instale el **Instalador del agente Datadog** como se sugiere. 

1. Asegúrese de que la cuenta queda registrada en una organización válida (de la lista disponible) que tenga una suscripción activa a Datadog. 

1. Después de iniciar sesión en la cuenta de Datadog, pase el cursor sobre el nombre de usuario en la esquina superior derecha para ver los detalles de las **claves**:

   1. Para obtener la clave de la API, elija **Claves de la API**.

   1. Para obtener la clave de la aplicación, elija **Claves de aplicación**.

# Limitaciones
<a name="datadog-connector-limitations"></a>

Las siguientes son limitaciones para el conector de Datadog:
+ Datadog no admite la partición basada en campos ni en registros.
+ `from` es un parámetro de filtro obligatorio para la entidad `Log Queries`.
+ `from_to_date` y `query` son parámetros de filtro obligatorios para la entidad `Metrics Timeseries`.