

Tras considerarlo detenidamente, hemos decidido dejar de utilizar Amazon Kinesis Data Analytics para aplicaciones SQL:

1. A partir del **1 de septiembre de 2025,** no proporcionaremos ninguna corrección de errores para las aplicaciones de Amazon Kinesis Data Analytics for SQL porque tendremos un soporte limitado debido a la próxima discontinuación.

2. A partir del **15 de octubre de 2025,** no podrá crear nuevas aplicaciones de Kinesis Data Analytics for SQL.

3. Eliminaremos sus aplicaciones a partir del **27 de enero de 2026**. No podrá iniciar ni utilizar sus aplicaciones de Amazon Kinesis Data Analytics para SQL. A partir de ese momento, el servicio de soporte de Amazon Kinesis Data Analytics para SQL dejará de estar disponible. Para obtener más información, consulte [Retirada de las aplicaciones de Amazon Kinesis Data Analytics para SQL](discontinuation.md).

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# Monitorización con Amazon CloudWatch
<a name="monitoring-cloudwatch"></a>

Puedes monitorizar las aplicaciones con Amazon CloudWatch. CloudWatch recopila y procesa datos sin procesar para convertirlos en métricas legibles y casi en tiempo real. Estas estadísticas se conservan durante un periodo de dos semanas. Puede acceder a información histórica y disponer de una mejor perspectiva sobre el desempeño de su aplicación web o servicio. De forma predeterminada, los datos métricos se envían automáticamente a CloudWatch. Para obtener más información, consulta [¿Qué es Amazon CloudWatch?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/WhatIsCloudWatch.html) en la *Guía del CloudWatch usuario de Amazon*.

**Topics**
+ [Métricas y dimensiones](monitoring-metrics.md)
+ [Consulta de dimensiones y métricas de](metrics-dimensions.md)
+ [Creación de CloudWatch alarmas para monitorizar](creating-alarms.md)
+ [Trabajar con Amazon CloudWatch Logs](cloudwatch-logs.md)

# Métricas y dimensiones
<a name="monitoring-metrics"></a>

El espacio de nombres de `AWS/KinesisAnalytics` incluye las siguientes métricas.


| Métrica | Description (Descripción) | 
| --- | --- | 
|  `Bytes` | El número de bytes leídos (por secuencia de entrada) o escritos (por secuencia de salida).  Niveles: por secuencia de entrada y por secuencia de salida.  | 
|  `KPUs` | Cantidad de unidades de procesamiento de Kinesis Processing Units que se utilizan para ejecutar su aplicación de procesamiento de flujos. El número medio de horas KPUs utilizadas por hora determina la facturación de tu aplicación. Niveles: nivel de aplicación  | 
|  `MillisBehindLatest` |  Indica el retraso de lectura de una fuente de streaming por parte de una aplicación con respecto a la hora actual. Niveles: nivel de aplicación  | 
|  `Records` | El número de registros leídos (por secuencia de entrada) o escritos (por secuencia de salida). Niveles: por secuencia de entrada y por secuencia de salida.  | 
|  `Success` | 1 para cada intento de entrega correcto al destino configurado para la aplicación; 0 para cada intento de entrega que ha fallado. El valor medio de esta métrica indica cuántas entregas correctas se han realizado. Niveles: por destino.  | 
|  `InputProcessing.Duration` |  El tiempo necesario para cada invocación de AWS Lambda función realizada por. Niveles: por secuencia de entrada  | 
|  `InputProcessing.OkRecords ` |  El número de registros devueltos por una función de Lambda que se marcaron con el estado `Ok`.  Niveles: por secuencia de entrada  | 
|  `InputProcessing.OkBytes ` |  La suma de bytes de los registros devueltos por una función de Lambda que se marcaron con el estado `Ok`. Niveles: por secuencia de entrada  | 
|  `InputProcessing.DroppedRecords ` |  El número de registros devueltos por una función de Lambda que se marcaron con el estado `Dropped`.  Niveles: por secuencia de entrada  | 
|  `InputProcessing.ProcessingFailedRecords ` |  El número de registros devueltos por una función de Lambda que se marcaron con el estado `ProcessingFailed`.  Niveles: por secuencia de entrada  | 
|  `InputProcessing.Success` |  El número de invocaciones de funciones de Lambda correctas realizadas por . Niveles: por secuencia de entrada  | 
|  `LambdaDelivery.OkRecords` |  El número de registros devueltos por una función de Lambda que se marcaron con el estado `Ok`.  Niveles: Por destino de Lambda | 
|  `LambdaDelivery.DeliveryFailedRecords` |  El número de registros devueltos por una función de Lambda que se marcaron con el estado `DeliveryFailed`.  Niveles: Por destino de Lambda | 
|  `LambdaDelivery.Duration` |  Tiempo que se tarda en invocar cada función de Lambda. Niveles: Por destino de Lambda | 

 proporciona métricas para las siguientes dimensiones.


| Dimensión | Description (Descripción) | 
| --- | --- | 
|  `Flow`  |  Por secuencia de entrada: entrada  Por secuencia de salida: salida  | 
|  `Id`  |  Por secuencia de entrada: ID de entrada Por secuencia de salida: ID de salida  | 

# Consulta de dimensiones y métricas de
<a name="metrics-dimensions"></a>

Cuando su aplicación procesa los flujos de datos, envía las siguientes métricas y dimensiones a CloudWatch. Puede utilizar los siguientes procedimientos para consultar las métricas de .

En la consola, se agrupan las métricas en primer lugar por el espacio de nombres de servicio y, luego, por las combinaciones de dimensiones dentro de cada espacio de nombres.

**Para ver las métricas mediante la CloudWatch consola**

1. Abra la CloudWatch consola en [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1. En el panel de navegación, seleccione **Métricas**.

1. En el panel **CloudWatch Métricas por categoría** de, elija una categoría de métricas.

1. En el panel superior, desplácese para ver la lista completa de métricas.

**Para ver las métricas mediante el AWS CLI**
+ En el símbolo del sistema, ejecute el siguiente comando.

  ```
  1. aws cloudwatch list-metrics --namespace "AWS/KinesisAnalytics" --region region
  ```

 Se recopilan las métricas en los siguientes niveles:
+ Aplicación 
+ Secuencia de entrada
+ Secuencia de salida

# Creación de CloudWatch alarmas para monitorizar
<a name="creating-alarms"></a>

Puede crear una CloudWatch alarma de Amazon que envíe un mensaje de Amazon SNS cuando la alarma cambie de estado. Una alarma vigila una métrica individual durante un periodo de tiempo que usted especifica. Realiza una o varias acciones según el valor de la métrica con respecto a un umbral dado durante varios períodos de tiempo. La acción es una notificación que se envía a un tema de Amazon SNS o a una política de escalado automático. 

Las alarmas invocan acciones únicamente para los cambios de estado prolongados. Para que una CloudWatch alarma invoque una acción, el estado debe haber cambiado y mantenerse durante un período de tiempo específico.

Puede configurar las alarmas mediante la Consola de administración de AWS, o la CloudWatch API CloudWatch AWS CLI, tal y como se describe a continuación.

**Para configurar una alarma mediante la CloudWatch consola**

1. Inicie sesión en Consola de administración de AWS y abra la CloudWatch consola en [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/).

1.  Elija **Crear alarma**. Se inicia el **Create Alarm Wizard (Asistente de creación de alarmas)**. 

1. Seleccione **Kinesis Analytics Metrics (Métricas de Kinesis Analytics)**. A continuación, desplácese por las métricas de para localizar la métrica en la que desea colocar una alarma. 

   Para mostrar solo las métricas de ; busque el ID del sistema de archivos de su sistema de archivos. Seleccione la métrica para crear una alarma y, luego, elija **Next (Siguiente)**.

1. Escriba valores para **Name (Nombre)**, **Description (Descripción)** y **Whenever (Siempre que)** para la métrica. 

1. Si CloudWatch quieres enviarte un correo electrónico cuando se alcance el estado de alarma, en el campo **Siempre que aparezca esta alarma:**, selecciona **State is ALARM**. En el campo **Send notification to: (Enviar notificación a:)**, elija un tema de SNS. Si selecciona **Crear tema**, puede definir el nombre y las direcciones de correo electrónico de una nueva lista de suscripción de correo electrónico. Esta lista se guarda y aparece en el campo para futuras alarmas. 
**nota**  
 Si utiliza **Crear tema** para crear un nuevo tema de Amazon SNS, debe verificar las direcciones de correo electrónico para que reciban notificaciones. Los correos electrónicos solo se envían cuando la alarma entra en estado de alarma. Si este cambio en el estado de la alarma se produce antes de que se verifiquen las direcciones de correo electrónico, no reciben una notificación.

1. En la sección **Alarm Preview**, previsualice la alarma que está a punto de crear. 

1. Elija **Create Alarm** para crear la alarma.

**Para configurar una alarma mediante la CloudWatch CLI**
+  Llamar a `[mon-put-metric-alarm](https://docs.aws.amazon.com/AmazonCloudWatch/latest/cli/cli-mon-put-metric-alarm.html)`. Para obtener más información, consulte la [referencia de Amazon CloudWatch CLI](https://docs.aws.amazon.com/AmazonCloudWatch/latest/cli/). 

**Para configurar una alarma mediante la CloudWatch API**
+ Llamar a `[PutMetricAlarm](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_PutMetricAlarm.html)`. Para obtener más información, consulta la [referencia de la CloudWatch API de Amazon](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/). 

# Trabajar con Amazon CloudWatch Logs
<a name="cloudwatch-logs"></a>

Si una aplicación de está mal configurado, puede pasar a un estado de ejecución durante el inicio de la aplicación. O bien puede actualizar pero no procesar los datos en la secuencia de entrada en la aplicación. Al añadir una opción de CloudWatch registro a la aplicación, puede supervisar los problemas de configuración de la aplicación.

 puede generar errores de configuración en las siguientes condiciones:
+ El flujo de datos de Kinesis utilizado para la entrada no existe.
+ El flujo de entrega de Amazon Data Firehose utilizado para la entrada no existe.
+ El bucket de Amazon S3 utilizado como origen de datos de referencia no existe.
+ El archivo especificado en el origen de datos de referencia en el bucket de S3 no existe.
+ El recurso correcto no está definido en la función AWS Identity and Access Management (IAM) que administra los permisos relacionados.
+ No se define el permiso correcto en el rol de IAM que administra los permisos relacionados.
+  no tiene permiso para asumir el rol de IAM que administra los permisos relacionados.

Para obtener más información sobre Amazon CloudWatch, consulta la [https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/).

## Añadir la acción PutLogEvents política
<a name="enable_putlogevents"></a>

 necesita permisos para escribir errores de configuración. CloudWatch Puede añadir estos permisos a la función de IAM que asume, tal y como se describe a continuación. Para obtener más información acerca del uso de un rol de IAM, consulte [Gestión de identidad y acceso en Kinesis Data Analytics](iam-role.md).

### Política de confianza
<a name="enable_putlogevents_trust_policy"></a>

Para conceder permisos a para asumir una función de IAM, puede asignar la siguiente política de confianza al rol.

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

****  

```
{
  "Version":"2012-10-17",		 	 	 
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "Service": "kinesisanalytics.amazonaws.com"
      },
      "Action": "sts:AssumeRole"
    }
  ]
}
```

------

### Política de permisos
<a name="enable_putlogevents_permissions_policy"></a>

Para conceder a una aplicación permisos para escribir eventos de registro CloudWatch desde un recurso, puede utilizar la siguiente política de permisos de IAM.

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

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "Stmt0123456789000",
            "Effect": "Allow",
            "Action": [
                "logs:PutLogEvents"
            ],
            "Resource": [
                "arn:aws:logs:us-east-1:123456789012:log-group:my-log-group:log-stream:my-log-stream*"
            ]
        }
    ]
}
```

------

## Incorporación de la monitorización de errores de configuración
<a name="adding_cloudwatch"></a>

Utilice las siguientes acciones de la API para añadir una opción de CloudWatch registro a una aplicación nueva o existente o cambiar una opción de registro para una aplicación existente.

**nota**  
Actualmente, solo puedes añadir una opción de CloudWatch registro a una aplicación mediante las acciones de la API. No puedes añadir opciones de CloudWatch registro mediante la consola.

### Añadir una opción de CloudWatch registro al crear una aplicación
<a name="add_cloudwatch_create"></a>

El siguiente ejemplo de código muestra cómo utilizar la `CreateApplication` acción para añadir una opción de CloudWatch registro al crear una aplicación. Para obtener más información sobre `Create_Application`, consulte [CreateApplication](API_CreateApplication.md).

```
{
   "ApplicationCode": "<The SQL code the new application will run on the input stream>",
   "ApplicationDescription": "<A friendly description for the new application>",
   "ApplicationName": "<The name for the new application>",
   "Inputs": [ ... ],
   "Outputs": [ ... ],
   "CloudWatchLoggingOptions": [{
      "LogStreamARN": "<Amazon Resource Name (ARN) of the CloudWatch log stream to add to the new application>",
      "RoleARN": "<ARN of the role to use to access the log>"
	}]
}
```

### Añadir una opción de CloudWatch registro a una aplicación existente
<a name="add_to_existing_app"></a>

El siguiente ejemplo de código muestra cómo utilizar la acción `AddApplicationCloudWatchLoggingOption` para añadir una opción de registro de CloudWatch a una aplicación. Para obtener más información acerca de `AddApplicationCloudWatchLoggingOption`, consulte [AddApplicationCloudWatchLoggingOption](API_AddApplicationCloudWatchLoggingOption.md).

```
{
   "ApplicationName": "<Name of the application to add the log option to>",
   "CloudWatchLoggingOption": { 
      "LogStreamARN": "<ARN of the log stream to add to the application>",
      "RoleARN": "<ARN of the role to use to access the log>"
   },
   "CurrentApplicationVersionId": <Version of the application to add the log to>
}
```

### Actualización de una opción de CloudWatch registro existente
<a name="update_existing"></a>

El siguiente ejemplo de código muestra cómo utilizar la `UpdateApplication` acción para modificar una opción de CloudWatch registro existente. Para obtener más información acerca de `UpdateApplication`, consulte [UpdateApplication](API_UpdateApplication.md).

```
{
   "ApplicationName": "<Name of the application to update the log option for>",
   "ApplicationUpdate": { 
      "CloudWatchLoggingOptionUpdates": [ 
         { 
            "CloudWatchLoggingOptionId": "<ID of the logging option to modify>",
            "LogStreamARNUpdate": "<ARN of the new log stream to use>",
            "RoleARNUpdate": "<ARN of the new role to use to access the log stream>"
         }
      ],
   },
   "CurrentApplicationVersionId": <ID of the application version to modify>
}
```

### Eliminar una opción de CloudWatch registro de una aplicación
<a name="delete-log"></a>

El siguiente ejemplo de código muestra cómo utilizar la `DeleteApplicationCloudWatchLoggingOption` acción para eliminar una opción de CloudWatch registro existente. Para obtener más información acerca de `DeleteApplicationCloudWatchLoggingOption`, consulte [DeleteApplicationCloudWatchLoggingOption](API_DeleteApplicationCloudWatchLoggingOption.md).

```
{
   "ApplicationName": "<Name of application to delete log option from>",
   "CloudWatchLoggingOptionId": "<ID of the application log option to delete>",
   "CurrentApplicationVersionId": <Version of the application to delete the log option from>
}
```

## Errores de configuración
<a name="cloudwatch_errors"></a>

Las siguientes secciones contienen detalles sobre los errores que puede ver en Amazon CloudWatch Logs debido a una aplicación mal configurada.

### Formato del mensaje con error
<a name="cloudwatch_errors_format"></a>

Los mensajes de error generados por la configuración inadecuada de la aplicación aparecen en el siguiente formato.

```
{
"applicationARN": "string",
"applicationVersionId": integer,
"messageType": "ERROR",
"message": "string",
"inputId": "string",
"referenceId": "string",
"errorCode": "string"
"messageSchemaVersion": "integer",
}
```

Los campos de un mensaje de error contienen la siguiente información:
+ `applicationARN`: El nombre de recurso de Amazon (ARN) de la generación de aplicación, por ejemplo: `arn:aws:kinesisanalytics:us-east-1:112233445566:application/sampleApp`
+ `applicationVersionId`: La versión de la aplicación al momento en que se encontró el error. Para obtener más información, consulte [ApplicationDetail](API_ApplicationDetail.md).
+ `messageType`: El tipo de mensaje. En la actualidad, este tipo puede ser únicamente `ERROR`. 
+ `message`: Los detalles del error, por ejemplo:

  ```
  There is a problem related to the configuration of your input. Please check that the resource exists, the role has the correct permissions to access the resource and that Kinesis Analytics can assume the role provided.
  ```
+ `inputId`: La ID asociada con la entrada de la aplicación. Este valor solo está presente si esta entrada es la causa del error. Este valor no está presente si `referenceId` está presente. Para obtener más información, consulte [DescribeApplication](API_DescribeApplication.md). 
+ `referenceId`: El ID asociado con el origen de datos de referencia de la aplicación. Este valor solo está presente si este origen es la causa del error. Este valor no está presente si `inputId` está presente. Para obtener más información, consulte [DescribeApplication](API_DescribeApplication.md). 
+ `errorCode`: El identificador del error. Este ID es `InputError` o `ReferenceDataError`.
+ `messageSchemaVersion`: Un valor que especifica el mensaje actual de la versión del esquema, actualmente `1`. Puede comprobar este valor para ver si se actualizó el esquema de mensajes de error.

### Errores
<a name="cloudwatch_errors_list"></a>

Entre los errores que pueden aparecer en CloudWatch los registros se incluyen los siguientes. 

#### El recurso no existe
<a name="resource_does_not_exist"></a>

Si se especifica un ARN para una secuencia de entrada de Kinesis que no existe, pero el ARN es sintácticamente correcto, se genera un error como el siguiente.

```
{
"applicationARN": "arn:aws:kinesisanalytics:us-east-1:112233445566:application/sampleApp",
"applicationVersionId": "5",
 "messageType": "ERROR",
 "message": "There is a problem related to the configuration of your input. Please check that the resource exists, the role has the correct permissions to access the resource and that Kinesis Analytics can assume the role provided.",
 "inputId":"1.1",
 "errorCode": "InputError",
 "messageSchemaVersion": "1"
}
```

Si se usa una clave de archivo de Amazon S3 para los datos de referencia, se genera un error como el siguiente.

```
{
 "applicationARN": "arn:aws:kinesisanalytics:us-east-1:112233445566:application/sampleApp",
 "applicationVersionId": "5",
 "messageType": "ERROR",
 "message": "There is a problem related to the configuration of your reference data. Please check that the bucket and the file exist, the role has the correct permissions to access these resources and that Kinesis Analytics can assume the role provided.",
 "referenceId":"1.1",
 "errorCode": "ReferenceDataError",
 "messageSchemaVersion": "1"
}
```

#### El rol no existe
<a name="role_does_not_exist"></a>

Si se especifica un ARN para un rol de entrada de IAM que no existe, pero el ARN es sintácticamente correcto, se generará un error como el siguiente.

```
{
 "applicationARN": "arn:aws:kinesisanalytics:us-east-1:112233445566:application/sampleApp",
 "applicationVersionId": "5",
 "messageType": "ERROR",
 "message": "There is a problem related to the configuration of your input. Please check that the resource exists, the role has the correct permissions to access the resource and that Kinesis Analytics can assume the role provided.",
 "inputId":null,
 "errorCode": "InputError",
 "messageSchemaVersion": "1"
}
```

#### El rol no tiene permisos para obtener acceso al recurso
<a name="role_does_not_have_permissions"></a>

Si se utiliza un rol de entrada que no tiene permiso para obtener acceso a los recursos de entrada, como, por ejemplo, una secuencia de origen de Kinesis, se genera un error como el siguiente.

```
{
 "applicationARN": "arn:aws:kinesisanalytics:us-east-1:112233445566:application/sampleApp",
 "applicationVersionId": "5",
 "messageType": "ERROR",
 "message": "There is a problem related to the configuration of your input. Please check that the resource exists, the role has the correct permissions to access the resource and that Kinesis Analytics can assume the role provided.",
 "inputId":null,
 "errorCode": "InputError",
 "messageSchemaVersion": "1"
}
```