Le JSONPath Builder est un utilitaire d'aide utilisé lors de la création d'analyseurs de performances et actifs API REST, ainsi que de composants de surveillance des applications actives et de performances (APM) API REST. Cet outil aide les utilisateurs à sélectionner l'élément JSON qu'ils veulent surveiller, et génère une requête JSONPath pour l'élément JSON sélectionné.
La requête JSONPath peut être écrite dans deux styles, entre crochets et entre points, par exemple :
[‘name’]
$.name
Cette rubrique décrit le flux de travail et les syntaxes prises en charge pour l'outil JSONPath Builder.
Lorsque vous ajoutez un nouvel analyseur de performance de l'API REST à partir de la bibliothèque d'analyseur, la fenêtre Add REST API Performance Monitor (Ajouter un analyseur de performance d'API REST) s'ouvre. Cette fenêtre contient deux sections connexes, REST API et JSONPATH, qui sont utilisées dans l'outil JSONPath Builder.
Fournissez un nom, une description et une valeur de délai d'attente pour l'analyseur de performances REST API, puis suivez ces étapes pour utiliser l'outil JSONPath Builder :
Lorsque vous ajoutez un nouvel analyseur actif d'API REST à partir de la bibliothèque d'analyseurs, la fenêtre Add REST API Active Monitor (Ajouter un analyseur actif d'API REST) s'ouvre. Cette fenêtre contient deux sections connexes, REST API et Down Condition (Condition indisponible), qui inclut la grille Requête JSONPath comme méthode pour ajouter des conditions de baisse pour l'analyseur. La grille Requête JSONPath fait appel à JSONPath Builder lorsque vous sélectionnez le bouton de la loupe.
Lorsque vous travaillez avec les analyseurs actifs de l'API REST, vous pouvez définir plusieurs requêtes JSONPath pour évaluer un état d'arrêt de l'analyseur. En outre, contrairement aux analyseurs de performances, les analyseurs actifs prennent en charge la validation des conditions de descente par rapport à des variables de type numérique, booléen et chaîne.
Après avoir sélectionné l'élément JSON dans JSONPath Builder, la grille Requête JSONPath détecte automatiquement le type de l'élément et le saisit dans la colonne Type de la grille Requête JSONPath.
Fournissez un nom, une description et une valeur de délai de l'analyseur actif de l'API REST, puis suivez ces étapes pour utiliser l'outil JSONPath Builder :
Le composant de surveillance des applications (APM) des performances de l'API REST fonctionne de la même manière que l'analyseur de performances de l'API REST, avec l'ajout des conditions de seuil d'avertissement et de baisse pour la réponse de la valeur numérique. Un composant APM de l'API REST peut être attaché à un périphérique de test et validé. L'image suivante montre l'exemple de terminal d'API numérique ainsi que les valeurs de seuil d'avertissement et d'indisponibilité :
Le composant de surveillance des applications actives (APM) de l'API REST fonctionne de la même manière que l'analyseur actif de l'API REST, avec l'ajout d'un périphérique de test auquel le composant APM de l'API REST peut être attaché et l'analyseur validé.
Comme indiqué plus haut, la requête JSONPath peut être écrite dans deux styles, entre crochets et entre points, par exemple :
[‘name’]
$.name
S'il existe un tableau JSON de « livres » dont le premier élément porte le nom « Le chat dans le chapeau » ; vous pouvez accéder à cette valeur en saisissant l'une des requêtes JSON suivantes :
[‘books’][0]['name']
$.books[0].name
Outre la prise en charge de la génération de requêtes JSONPath pour les éléments JSON à l'aide de JSONPath Builder, vous pouvez également écrire des requêtes avancées pour valider la réponse JSON à l'aide de filtres dans les requêtes JSONPath. Les filtres peuvent être utilisés pour effectuer des opérations en utilisant des opérateurs de comparaison. De plus, la propriété « length » est disponible pour retourner la longueur d'un tableau JSON.
Ces propriétés peuvent être utilisées dans le filtre de la requête JSONPath pour renvoyer des valeurs basées sur des conditions et filtrer les valeurs qui ne sont pas nécessaires.
Note: Le sélecteur de jetons ne renvoie une valeur que si l'objet capturé est de longueur 1. Une erreur d'analyse sera déclenchée si plusieurs valeurs sont renvoyées par la requête JSONPath.
Les opérateurs de comparaison pris en charge sont répertoriés dans le tableau suivant :
Nom de l'opérateur de comparaison |
Opérateur de comparaison |
Exemple (entre parenthèses) |
Exemple (notation avec point) |
Remarques |
Égal(e) à |
|
|
|
La requête renvoie le nombre d'exemplaires de « Le chat dans le chapeau » en stock. |
Différent(e) de |
|
|
|
|
Inférieur(e) à |
|
|
|
Pour les analyseurs actifs et les composants APM actifs, la condition descendante serait une chaîne qui contient « Le chat dans le chapeau », si « Le chat dans le chapeau » contient moins de 3 copies, par exemple. |
Inférieur(e) ou égal(e) à |
|
|
|
|
Supérieur(e) à |
|
|
|
Pour les analyseurs actifs et les composants APM actifs, la condition descendante peut être un nombre qui ne contient pas 1 (le bookId de « Le chat dans le chapeau »), si « Le chat dans le chapeau » contient plus d'un exemplaire, par exemple. |
Supérieur(e) ou égal(e) à |
|
|
|
|
Longueur |
|
|
|
Renvoie la longueur du tableau JSON. |