AWS IoT Analytics não está mais disponível para novos clientes. Os clientes existentes do AWS IoT Analytics podem continuar usando o serviço normalmente. Saiba mais
As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Monitorar com o Amazon CloudWatch Events
AWS IoT Analytics publica automaticamente um evento no Amazon CloudWatch Events quando ocorre um erro de runtime durante uma atividade AWS Lambda. Esse evento contém uma mensagem de erro detalhada e as chaves dos objetos do Amazon Simple Storage Service (Amazon S3) que armazenam as mensagens de canal não processadas. Você pode usar as chaves do Amazon S3 para reprocessar as mensagens do canal não processadas. Para obter mais informações, consulte Reprocessamento de mensagens do canal, a API StartPipelineReprocessing na AWS IoT AnalyticsReferência de API e O que é Amazon CloudWatch Events no Guia do usuário do Amazon CloudWatch Events.
Você também pode configurar destinos que permitam que o Amazon CloudWatch Events envie notificações ou realize outras ações. Por exemplo, você pode enviar a notificação para uma fila do Amazon Simple Queue Service (Amazon SQS) e depois invocar a API StartReprocessingMessage
para processar as mensagens do canal salvas nos objetos do Amazon S3. O Amazon CloudWatch Events oferece suporte a vários tipos de destinos, como os seguintes:
-
Amazon Kinesis Streams
-
Funções do AWS Lambda
-
Amazon Simple Notification Service (Amazon SNS) topics
-
Filas do Amazon Simple Queue Service (Amazon SQS)
Para a lista de destinos compatíveis, consulte Destinos do Amazon EventBridge no Guia do usuário do Amazon EventBridge.
Seus recursos do CloudWatch Events e os destinos associados devem estar na região da AWS em que você criou seus recursos AWS IoT Analytics. Para obter mais informações, consulte Endpoints e cotas do serviço na Referência geral da AWS.
A notificação enviada ao Amazon CloudWatch Events sobre erros de runtime na atividade AWS Lambda usa o seguinte formato:
{ "version": "version-id", "id": "event-id", "detail-type": "IoT Analytics Pipeline Failure Notification", "source": "aws.iotanalytics", "account": "aws-account", "time": "timestamp", "region": "aws-region", "resources": [ "pipeline-arn" ], "detail": { "event-detail-version": "1.0", "pipeline-name": "pipeline-name", "error-code": "LAMBDA_FAILURE", "message": "error-message", "channel-messages": { "s3paths": [ "s3-keys" ] }, "activity-name": "lambda-activity-name", "lambda-function-arn": "lambda-function-arn" } }
Exemplo de notificação:
{ "version": "0", "id": "204e672e-ef12-09af-4cfd-de3b53673ec6", "detail-type": "IoT Analytics Pipeline Failure Notification", "source": "aws.iotanalytics", "account": "123456789012", "time": "2020-10-15T23:47:02Z", "region": "ap-southeast-2", "resources": [ "arn:aws:iotanalytics:ap-southeast-2:123456789012:pipeline/test_pipeline_failure" ], "detail": { "event-detail-version": "1.0", "pipeline-name": "test_pipeline_failure", "error-code": "LAMBDA_FAILURE", "message": "Temp unavaliable", "channel-messages": { "s3paths": [ "test_pipeline_failure/channel/cmr_channel/__dt=2020-10-15 00:00:00/1602805530000_1602805560000_123456789012_cmr_channel_0_257.0.json.gz" ] }, "activity-name": "LambdaActivity_33", "lambda-function-arn": "arn:aws:lambda:ap-southeast-2:123456789012:function:lambda_activity" } }