Collecte d'une mesure personnalisée pour un périphérique personnalisé

Les mesures personnalisées vous permettent de spécifier les données métriques que le système ExtraHop collecte sur votre réseau. Une fois que vous avez créé une mesure personnalisée avec un déclencheur, vous affectez le déclencheur à vos périphériques. Ce processus est relativement simple pour les périphériques découverts par le système ExtraHop, mais les périphériques personnalisés nécessitent un traitement supplémentaire.

Lorsque vous souhaitez collecter une mesure personnalisée à la fois pour les appareils découverts et pour les appareils personnalisés, votre déclencheur doit inclure des instructions sur la manière de traiter les différents types d'appareils.

Lorsqu'un déclencheur est exécuté sur un périphérique découvert, vous pouvez collecter des métriques via l'objet Flow.<role>.device. Toutefois, lorsqu'un déclencheur s'exécute sur un dispositif personnalisé, vous devez collecter des métriques par le biais du tableau Flow.<role>.customDevices. Les deux éléments doivent figurer dans tout déclencheur affecté à des dispositifs personnalisés et découverts.

Dans la procédure suivante, nous vous montrons comment modifier un exemple de déclencheur qui collecte une mesure personnalisée pour les erreurs HTTP 404. Le déclencheur d'origine a été écrit pour les dispositifs découverts uniquement, mais nous vous montrons comment ajouter des paramètres pour collecter la métrique pour les dispositifs personnalisés également.

Before you begin

  1. Connectez-vous au système ExtraHop via https://<extrahop-hostname-or-IP-address>.
  2. Cliquez sur l'icône System Settings (Paramètres système) puis sur Triggers (Déclencheurs).
  3. Cliquez sur le nom du déclencheur qui collecte les mesures personnalisées.
  4. Cliquez sur l'onglet Editeur.
  5. Modifiez le script du déclencheur pour collecter la mesure personnalisée pour les périphériques personnalisés.
    Dans cet exemple, nous allons modifier le code du déclencheur suivant, qui collecte une mesure personnalisée pour les erreurs HTTP 404 sur les serveurs Web découverts par le système ExtraHop
    :if (HTTP.statusCode === 404){ Flow.server.device.metricAddDetailCount("404UriAndReferrer", "404 :" + HTTP.uri + " | REFERRER :" + HTTP.referer, 1) ; }
    1. Commencez par ajouter une instruction qui affecte l'objet Flow.server.device à une variable :
      let server = Flow.server.device ;
    2. Ajoutez une boucle for qui accède à chaque dispositif personnalisé agissant en tant que serveur dans le flux :
      for (i = 0 ; i < Flow.server.customDevices.length ; i++){ }
    3. À l'intérieur de la boucle for, ajoutez une instruction if qui vérifie la propriété hasTrigger de chaque dispositif personnalisé pour déterminer si le déclencheur est en cours d'exécution sur le dispositif :
      if (Flow.server.customDevices[i]['hasTrigger']){ }
    4. À l'intérieur de l'instruction if, ajoutez une instruction qui réaffecte la variable server au dispositif, et ajoutez une autre instruction pour interrompre la boucle for :
      server = Flow.server.customDevices[i] ; break ;
    5. Enfin, en dehors de la boucle for, ajoutez un appel à la méthode metricAddDetailCount pour ajouter la métrique personnalisée à l'appareil :
      server.metricAddDetailCount("404UriAndReferrer", "404 :" + HTTP.uri + " | REFERRER :" + HTTP.referer, 1) ;
    Étant donné que la variable serveur n'est réaffectée que si le déclencheur est exécuté sur un périphérique personnalisé, le code fonctionne à la fois pour les périphériques découverts et personnalisés. Le code complet de cet exemple est présenté ci-dessous
    :if (HTTP.statusCode === 404){ let server = Flow.server.device ; for (i = 0 ; i < Flow.server.customDevices.length ; i++){ if (Flow.server.customDevices[i]['hasTrigger']){ server = Flow.server.customDevices[i] ; break ; } } server.metricAddDetailCount("404UriAndReferrer", "404 :" + HTTP.uri + " | REFERRER :" + HTTP.referer, 1) ; }
  6. Affectez le déclencheur au dispositif personnalisé.
Last modified 2023-11-07