Tras considerarlo detenidamente, hemos decidido retirar las aplicaciones de Amazon Kinesis Data Analytics para SQL en dos pasos:
1. A partir del 15 de octubre de 2025, no podrá crear nuevas aplicaciones de Kinesis Data Analytics para SQL.
2. 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.
Trabajo con Registros de Amazon CloudWatch
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. Añadiendo una opción de registro de CloudWatch a la aplicación, puede monitorear 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.
No se ha definido el recurso correcto en el rol de 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, consulte la Guía del usuario de Amazon CloudWatch.
Incorporación de la acción de política PutLogEvents
necesita permisos para escribir los errores de la configuración incorrecta en 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.
Política de confianza
Para conceder permisos a para asumir una función de IAM, puede asignar la siguiente política de confianza al rol.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "kinesisanalytics.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
Política de permisos
Para conceder permisos a una aplicación para escribir eventos de registro en CloudWatch desde un recurso, puede utilizar la siguiente política de permisos de IAM.
{ "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
Utilice las siguientes acciones de la API para añadir una opción de registro de CloudWatch a una aplicación nueva o existente, o cambiar una opción de registro de una aplicación existente.
nota
Por el momento, solo puede añadir una opción de registro de CloudWatch a una aplicación mediante el uso de acciones de la API. No puede añadir las opciones de registro de CloudWatch con la consola.
Incorporación de una opción de registro de CloudWatch al crear una aplicación
El siguiente ejemplo de código demuestra cómo utilizar la acción CreateApplication
para añadir una opción de registro de CloudWatch al crear una aplicación. Para obtener más información sobre Create_Application
, consulte CreateApplication.
{ "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>
" }] }
Incorporar una opción de registros de CloudWatch en una aplicación
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 existente. Para obtener más información acerca de AddApplicationCloudWatchLoggingOption
, consulte AddApplicationCloudWatchLoggingOption.
{ "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 LOG existente
El siguiente ejemplo de código muestra cómo utilizar la acción UpdateApplication
para modificar una opción de registro de CloudWatch. Para obtener más información acerca de UpdateApplication
, consulte UpdateApplication.
{ "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>
}
Eliminación de una opción de registro de CloudWatch desde una aplicación
El siguiente ejemplo de código muestra cómo utilizar la acción DeleteApplicationCloudWatchLoggingOption
para borrar una opción de registro de CloudWatch. Para obtener más información acerca de DeleteApplicationCloudWatchLoggingOption
, consulte DeleteApplicationCloudWatchLoggingOption.
{ "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
Las secciones siguientes contienen detalles sobre los errores que podría incluir en Registros de Amazon CloudWatch a partir de una aplicación mal configurada.
Formato del mensaje con error
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.messageType
: El tipo de mensaje. En la actualidad, este tipo puede ser únicamenteERROR
.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 sireferenceId
está presente. Para obtener más información, consulte DescribeApplication.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 siinputId
está presente. Para obtener más información, consulte DescribeApplication.errorCode
: El identificador del error. Este ID esInputError
oReferenceDataError
.messageSchemaVersion
: Un valor que especifica el mensaje actual de la versión del esquema, actualmente1
. Puede comprobar este valor para ver si se actualizó el esquema de mensajes de error.
Errores
Los errores que podrían aparecer en los registros de CloudWatch e incluir lo siguiente.
El recurso no existe
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
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
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" }