Après mûre réflexion, nous avons décidé de mettre fin à Amazon Kinesis Data Analytics pour les applications SQL en deux étapes :
1. À compter du 15 octobre 2025, vous ne pourrez plus créer de nouvelles applications Kinesis Data Analytics for SQL.
2. Nous supprimerons vos candidatures à compter du 27 janvier 2026. Vous ne pourrez ni démarrer ni utiliser vos applications Amazon Kinesis Data Analytics for SQL. Support ne sera plus disponible pour Amazon Kinesis Data Analytics for SQL à partir de cette date. Pour de plus amples informations, veuillez consulter Arrêt d'Amazon Kinesis Data Analytics pour les applications SQL.
Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Utilisation d'Amazon CloudWatch Logs
Si une application est mal configurée, elle peut se lancer lors du démarrage de l'application. Ou elle peut mettre à jour, mais sans traiter les données dans le flux d'entrée intégré à l'application. En ajoutant une option de CloudWatch journalisation à l'application, vous pouvez surveiller les problèmes de configuration de l'application.
peut générer des erreurs de configuration dans les conditions suivantes :
Le flux de données Kinesis utilisé pour l’entrée n’existe pas.
Le flux de diffusion Amazon Data Firehose utilisé pour les entrées n'existe pas.
Le compartiment Amazon S3 utilisé comme source de données de référence n’existe pas.
Le fichier spécifié dans la source de données de référence du compartiment S3 n'existe pas.
La ressource appropriée n'est pas définie dans le rôle AWS Identity and Access Management (IAM) qui gère les autorisations associées.
L'autorisation n'est pas correctement définie dans le rôle IAM qui gère les autorisations connexes.
n’est pas autorisé à assumer le rôle IAM qui gère les autorisations connexes.
Pour plus d'informations sur Amazon CloudWatch, consultez le guide de CloudWatch l'utilisateur Amazon.
Ajouter l'action PutLogEvents de politique
a besoin d'autorisations pour écrire des erreurs de configuration dans CloudWatch. Vous pouvez ajouter ces autorisations au rôle IAM assumé par , comme décrit ci-dessous. Pour plus d’informations sur l’utilisation d’un rôle IAM pour , consultez Gestion des identités et des accès dans Kinesis Data Analytics.
Stratégie d’approbation
Pour autoriser à assumer un rôle IAM, vous pouvez attacher à ce dernier la stratégie d'approbation suivante.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "kinesisanalytics.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }
Stratégie d’autorisations
Pour accorder à une application l'autorisation d'écrire les événements CloudWatch du journal dans une ressource, vous pouvez utiliser la politique d'autorisation IAM suivante.
{ "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*" ] } ] }
Ajout de la surveillance des erreurs de configuration
Utilisez les actions d'API suivantes pour ajouter une option de CloudWatch journal à une application nouvelle ou existante ou pour modifier une option de journal pour une application existante.
Note
Pour le moment, vous ne pouvez ajouter une option de CloudWatch journalisation à une application qu'à l'aide d'actions d'API. Vous ne pouvez pas ajouter d'options de CloudWatch journalisation à l'aide de la console.
Ajouter une option de CloudWatch journal lors de la création d'une application
L'exemple de code suivant montre comment utiliser l'CreateApplication
action pour ajouter une option de CloudWatch journal lorsque vous créez une application. Pour plus d'informations sur Create_Application
, consultez 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>
" }] }
Ajouter une option de CloudWatch journalisation à une application existante
L'exemple de code suivant montre comment utiliser l'action AddApplicationCloudWatchLoggingOption
pour ajouter une option de journal CloudWatch à une application existante. Pour plus d’informations sur AddApplicationCloudWatchLoggingOption
, consultez 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>
}
Mettre à jour une option de CloudWatch journal existante
L'exemple de code suivant montre comment utiliser l'UpdateApplication
action pour modifier une option de CloudWatch journal existante. Pour plus d’informations sur UpdateApplication
, consultez 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>
}
Supprimer une option de CloudWatch journalisation d'une application
L'exemple de code suivant montre comment utiliser l'DeleteApplicationCloudWatchLoggingOption
action pour supprimer une option de CloudWatch journal existante. Pour plus d’informations sur DeleteApplicationCloudWatchLoggingOption
, consultez 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>
}
Erreurs de configuration
Les sections suivantes contiennent des informations détaillées sur les erreurs que vous pourriez rencontrer dans Amazon CloudWatch Logs en raison d'une application mal configurée.
Format du message d'erreur
Les messages d'erreur générés par la mauvaise configuration d'une application s'affichent dans le format suivant.
{ "applicationARN": "
string
", "applicationVersionId":integer
, "messageType": "ERROR", "message": "string
", "inputId": "string
", "referenceId": "string
", "errorCode":"string"
"messageSchemaVersion": "integer
", }
Les champs d'un message d'erreur contiennent les informations suivantes :
applicationARN
: Le nom ARN (Amazon Resource Name) de l'application en cause, par exemple :arn:aws:kinesisanalytics:us-east-1:112233445566:application/sampleApp
applicationVersionId
: Version de l'application lorsque l'erreur s'est produite. Pour de plus amples informations, veuillez consulter ApplicationDetail.messageType
: le type de message. A l'heure actuelle, ce type peut être uniquementERROR
.message
: détails de l'erreur, par exemple :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
: ID associé à l'entrée de l'application. Cette valeur ne s'affiche que si cette entrée est la cause de l'erreur. Elle ne s'affiche pas sireferenceId
est renseigné. Pour de plus amples informations, veuillez consulter DescribeApplication.referenceId
: l'ID associé à la source de données de référence de l'application. Cette valeur ne s'affiche que si cette source est la cause de l'erreur. Elle ne s'affiche pas siinputId
est renseigné. Pour de plus amples informations, veuillez consulter DescribeApplication.errorCode
: l'identificateur de l'erreur. Cet ID estInputError
ouReferenceDataError
.messageSchemaVersion
: une valeur qui spécifie la version du schéma du message, actuellement1
. Vous pouvez consulter cette valeur pour savoir si le schéma du message d'erreur a été mis à jour.
Erreurs
Les erreurs susceptibles d'apparaître dans CloudWatch Logs for sont les suivantes.
La ressource n'existe pas
Si un ARN est spécifié pour un flux d’entrée Kinesis qui n’existe pas, mais que l’ARN est syntaxiquement correct, une erreur similaire à l’exemple suivant est générée.
{ "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 une clé de fichier Amazon S3 incorrecte est utilisée pour les données de référence, une erreur similaire à l’exemple suivant est générée.
{ "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" }
Le rôle n'existe pas
Si un ARN est spécifié pour un rôle d'entrée IAM qui n'existe pas, mais que l'ARN est syntaxiquement correct, une erreur similaire à l'exemple suivant est générée.
{ "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" }
Le rôle n'est pas autorisé à accéder aux ressources
En cas d’utilisation d’un rôle d’entrée qui n’est pas autorisé à accéder aux ressources d’entrée, comme un flux source Kinesis, une erreur similaire à l’exemple suivant est générée.
{ "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" }