Astry propose deux intégrations avec Amazon Web Services. Toutes deux reposent sur Amazon SNS (Simple Notification Service) : vos services publient des messages sur un topic SNS de votre compte AWS, qui les transmet ensuite à Astry via un abonnement HTTPS.
Comme pour les autres intégrations, elles doivent être activées par un Propriétaire, depuis l'onglet principal Organisation puis Intégrations entrantes.
Amazon CloudWatch
Amazon CloudWatch est le service de monitoring natif d'AWS. En l'intégrant à Astry, vous pouvez déclencher des incidents à partir d'alarmes CloudWatch (seuils de métriques) ou de logs CloudWatch.
Configuration
- Générez une clé depuis la page de l'intégration Amazon CloudWatch, et copiez l'URL de l'endpoint.
- Créez un topic SNS (rubrique Standard) dans votre compte AWS. Dans la stratégie de diffusion HTTP/S, positionnez le Content-Type à
application/json. Ajoutez ensuite un abonnement HTTPS vers l'URL de l'endpoint copiée à l'étape 1. - Reliez vos alarmes au topic SNS :
- pour les alarmes CloudWatch : ajoutez le topic SNS comme action pour l'état In alarm
- pour les logs CloudWatch : créez un filtre de métriques sur un groupe de logs, puis une alarme CloudWatch à partir de cette métrique, reliée au topic SNS
AWS envoie une demande de confirmation d'abonnement à l'endpoint Astry : elle est gérée automatiquement, et l'abonnement est actif en quelques secondes.
Correspondance des champs
Lorsqu'une alarme CloudWatch se déclenche, Astry extrait automatiquement les champs suivants :
| Champ de l'incident | Champ de l'alarme CloudWatch |
|---|---|
| Titre | AlarmName |
| Description | NewStateReason |
| correlationId (dé-duplication) | AlarmArn |
Amazon SNS
L'intégration Amazon SNS permet de déclencher des incidents à partir de n'importe quel message publié sur un topic SNS : depuis vos applications (via le SDK AWS ou la CLI), ou depuis n'importe quel service AWS capable de publier sur un topic SNS (CloudWatch, Lambda, EventBridge, ...).
Configuration
- Configurez la correspondance des champs (voir ci-dessous) et enregistrez-la.
- Générez une clé et copiez l'URL de l'endpoint.
- Créez un topic SNS dans votre compte AWS (rubrique Standard, Content-Type
application/json), avec un abonnement HTTPS vers l'URL de l'endpoint. La confirmation de l'abonnement est, là aussi, gérée automatiquement. - Publiez des messages sur le topic SNS dès que vous souhaitez lever un incident.
Correspondance des champs
Le titre, la description, le correlationId et la priorité de l'incident peuvent chacun être définis :
- statiquement, avec une valeur fixe (par exemple Message reçu sur le topic SNS)
- ou dynamiquement, à partir d'un champ du message, en le préfixant par
$(par exemple$message,$topicArnou$severity)
Une priorité par défaut (de Critique à Information) est utilisée lorsque le champ de priorité est absent du message. Seuls les Propriétaires peuvent modifier cette configuration.
Clés et rotation
Vous pouvez disposer de 5 clés par intégration. Pour effectuer une rotation de clé sans interruption (par exemple en cas de compromission) : générez une nouvelle clé, mettez à jour l'URL de votre abonnement SNS avec cette nouvelle clé, puis révoquez l'ancienne.