- Créer une source de log
- Configurer un bucket S3 pour les livraisons échouées
- Configurer un rôle IAM pour Data Firehose
- Créer un flux de livraison Firehose
- Configurer un rôle IAM pour CloudWatch
- Créer un abonnement de log CloudWatch
- La clé API de votre source de log. Si vous n’avez pas encore de source de log, créez d’abord une nouvelle source de log.
- ID de compte AWS
- Région AWS
- Nom du bucket S3 pour le stockage des livraisons échouées
- Nom du flux Data Firehose
- Nom du rôle IAM pour le bucket S3
- Nom du rôle IAM pour l’abonnement CloudWatch
Créer une source de log
Créez une source de log avant de continuer. Voir Configuration du logging pour les instructions.Configurer un bucket S3 pour les livraisons échouées
Amazon Data Firehose nécessite un bucket S3 pour stocker les enregistrements dont la livraison échoue. Créez un bucket S3 via la console AWS ou la CLI avant de continuer, vous ne pouvez pas créer de flux de livraison Firehose sans bucket.Configurer un rôle IAM pour Data Firehose
Créez un rôle IAM qui permet à Data Firehose d’écrire dans le bucket S3 et, en option, dans CloudWatch Logs pour la journalisation des erreurs de livraison. Utilisez la politique d’approbation suivante :Consultez Adding IAM identity
permissions
pour les instructions sur la création de politiques inline pour les rôles IAM.
<AWS_ACCOUNT_ID>— votre ID de compte AWS.<AWS_REGION>— la région dans laquelle votre flux Firehose s’exécutera.<FIREHOSE_S3_BUCKET>— le bucket S3 que vous avez créé à l’étape précédente.<FIREHOSE_LOG_GROUP>— le log group que Firehose utilise pour ses propres logs d’erreurs de livraison (distinct du log group que vous voulez diffuser vers AppSignal). AWS utilise la convention/aws/kinesisfirehose/<FIREHOSE_STREAM_NAME>, alors décidez du nom de votre flux Firehose dès maintenant — vous le réutiliserez à l’étape suivante. Si vous ne prévoyez pas d’activer la journalisation des erreurs sur le flux Firehose, vous pouvez omettre entièrement l’instructionlogs:PutLogEvents.
Consultez Controlling access with Amazon Data
Firehose
pour plus d’informations sur les autorisations dont Data Firehose a besoin.
Créer un flux de livraison Firehose
- Ouvrez la console Amazon Data Firehose et sélectionnez Create Firehose stream.
- Sélectionnez Direct PUT comme source.
- Sélectionnez HTTP Endpoint comme destination.
- Sous « Transform records », laissez la transformation de données désactivée.
- Entrez l’URL suivante comme HTTP endpoint URL :
- Entrez la clé API de votre source de log AppSignal obtenue lors de la création d’une source de log comme Access key. Il s’agit d’une clé AppSignal, et non d’une clé d’accès AWS.
- Sous « Content encoding », activez GZIP.
- Sous « Backup settings », sélectionnez le bucket S3 que vous avez créé à l’étape précédente.
- Sous « Advanced settings > Service access », sélectionnez Choose existing IAM role et choisissez le rôle IAM que vous avez créé à l’étape précédente.
- (Facultatif) Sous « Advanced settings > Amazon CloudWatch error logging », activez la journalisation des erreurs pour utiliser l’autorisation
logs:PutLogEventsque vous avez accordée à l’étape précédente. - Utilisez le même nom de flux Firehose que vous avez référencé lors de la configuration du rôle IAM, puis sélectionnez Create Firehose stream.
DeliveryToHttpEndpoint.Success augmenter dans l’onglet Monitoring du flux Firehose.
Configurer un rôle IAM pour CloudWatch
Créez un rôle IAM qui permet à CloudWatch d’envoyer les logs au flux de livraison Firehose. Utilisez la politique d’approbation suivante :Consultez Adding IAM identity
permissions
pour les instructions sur la création de politiques inline pour les rôles IAM.
<AWS_REGION>, <AWS_ACCOUNT_ID> et <FIREHOSE_DELIVERY_STREAM> par vos propres valeurs.
Créer un abonnement de log CloudWatch
- Dans la console CloudWatch, accédez au log group dont vous souhaitez diffuser les logs.
- Ouvrez l’onglet Subscription filters.
- Sélectionnez Create Amazon Data Firehose subscription filter.
- Choisissez le flux de livraison Firehose de l’étape 4 et le rôle IAM de l’étape 5.
- Entrez un Subscription filter name et sélectionnez Start streaming.
- Ouvrez l’onglet Monitoring de votre flux Firehose et vérifiez
DeliveryToHttpEndpoint.Success. La valeur devrait rester proche de 1 ; une baisse ou une valeur nulle indique qu’AppSignal rejette les enregistrements. - Vérifiez le bucket S3 des échecs de l’étape 2. Les enregistrements échoués y arrivent, et chaque objet contient la raison du rejet.
- Si les enregistrements échouent avec une erreur d’autorisation, vérifiez que l’Access key du flux Firehose correspond à la clé API de votre source de log AppSignal.