Vérifier le contenu de réponse (facultatif)
Vous pouvez créer une expression régulière (REGEX) pour vérifier le contenu de la chaîne de réponse qu'un moniteur dans Availability Monitoring peut renvoyer lors de la création d'un moniteur.
Lors de l'étape Créer un moniteur, une case à cocher facultative est disponible : Vérifier le contenu de la réponse pour vérifier la réponse qu'un moniteur peut renvoyer en créant un REGEX.
Informations sur REGEX
- Le REGEX doit correspondre au contenu de la réponse (corps de réponse et en-têtes de réponse) à partir de l'URL fournie dans le moniteur.
- Si la recherche REGEX contient des apostrophes (
'
) ou des guillemets ("
), vous devez ajouter le préfixe suivant au guillemet :.*,
Le préfixe ci-dessus correspond à tous les caractères d'échappement préfixés aux guillemets qui gèrent certains cas où JSON de la réponse n'est pas formé correctement et il peut ajouter une barre oblique inverse aux guillemets dans le corps de la réponse.
- En raison du formatage des données, il peut y avoir des espaces dans la réponse que vous essayez de mettre en correspondance. Si tel est le cas, essayez d'ajouter
\s*
dans le REGEX. Cela gérera zéro ou plusieurs espaces dans la réponse. - Vous pouvez utiliser
https://regex101.com/
pour valider REGEX sur la réponse (chaîne de test) avant de l'utiliser dans le moniteur. Veillez à sélectionner ECMAScript (JavaScript) dans la variante.
Echantillons REGEX
- Exemple REGEX 1
/"noOfSuccess":\s*(?!0\b)\d+/ /.*noOfSuccess.*:\s*(?!0\b)\d+/
Réponse :{ "mepType": "MEP00", "noOfAborted": 0, "noOfErrors": 0, "noOfMsgsProcessed": 46, "noOfMsgsReceived": 46, "noOfSuccess": 1, "successRate": 100, "version": "01.00.0000" }
- Exemple REGEX 2 :
/"server":\s*("envoy")/
Réponse :{ "cache-control":"no-store, no-cache, must-revalidate, proxy-revalidate", "content-type":"text/html; charset=utf-8", "date":"Fri, 16 Jun 2023 07:08:49 GMT", "expires":"Sat, 01 Jan 2000 00:00:00 GMT", "pragma": "no-cache", "server": "envoy", "vary":"Accept-Encoding", "via":"1.1 net-idcs-config", "x-content-type-options":"nosniff", "x-download-options":"noopen"}
REGEX pour le type de moniteur REST
Lors de l'utilisation du valideur REGEX pour le type de moniteur REST, l'utilisateur peut valider sa chaîne/REGEX avec la réponse en ligne. Il renvoie le résultat en tant que correspondance ou non.
Voici la liste des opérateurs courants pris en charge par la surveillance de la disponibilité APM :
opérateur | Description | Exemple |
---|---|---|
Opérateur de correspondance à n'importe quel caractère (. ) |
Le point représente cet opérateur. | a.b correspond à toute chaîne de trois caractères qui commence par a et se termine par b .
|
Opérateur de correspondance à zéro ou plus (* ) |
Cet opérateur répète l'expression régulière précédente la plus petite possible autant de fois que nécessaire (y compris zéro) pour correspondre au modèle. | a* correspond à toute chaîne composée de zéro a ou plus. Autre exemple : fo* comprend o répété, mais pas fo répété. Par conséquent, fo* correspond à f , fo , foo , etc.
|
Opérateur de correspondance à un caractère ou plus (+ ) |
Cet opérateur est similaire à l'opérateur de correspondance zéro ou plus, sauf qu'il répète l'expression régulière précédente au moins une fois. | ca+r correspond à car et à caaaar , mais pas à cr .
|
Opérateur de correspondance à zéro ou un caractère (? ) |
Cet opérateur est similaire à l'opérateur zéro ou plus, sauf qu'il répète l'expression régulière précédente une seule fois ou pas du tout. | ca?r correspond à la fois à car et à cr , mais rien d'autre.
|
Inverser (^ ) |
Inversez une expression. | ^a correspond à un caractère autre que a . |
Opérateurs de regroupement ((...) ) |
REGEX traite les expressions entre parenthèses comme les mathématiques et les langages de programmation traitent une expression entre parenthèses en tant qu'unité. Les expressions sont traitées avant l'expression en dehors des parenthèses. | f(a|b)a correspond à faa et à fba , ce qui signifie que l'opération a|b est traitée avant le reste.
|
Opérateur d'alternation (| ) |
Les alternatives correspondent à l'un des choix d'expression régulière : si vous placez des caractères représentant l'opérateur d'alternance entre deux expressions régulières a et b , le résultat correspond à l'union des chaînes qui correspondent à a et b .
|
Autre exemple : |
Opérateurs de liste ([ ... ] et [^ ... ] ) |
Une liste correspondante correspond à un seul caractère représenté par l'un des éléments de la liste. Un élément est un caractère, une expression de classe de caractères ou une expression de plage. Les listes non concordantes sont similaires aux listes correspondantes, mais elles correspondent à un seul caractère non représenté par l'un des éléments de liste. |
Par exemple, |
Opérateur de plage (- ) |
Représente les caractères compris entre deux éléments dans l'ordre de classement en cours. | [a-f] représente tous les caractères compris entre a et f inclus.
|
Chiffre (\d ) |
Correspond à tous les chiffres (0-9). | Comme [0-9] .
|
Non numérique (\D ) |
Correspond à tout caractère qui n'est pas un chiffre (0-9). | Comme [^0-9] .
|
Évasion (\ ) |
Fait que le caractère suivant dans l'expression correspond au caractère lui-même et non à un opérateur. | \. signifie point, et non l'opérateur de correspondance à n'importe quel caractère.
|
my
et se trouvant sous le chemin /mybank
, vous pouvez utiliser l'expression régulière :\/mybank/my.*
Le point (.) et l'étoile (*) représentent ensemble toute séquence de zéro, un ou plusieurs caractères consécutifs après le préfixe my
.
Dans cet exemple, les URL suivantes : /mybank/myCredits
et /mybank/myDebits
correspondent à la REGEX ci-dessus : \/mybank/my.*
, mais l'URL : /mybank/about
ne correspond pas.