View a markdown version of this page

Ingérez les alarmes des APM grâce à l'intégration directe EventBridge - Guide de l'utilisateur d'AWS pour la détection et la réponse aux incidents

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.

Ingérez les alarmes des APM grâce à l'intégration directe EventBridge

La rubrique suivante décrit le processus d'envoi d'alarmes à AWS Incident Detection and Response à partir d'outils de surveillance des performances des applications (APM) directement intégrés à Amazon EventBridge. Pour une liste complète des APM directement intégrés à Amazon EventBridge, consultez Amazon EventBridge integrations.

Vous pouvez déployer le CloudFormation modèle fourni ou configurer manuellement cette intégration. Avant de configurer l'intégration, vérifiez que le rôle AWS lié au service (SLR) AWSServiceRoleForHealth_EventProcessor est créé dans vos comptes.

Option 1 : utilisation CloudFormation

Un CloudFormation modèle est disponible pour simplifier le processus de création de l'infrastructure d'intégration requise pour intégrer les alarmes à AWS Incident Detection and Response depuis votre APM avec l'intégration Amazon EventBridge.

Note
  • Des coûts supplémentaires sont encourus pour les ressources déployées via ce CloudFormation modèle (par exemple : Lambda et EventBridge). Pour plus d'informations sur la tarification de ces services, consultez la section AWS Tarification.

  • Déployez ce CloudFormation modèle dans tous les AWS comptes et régions dans lesquels AWS Incident Detection and Response doit d'intégrer des alarmes. Les incidents et les dossiers de support sont ouverts sur le AWS compte d'où l'alerte APM a été reçue.

  • Ce document utilise New Relic comme exemple, mais le CloudFormation modèle peut être utilisé pour n'importe quel APM intégrant le SaaS à Amazon. EventBridge

  • Après avoir testé l'intégration, supprimez les instructions logger.info () du TransformLambdaFunction pour empêcher la charge utile d'apparaître dans Amazon Logs. CloudWatch

Conditions préalables au déploiement de ce CloudFormation modèle :

  • Une source d'événement partenaire doit être configurée sur Amazon EventBridge. Pour obtenir des instructions sur la configuration de votre APM en tant que source d'événements, consultez la section Recevoir des événements d'un partenaire SaaS d'Amazon EventBridge dans le guide de l' EventBridge utilisateur Amazon.

  • La TransformLambdaFunction (fonction Lambda) du modèle doit être modifiée pour être définie ["detail"]["incident-detection-response-identifier"] sur la valeur souhaitée en fonction du chemin JSON du nom de l'alerte dans la charge utile APM.

Étapes préalables :

  1. Ouvrez la EventBridge console. Dans le menu Intégration, sélectionnez Sources d'événements partenaires.

    • Recherchez votre APM dans le champ Amazon EventBridge Partners.

    • Choisissez Configuration, puis suivez les instructions fournies.

      • Remarque : la dernière étape consiste à choisir Associer à Event Bus dans la console pour la source d'événements Partner. La sélection de cette option crée automatiquement un bus d'événements partenaires portant le même nom que la source d'événements partenaire (les noms doivent correspondre).

    • Copiez le nom du Partner Event Bus ou de la source. Le bus d'événements ou la source est utilisé comme paramètre, nomméPartnerEventBusNameParameter, lors du déploiement du CloudFormation modèle.

      • Exemple pour New Relic : aws.partner/newrelic.com/1234567/source_name

    • Copiez la première partie du Partner Event Bus ou de la source à saisir PartnerEventBusPrefixParameter lors du déploiement du CloudFormation modèle.

      • L'exemple de New Relic est aws.partner/newrelic.com

  2. Téléchargez et modifiez le CloudFormation modèle.

    • Localisez le TransformLambdaFunction dans le modèle

    • def lambda_handler(event, context)Sous-défini sur event["detail"]["incident-detection-response-identifier"] le chemin json où le nom de l'alarme apparaît dans la charge utile JSON de l'alarme APM. Chaque APM suivra un chemin différent. Vous trouverez quelques exemples ci-dessous, mais vos charges utiles spécifiques peuvent différer.

      • Exemple de nouvelle relique :event["detail"]["incident-detection-response-identifier"] = event["detail"]["workflowName"].

      • Exemple de Datadog : event["detail"]["incident-detection-response-identifier"] = event["detail"]["meta"]["monitor"]["name"]

      • Exemple Splunk : event["detail"]["incident-detection-response-identifier"] = event["detail"]["ruleName"]

    • Enregistrez le CloudFormation modèle.

Déploiement du CloudFormation modèle :

  1. Ouvrez la CloudFormation console dans votre compte cible et dans votre région.

  2. Choisissez Créer une pile, avec de nouvelles ressources (standard)

    • Sélectionnez Choisir un modèle existant, Charger un fichier modèle, Choisir un fichier, puis téléchargez le CloudFormation modèle que vous avez enregistré localement.

  3. Spécifiez les détails de la pile :

    • Entrez un nom de pile (Exemple :NewRelicIntegrationForIDR).

    • Spécifiez les valeurs des paramètres obtenues lors de la réalisation des prérequis.

      • APMNameParameter(Exemple :NewRelic)

      • PartnerEventBusNameParameter(Exemple :aws.partner/newrelic.com/1234567/source_name)

      • PartnerEventBusPrefixParameter(Exemple :aws.partner/newrelic.com)

    • Choisissez Suivant.

  4. Configurez les options de pile :

    • Faites défiler la page vers le bas et cochez la case pour autoriser la création CloudFormation de ressources IAM avec des noms personnalisés.

  5. Vérifiez et créez :

    • Vérifiez que les valeurs des paramètres sont correctement configurées et choisissez Soumettre.

  6. La CloudFormation pile déploie les ressources nécessaires pour intégrer vos événements APM à AWS Incident Detection and Response. Attendez que l'état de la pile s'afficheCREATE_COMPLETE.

  7. La CloudFormation pile crée les ressources suivantes, en supposant que les valeurs d'exemple aient été saisies dans les paramètres de New Relic et aient été exécutées dans la US-EAST-1 région.

    • CustomEventBus: NewRelic-AWSIncidentDetectionResponse-EventBus

    • EventBridgeRule: lois. partner/newrelic. com/1234567/nom_source | NewRelic-AWSIncidentDetectionResponse-EventBridgeRule

    • TransformLambdaExecutionRole: IDR-TransformLambdaExecutionRole-us-east-1

    • TransformLambdaFunction: NewRelic-AWSIncidentDetectionResponse-Lambda-Transform

    • TransformLambdaPermission: NewRelicIntegrationForIDR-TransformLambdaPermission - [chaîne_aléatoire]

Tests d'intégration

Après avoir déployé la pile, testez l'intégration en envoyant une charge utile de test depuis votre APM :

  1. Accédez à la console Lambda et sélectionnez la APMNameParameter-AWSIncidentDetectionResponse-Lambda-Transform fonction. Choisissez l’onglet Surveiller.

  2. Recherchez un appel réussi dans les graphiques métriques.

  3. Choisissez View Amazon CloudWatch Logs pour vérifier dans les flux de journaux la présence de votre charge utile de test ou d'éventuelles erreurs.

Partage de l'ARN de votre bus d'événements avec AWS Incident Detection and Response

  1. Ouvrez la EventBridge console Amazon. Sélectionnez Event Bus.

  2. Copiez l'ARN du bus d'événements personnalisé créé dans le cadre de la CloudFormation pile (exemple : arn:aws:events:us-east-1:123456789123:event-bus/NewRelic-AWSIncidentDetectionResponse-EventBus.)

  3. Au cours du processus d'intégration, AWS Incident Detection and Response crée une EventBridge règle gérée sur ce bus d'événements personnalisé pour ingérer vos alarmes APM.

Option 2 : intégration manuelle

Schéma illustrant un exemple d'intégration à l'aide d'un bus d'événements partenaire ou d'autres sources de bus d' AWS événements.

Procédez comme suit pour chaque AWS compte et AWS région d'où AWS Incident Detection and Response doit ingérer des alarmes. AWS Incident Detection and Response recommande de configurer les alarmes dans le même AWS compte et dans la même région que les ressources de votre application afin d'identifier et d'étudier plus rapidement les ressources touchées. Les incidents et les dossiers de support sont ouverts sur le AWS compte d'où l'alerte APM a été reçue.

  1. Créez un bus d'événements pour les EventBridge partenaires en configurant votre APM en tant que source d'événements EventBridge partenaires Amazon (par exemple,aws.partner/apm_name/integrationName). Pour obtenir des instructions sur la configuration de votre APM en tant que source d'événements, consultez la section Réception d'événements d'un partenaire SaaS avec Amazon EventBridge.

  2. Effectuez l'une des actions suivantes :

    • (Recommandé) Créez un bus d'événements EventBridge personnalisé nommé$YourApmName-AWSIncidentDetectionResponse-EventBus.

    • (Alternative) Utilisez le bus d' EventBridgeévénements par défaut au lieu d'un bus d'événements personnalisé.

    AWS Incident Detection and Response installera une règle gérée (AWSHealthEventProcessorEventSource-DO-NOT-DELETE) sur le bus d'événements personnalisé ou par défaut via le AWSServiceRoleForHealth_EventProcessor SLR. La source de la règle sera le bus d'événements personnalisé ou par défaut, la destination de la règle sera AWS Incident Detection and Response, et la règle correspondra au modèle d'ingestion d'événements APM tiers.

  3. Créez une fonction Lambda nommée $YourApmName-AWSIncidentDetectionResponse-LambdaFunction pour transformer les événements du bus d'événements de votre partenaire. Les événements transformés seront conformes à la règle géréeAWSHealthEventProcessorEventSource-DO-NOT-DELETE.

    • Les événements transformés incluent un identifiant AWS unique de détection et de réponse aux incidents, et définissent la source et le type de détail de l'événement selon les valeurs requises. Cela permet à la structure de charge utile JSON transformée de correspondre au modèle de règles gérées.

    • Définissez la cible de la fonction Lambda sur le bus d'événements personnalisé (recommandé) créé à l'étape 2 ou sur votre bus d'événements par défaut.

  4. Créez une EventBridge règle et définissez les modèles d'événements correspondant à la liste des événements que vous souhaitez transmettre à AWS Incident Detection and Response. La source de la règle est le bus d'événements partenaire que vous avez créé à l'étape 1 (aws.partner/apm_name/integrationName). La cible de la règle est la fonction Lambda que vous avez créée à l'étape 3 ()[apm_name]-AWSIncidentDetectionResponse-LambdaFunction. Pour obtenir des instructions sur la définition de votre EventBridge règle, consultez les EventBridge règles d'Amazon.

Pour un exemple étape par étape expliquant comment configurer manuellement les intégrations du bus d'événements des partenaires avec AWS Incident Detection and Response, consultez Intégration des notifications de Datadog et Splunk.