1. Support
  2. Base de connaissances
  3. Surveillance des API
  4. Fonctions définies par l'utilisateur

Fonctions définies par l’utilisateur

Nous changeons notre interface. Certaines informations peuvent ne pas être à jour. En savoir plus.

La Surveillance API multi-étapes d’Uptrends vous permet d’exécuter plusieurs requêtes HTTP séquentielles sur votre API ; les données entrantes sont analysées, enregistrées dans des variables ou vérifiées pour la présence de contenu spécifique. Dans certains cas, cependant, les données entrantes auront besoin d’être transformées ou mappées, pour en extraire plus facilement un sens. Par exemple, les fonctions de codage et de décodage XML et JSON décrites dans notre guide de configuration des intégrations personnalisées. En plus de ces fonctions natives, Uptrends vous permet de définir des Fonctions utilisateur. Ces fonctions peuvent être utilisées pour convertir la valeur d’une variable (acquise lors d’une étape précédente, ou à partir d’un variable système fournie par Uptrends) à une nouvelle valeur.

Types de fonctions utilisateur disponibles

Actuellement, nous proposons deux types de fonctions utilisateur :

  • Expression régulière : ce type de fonction vous permet d’appliquer une expression régulière (RegEx) à vos variables précédemment créées. Il sert à extraire des sections spécifiques des données de réponse (comme l’extraction d’un code d’authentification à partir d’une entête de redirection Location).
  • Conversion : ce type de fonction vous permet de remplacer automatiquement certaines valeurs de la réponse par d’autres valeurs spécifiques. Par exemple, si un endpoint utilise les termes ‘erreur’ / ‘ok’ (comme l’API Uptrends) tandis que le prochain avec lequel vous interagirez utilise plutôt les termes ‘incident’ / ‘sain’, vous pouvez utiliser une fonction de conversion pour ajuster automatiquement ces valeurs aux équivalents corrects.

Création de fonctions définies par l’utilisateur

Vous pouvez configurer une fonction utilisateur dans l’onglet Étapes de vos moniteurs d’API multi-étapes, ou dans l’onglet Personnalisations de vos intégrations (personnalisées).

Remarque : Une fonction définie par l’utilisateur est spécifique au moniteur d’API multi-étapes ou à l’intégration personnalisée pour laquelle vous la configurez, et ne s’applique pas à d’autres moniteurs ou intégrations.
  1. Dans l’onglet Étapes de l’un de vos moniteurs API multi-étapes ou dans l’onglet Personnalisations de vos intégrations (personnalisées), vous allez trouver le titre Fonctions définies par l’utilisateur près du bas de la page.

  2. Cliquez sur le bouton +Ajouter une fonction pour commencer à définir une nouvelle fonction.

  3. Sélectionnez le type de fonction souhaitée, Conversion ou Expression régulière, et donnez à la fonction un nom approprié, de préférence un nom simple et sans espaces, car vous devrez vous y référer plus tard.

  4. Dans le cas d’une fonction de conversion, ajoutez les correspondances individuelles dont vous avez besoin. La fonction de Conversion traduira les valeurs «De» en valeurs «À» correspondantes.

    Pour une fonction de type expression régulière, spécifiez RegEx selon vos besoins. Le Regex est comparé au texte entrante et peut être utilisé pour en extraire une partie spécifique.

Vous pouvez ajouter des fonctions supplémentaires en répétant ces étapes, si nécessaire.

Utiliser vos fonctions

Pour utiliser votre nouvelle fonction utilisateur, il faudrait envelopper la ou les variables sur lesquelles la fonction doit agir avec la syntaxe de fonction suivant : {{userDefinedFunction ({{variableReference}})}}. À titre d’exemple, examinons une fonction de conversion dont le but est de remplacer le texte (des données de réponse entrantes) ‘Erreur’ par ‘Incident’, ‘Avertissement’ par ‘Anormal’ et ‘Ok’ par ‘Sain’, de sorte que l’endpoint à l’étape suivante reçoit les termes qu’il comprend. Dans cet exemple :

  • Comme indiqué dans l’image ci-dessus, une fonction définie par l’utilisateur appelée errorMapping a été créée.
  • L’endpoint renvoie une réponse JSON contenant un champ ‘Statut’, qui a une valeur ‘Erreur’, ‘Avertissement’ ou ‘Ok’.
  • Dans l’étape suivante, nous voulons transmettre ces données d’état à une autre API. Cette nouvelle API ne comprend cependant pas les termes utilisés et requiert les valeurs ‘Incident’, ‘Anormal’ ou ‘Sain’ à la place.

Pour utiliser la fonction errorMapping pour traduire automatiquement la valeur de statut dans les termes corrects, procédez comme suit :

  1. Extraire la valeur du champ ‘Statut’ à partir des données de réponse, comme vous le feriez normalement (voir notre Guide de configuration des variables de surveillance multi-étapes). Dans cet exemple, la nouvelle variable est nommée statusRaw. Comme décrit ci-dessus, cette variable contiendra ‘Erreur’, ‘Avertissement’ ou ‘Ok’.
  2. Pour appliquer la fonction utilisateur, cliquez d’abord sur le bouton Ajouter une variable.
  3. Définissez la source de la variable (la liste déroulante à gauche) à Exécuter la fonction.
  4. Pour l'expression de la fonction, encapsulez la référence de variable dans la fonction comme décrit ci-dessus : {{errorMapping ({{statusRaw}})}}
  5. La valeur résultante sera ‘Incident’, ‘Anormal’ ou ‘Sain’, en fonction de la valeur de statutRaw. Dans le champ Nom de variable, spécifiez un nom pour la valeur de sortie.

Nous avons maintenant créé une nouvelle variable statut, dont la valeur est ‘Incident’, ‘Anormal’ ou ‘Sain’. Dans les étapes suivantes, nous pouvons faire référence à cette variable de la façon habituelle (par exemple en utilisant la notation {{statut}}. Dans cet exemple, nous avons utilisé une fonction Conversion, mais pour la fonction RegEx les étapes sont identiques.

En utilisant ce site, vous consentez à l’utilisation de cookies conformément à notre Politique de cookies.