Résoudre les erreurs dans Amazon Data Firehose - Amazon Data Firehose

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.

Résoudre les erreurs dans Amazon Data Firehose

Si Firehose rencontre des erreurs lors de la livraison ou du traitement des données, il réessaie jusqu'à ce que la durée de tentative configurée expire. Si la durée de la nouvelle tentative prend fin avant que les données ne soient correctement livrées, Firehose sauvegarde les données dans le compartiment de sauvegarde S3 configuré. Si la destination est Amazon S3 et que la livraison échoue ou si la livraison vers le compartiment S3 de sauvegarde échoue, Firehose continue de réessayer jusqu'à la fin de la période de rétention.

Pour plus d'informations sur le suivi des erreurs de livraison à CloudWatch l'aide deSurveillez Amazon Data Firehose à l'aide des journaux CloudWatch .

Direct PUT

Pour les streams DirectPut Firehose, Firehose conserve les enregistrements pendant 24 heures. Pour un flux Firehose dont la source de données est un flux de données Kinesis, vous pouvez modifier la période de conservation comme décrit dans Modification de la période de conservation des données. Dans ce cas, Firehose réessaie indéfiniment les opérations suivantes :DescribeStream, etGetRecords. GetShardIterator

Si le stream Firehose l'utiliseDirectPut, vérifiez les IncomingRecords métriques IncomingBytes et pour voir s'il y a du trafic entrant. Si vous utilisez PutRecord ou PutRecordBatch, assurez-vous de tenir compte des exceptions et de réessayer. Nous recommandons une stratégie incluant une interruption exponentielle avec instabilité et plusieurs tentatives. De plus, si vous utilisez le PutRecordBatchAPI, assurez-vous que votre code vérifie la valeur de FailedPutCountdans la réponse, même en cas de réussite de l'APIappel.

Kinesis Data Stream

Si le flux Firehose utilise un flux de données Kinesis comme source, vérifiez les IncomingRecords métriques IncomingBytes et pour le flux de données source. De plus, assurez-vous que les DataReadFromKinesisStream.Records métriques DataReadFromKinesisStream.Bytes et sont émises pour le flux Firehose.