Outil : get_alert_policy
Utilisez-le comme outil principal pour obtenir des informations sur une règle d'alerte spécifique. Les règles d'alerte définissent les conditions dans lesquelles vous souhaitez être averti des problèmes liés à vos services. Cela permet de comprendre les détails d'une configuration d'alerte spécifique.
L'exemple suivant montre comment utiliser curl pour appeler l'outil MCP get_alert_policy.
| Requête curl |
|---|
curl --location 'https://monitoring.googleapis.com/mcp' \ --header 'content-type: application/json' \ --header 'accept: application/json, text/event-stream' \ --data '{ "method": "tools/call", "params": { "name": "get_alert_policy", "arguments": { // provide these details according to the tool's MCP specification } }, "jsonrpc": "2.0", "id": 1 }' |
Schéma d'entrée
Protocole de la requête GetAlertPolicy.
GetAlertPolicyRequest
| Représentation JSON |
|---|
{ "name": string } |
| Champs | |
|---|---|
name |
Obligatoire. Règle d'alerte à récupérer. Il a le format suivant : |
Schéma de sortie
Description des conditions dans lesquelles certains aspects de votre système sont considérés comme "non opérationnels" et des moyens d'envoyer une notification à ce sujet à des personnes ou à des services. Pour obtenir une présentation des règles d'alerte, consultez Présentation des alertes.
AlertPolicy
| Représentation JSON |
|---|
{ "name": string, "displayName": string, "documentation": { object ( |
| Champs | |
|---|---|
name |
Identifiant. Obligatoire si la règle existe. Nom de ressource de cette règle. Il a le format suivant :
|
displayName |
Nom ou expression courts utilisés pour identifier la règle dans les tableaux de bord, les notifications et les incidents. Pour éviter toute confusion, n'utilisez pas le même nom à afficher pour plusieurs règles dans le même projet. Le nom ne peut pas comporter plus de 512 caractères Unicode. La convention pour le display_name d'une PrometheusQueryLanguageCondition est "{nom du groupe de règles}/{nom de l'alerte}", où {nom du groupe de règles} et {nom de l'alerte} doivent être extraits du fichier de configuration Prometheus correspondant. Cette convention n'est pas appliquée. Dans tous les cas, display_name n'est pas une clé unique pour AlertPolicy. |
documentation |
Documentation incluse dans les notifications et les incidents liés à cette règle. Il est recommandé que la documentation inclue des informations permettant aux personnes recevant la notification de comprendre, d'atténuer, d'escalader et de corriger les problèmes sous-jacents détectés par la règle d'alerte. Il est possible que cette documentation ne s'affiche pas pour les canaux de notification dont la capacité est limitée. |
userLabels |
Données clé/valeur fournies par l'utilisateur à utiliser pour organiser et identifier les objets Le champ peut contenir jusqu'à 64 entrées. Chaque clé et valeur est limitée à 63 caractères Unicode ou 128 octets, selon la limite la plus petite. Les libellés et les valeurs ne peuvent contenir que des lettres minuscules, des chiffres, des traits de soulignement et des tirets. Les clés doivent commencer par une lettre. Notez que Prometheus {alert name} est un nom de libellé Prometheus valide, tandis que Prometheus {rule group} est une chaîne UTF-8 non limitée. Cela signifie qu'elles ne peuvent pas être stockées telles quelles dans les libellés utilisateur, car elles peuvent contenir des caractères non autorisés dans les valeurs de libellé utilisateur. Objet contenant une liste de paires |
conditions[] |
Liste des conditions de la règle. Les conditions sont combinées par ET ou OU en fonction du champ |
combiner |
Comment combiner les résultats de plusieurs conditions pour déterminer si un incident doit être ouvert. Si |
enabled |
Indique si la règle est activée ou non. Lors de l'écriture, l'interprétation par défaut si elle n'est pas définie est que la règle est activée. Lors de la lecture, les clients ne doivent faire aucune hypothèse sur l'état s'il n'a pas été renseigné. Le champ doit toujours être renseigné dans les opérations List et Get, sauf si une projection de champ a été spécifiée pour le supprimer. |
validity |
Description en lecture seule de la raison pour laquelle la règle d'alerte n'est pas valide. Ce champ n'est défini que lorsque la règle d'alerte n'est pas valide. Une règle d'alerte non valide ne générera pas d'incidents. |
notificationChannels[] |
Identifie les canaux de notification auxquels les notifications doivent être envoyées lorsque des incidents sont ouverts ou fermés, ou lorsque de nouveaux cas de non-respect se produisent dans un incident déjà ouvert. Chaque élément de ce tableau correspond au champ |
creationRecord |
Enregistrement en lecture seule de la création de la règle d'alerte. Si ce champ est fourni dans un appel de création ou de mise à jour, il sera ignoré. |
mutationRecord |
Enregistrement en lecture seule de la dernière modification apportée à la règle d'alerte. Si ce champ est fourni dans un appel de création ou de mise à jour, il sera ignoré. |
alertStrategy |
Contrôle de la façon dont les canaux de notification de cette règle d'alerte sont avertis. |
severity |
Facultatif. La gravité d'une règle d'alerte indique l'importance des incidents générés par cette règle. Le niveau de gravité s'affiche sur la page d'informations sur l'incident et dans les notifications. |
Documentation
| Représentation JSON |
|---|
{
"content": string,
"mimeType": string,
"subject": string,
"links": [
{
object ( |
| Champs | |
|---|---|
content |
Corps de la documentation, interprété selon |
mimeType |
Format du champ |
subject |
Facultatif. Objet de la notification. L'objet ne doit pas dépasser 10 240 octets. Dans les notifications générées par cette règle, le contenu de la ligne d'objet après l'expansion des variables sera tronqué à 255 octets ou moins à la dernière limite de caractères UTF-8. La limite de 255 octets est recommandée dans ce fil de discussion. Il s'agit à la fois de la limite imposée par certains produits de billetterie tiers et il est courant de définir les champs de texte dans les bases de données comme VARCHAR(255). Le contenu de la ligne d'objet peut être personnalisé à l'aide de variables. Si ce champ est manquant ou vide, une ligne d'objet par défaut sera générée. |
links[] |
Facultatif. Liens vers des contenus tels que des playbooks, des dépôts et d'autres ressources. Ce champ peut contenir jusqu'à trois entrées. |
Lien
| Représentation JSON |
|---|
{ "displayName": string, "url": string } |
| Champs | |
|---|---|
displayName |
Nom à afficher court pour l'association. Le nom à afficher ne doit pas être vide ni dépasser 63 caractères. Exemple : "playbook". |
url |
URL d'une page Web. Une URL peut être modélisée à l'aide de variables dans le chemin d'accès ou les paramètres de requête. La longueur totale d'une URL ne doit pas dépasser 2 083 caractères avant et après l'expansion des variables. Exemple : "https://my_domain.com/playbook?name=${resource.name}" |
UserLabelsEntry
| Représentation JSON |
|---|
{ "key": string, "value": string } |
| Champs | |
|---|---|
key |
|
value |
|
Condition
| Représentation JSON |
|---|
{ "name": string, "displayName": string, // Union field |
| Champs | |
|---|---|
name |
Obligatoire si la condition existe. Nom de ressource unique pour cette condition. Son format est le suivant :
Lorsque vous appelez la méthode Lorsque vous appelez la méthode Il est recommandé de conserver |
displayName |
Nom ou expression courte utilisée pour identifier la condition dans les tableaux de bord, les notifications et les incidents. Pour éviter toute confusion, n'utilisez pas le même nom à afficher pour plusieurs conditions dans la même règle. |
Champ d'union condition. Un seul des types de conditions suivants sera spécifié. condition ne peut être qu'un des éléments suivants : |
|
conditionThreshold |
Condition qui compare une série temporelle à un seuil. |
conditionAbsent |
Condition qui vérifie qu'une série temporelle continue de recevoir de nouveaux points de données. |
conditionMatchedLog |
Condition qui recherche les messages de journaux correspondant aux contraintes données. Si cette option est définie, aucune autre condition ne peut être présente. |
conditionMonitoringQueryLanguage |
Condition qui utilise le langage MQL (Monitoring Query Language) pour définir des alertes. |
conditionPrometheusQueryLanguage |
Condition qui utilise le langage de requête Prometheus pour définir des alertes. |
conditionSql |
Condition qui évalue périodiquement le résultat d'une requête SQL. |
MetricThreshold
| Représentation JSON |
|---|
{ "filter": string, "aggregations": [ { object ( |
| Champs | |
|---|---|
filter |
Obligatoire. Un filtre qui identifie la série temporelle à comparer au seuil. Le filtre est semblable à celui spécifié dans la requête |
aggregations[] |
Spécifie l'alignement des points de données dans les séries temporelles individuelles, ainsi que la manière de combiner les séries temporelles récupérées (par exemple, lors de l'agrégation de plusieurs flux sur chaque ressource en un seul flux pour chaque ressource ou lors de l'agrégation de flux sur tous les membres d'un groupe de ressources). Plusieurs agrégations sont appliquées dans l'ordre spécifié. Ce champ est semblable à celui de la requête |
denominatorFilter |
Un filtre qui identifie une série temporelle à utiliser comme dénominateur d'un ratio qui sera comparé au seuil. Si un Le filtre doit spécifier le type de métrique et peut éventuellement contenir des restrictions sur le type de ressource, les libellés de ressource et les libellés de métrique. Ce champ ne peut pas dépasser 2 048 caractères Unicode. |
denominatorAggregations[] |
Spécifie l'alignement des points de données dans les séries temporelles individuelles sélectionnées par Lorsque vous calculez des ratios, les champs |
forecastOptions |
Lorsque ce champ est présent, la condition |
comparison |
Comparaison à appliquer entre les séries temporelles (indiquées par Seuls |
thresholdValue |
Valeur à laquelle comparer la série temporelle. |
duration |
Obligatoire. Durée pendant laquelle une série temporelle doit dépasser le seuil pour être considérée comme en échec. Actuellement, seules les valeurs qui sont un multiple d'une minute (par exemple, 0, 60, 120 ou 300 secondes) sont acceptées. Si une valeur non valide est fournie, une erreur est renvoyée. Lorsque vous choisissez une durée, il est utile de garder à l'esprit la fréquence des données de série temporelle sous-jacentes (qui peut également être affectée par les alignements spécifiés dans le champ Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par " |
trigger |
Nombre ou pourcentage de séries temporelles pour lesquelles la comparaison doit être vraie pour que la condition soit déclenchée. Si aucune valeur n'est spécifiée, la condition se déclenche si la comparaison est "true" pour l'une des séries temporelles identifiées par |
evaluationMissingData |
Contrôle de condition qui détermine comment les conditions de seuil de métrique sont évaluées lorsque les données cessent d'arriver. Pour utiliser cette commande, la valeur du champ |
Agrégation
| Représentation JSON |
|---|
{ "alignmentPeriod": string, "perSeriesAligner": enum ( |
| Champs | |
|---|---|
alignmentPeriod |
La valeur doit être d'au moins 60 secondes. Si un aligneur par série autre que La valeur maximale de Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par " |
perSeriesAligner |
Un Toutes les opérations d'alignement ne peuvent pas être appliquées à toutes les séries temporelles. Les choix valides dépendent des valeurs Les données de séries temporelles doivent être alignées pour pouvoir effectuer une réduction de séries temporelles croisées. Si |
crossSeriesReducer |
Opération de réduction à utiliser pour combiner des séries temporelles en une seule série temporelle, où la valeur de chaque point de données de la série résultante est fonction de toutes les valeurs déjà alignées dans les séries temporelles d'entrée. Toutes les opérations de réduction ne peuvent pas être appliquées à toutes les séries temporelles. Les choix valides dépendent de la Les données de séries temporelles doivent d'abord être alignées (voir |
groupByFields[] |
Ensemble de champs à conserver lorsque |
Durée
| Représentation JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Champs | |
|---|---|
seconds |
Secondes signées de la durée. La valeur doit être comprise entre -315 576 000 000 et +315 576 000 000 (inclus). Remarque : Ces limites sont calculées à partir de : 60 s/min * 60 min/h * 24 h/jour * 365,25 jours/an * 10 000 ans |
nanos |
Fractions de secondes signées avec une précision de l'ordre de la nanoseconde pour la durée. Les durées inférieures à une seconde sont représentées par un champ |
ForecastOptions
| Représentation JSON |
|---|
{ "forecastHorizon": string } |
| Champs | |
|---|---|
forecastHorizon |
Obligatoire. Période future pour laquelle il faut prévoir si une série temporelle dépassera le seuil. Si la valeur prédite ne respecte pas le seuil et que le non-respect est observé dans toutes les prévisions effectuées pour le Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par " |
Déclencheur
| Représentation JSON |
|---|
{ // Union field |
| Champs | |
|---|---|
Champ d'union type. Type de déclencheur. type ne peut être qu'un des éléments suivants : |
|
count |
Nombre absolu de séries temporelles qui doivent ne pas respecter le prédicat pour que la condition soit déclenchée. |
percent |
Pourcentage de séries temporelles qui doivent ne pas respecter le prédicat pour que la condition soit déclenchée. |
MetricAbsence
| Représentation JSON |
|---|
{ "filter": string, "aggregations": [ { object ( |
| Champs | |
|---|---|
filter |
Obligatoire. Un filtre qui identifie la série temporelle à comparer au seuil. Le filtre est semblable à celui spécifié dans la requête |
aggregations[] |
Spécifie l'alignement des points de données dans les séries temporelles individuelles, ainsi que la manière de combiner les séries temporelles récupérées (par exemple, lors de l'agrégation de plusieurs flux sur chaque ressource en un seul flux pour chaque ressource ou lors de l'agrégation de flux sur tous les membres d'un groupe de ressources). Plusieurs agrégations sont appliquées dans l'ordre spécifié. Ce champ est semblable à celui de la requête |
duration |
Obligatoire. Durée pendant laquelle une série temporelle doit ne pas signaler de nouvelles données pour être considérée comme défaillante. La valeur minimale de ce champ est de 120 secondes. Les valeurs plus élevées qui sont un multiple d'une minute (par exemple, 240 ou 300 secondes) sont acceptées. Si une valeur non valide est fournie, une erreur est renvoyée. Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par " |
trigger |
Nombre ou pourcentage de séries temporelles pour lesquelles la comparaison doit être vraie pour que la condition soit déclenchée. Si aucune valeur n'est spécifiée, la condition se déclenche si la comparaison est vraie pour l'une des séries temporelles identifiées par |
LogMatch
| Représentation JSON |
|---|
{ "filter": string, "labelExtractors": { string: string, ... } } |
| Champs | |
|---|---|
filter |
Obligatoire. Filtre basé sur les journaux. Pour savoir comment créer ce filtre, consultez Requêtes de journaux avancées. |
labelExtractors |
Facultatif. Mappage d'une clé d'étiquette à une expression d'extracteur, qui est utilisée pour extraire la valeur de cette clé d'étiquette. Chaque entrée de cette carte est une spécification indiquant comment les données doivent être extraites des entrées de journaux correspondant à Pour connaître la syntaxe et obtenir des exemples, veuillez consulter la documentation sur les métrique basée sur les journaux Objet contenant une liste de paires |
LabelExtractorsEntry
| Représentation JSON |
|---|
{ "key": string, "value": string } |
| Champs | |
|---|---|
key |
|
value |
|
MonitoringQueryLanguageCondition
| Représentation JSON |
|---|
{ "query": string, "duration": string, "trigger": { object ( |
| Champs | |
|---|---|
query |
Requête Monitoring Query Language qui génère un flux booléen. |
duration |
Facultatif. Durée pendant laquelle une série temporelle doit dépasser le seuil pour être considérée comme en échec. Actuellement, seules les valeurs qui sont un multiple d'une minute (par exemple, 0, 60, 120 ou 300 secondes) sont acceptées. Si une valeur non valide est fournie, une erreur est renvoyée. Lorsque vous choisissez une durée, il est utile de garder à l'esprit la fréquence des données de série temporelle sous-jacentes (qui peut également être affectée par les alignements spécifiés dans le champ Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par " |
trigger |
Nombre ou pourcentage de séries temporelles pour lesquelles la comparaison doit être vraie pour que la condition soit déclenchée. Si aucune valeur n'est spécifiée, la condition se déclenche si la comparaison est "true" pour l'une des séries temporelles identifiées par |
evaluationMissingData |
Contrôle de condition qui détermine comment les conditions de seuil de métrique sont évaluées lorsque les données cessent d'arriver. |
PrometheusQueryLanguageCondition
| Représentation JSON |
|---|
{ "query": string, "duration": string, "evaluationInterval": string, "labels": { string: string, ... }, "ruleGroup": string, "alertRule": string, "disableMetricValidation": boolean } |
| Champs | |
|---|---|
query |
Obligatoire. Expression PromQL à évaluer. À chaque cycle d'évaluation, cette expression est évaluée à l'heure actuelle, et toutes les séries temporelles résultantes deviennent des alertes en attente/déclenchées. Ce champ ne doit pas être vide. |
duration |
Facultatif. Les alertes sont considérées comme déclenchées une fois que leur expression PromQL a été évaluée comme étant "vraie" pendant cette période. Les alertes dont l'expression PromQL n'a pas été évaluée comme étant "vraie" pendant une durée suffisante sont considérées comme en attente. La valeur doit être une durée non négative ou être manquante. Ce champ est facultatif. Sa valeur par défaut est zéro. Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par " |
evaluationInterval |
Facultatif. Fréquence d'évaluation de cette règle. Doit être un multiple positif de 30 secondes ou être absent. Ce champ est facultatif. Sa valeur par défaut est de 30 secondes. Si cette PrometheusQueryLanguageCondition a été générée à partir d'une règle d'alerte Prometheus, cette valeur doit être extraite du groupe de règles englobant. Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par " |
labels |
Facultatif. Libellés à ajouter ou à remplacer dans le résultat de la requête PromQL. Les noms des étiquettes doivent être valides. Les valeurs de libellé peuvent être modélisées à l'aide de variables. Les seuls noms de variables disponibles sont les noms des libellés dans le résultat PromQL, y compris "__name__" et "value". "labels" peut être vide. Objet contenant une liste de paires |
ruleGroup |
Facultatif. Nom du groupe de règles de cette alerte dans le fichier de configuration Prometheus correspondant. Certains outils externes peuvent nécessiter que ce champ soit correctement renseigné pour faire référence au fichier de configuration Prometheus d'origine. Le nom du groupe de règles et le nom de l'alerte sont nécessaires pour mettre à jour les AlertPolicies concernées si la définition du groupe de règles change à l'avenir. Ce champ est facultatif. Si ce champ n'est pas vide, il doit contenir une chaîne UTF-8 valide. Ce champ ne peut pas dépasser 2 048 caractères Unicode. |
alertRule |
Facultatif. Nom de la règle d'alerte de cette alerte dans le fichier de configuration Prometheus correspondant. Certains outils externes peuvent nécessiter que ce champ soit correctement renseigné pour faire référence au fichier de configuration Prometheus d'origine. Le nom du groupe de règles et le nom de l'alerte sont nécessaires pour mettre à jour les AlertPolicies concernées si la définition du groupe de règles change à l'avenir. Ce champ est facultatif. Si ce champ n'est pas vide, il doit s'agir d'un nom de libellé Prometheus valide. Ce champ ne peut pas dépasser 2 048 caractères Unicode. |
disableMetricValidation |
Facultatif. Indique s'il faut désactiver la validation de l'existence de la métrique pour cette condition. Cela permet de définir des règles d'alerte sur des métriques qui n'existent pas encore, ce qui améliore les workflows client avancés tels que la configuration de règles d'alerte à l'aide de Terraform. Les utilisateurs disposant du rôle |
LabelsEntry
| Représentation JSON |
|---|
{ "key": string, "value": string } |
| Champs | |
|---|---|
key |
|
value |
|
SqlCondition
| Représentation JSON |
|---|
{ "query": string, // Union field |
| Champs | |
|---|---|
query |
Obligatoire. Requête SQL d'analyse de journaux à exécuter, sous forme de chaîne. La requête doit respecter la forme requise. Plus précisément, la requête ne doit pas essayer de filtrer l'entrée par heure. Un filtre est automatiquement appliqué à l'entrée pour que la requête reçoive toutes les lignes reçues depuis la dernière exécution de la requête. Par exemple, la requête suivante extrait toutes les entrées de journal contenant une requête HTTP : |
Champ d'union schedule. La programmation indique la fréquence d'exécution de la requête. schedule ne peut être qu'un des éléments suivants : |
|
minutes |
Planifiez l'exécution de la requête toutes les X minutes. |
hourly |
Planifiez l'exécution de la requête toutes les X heures. |
daily |
Planifiez l'exécution de la requête tous les X jours. |
Champ d'union evaluate. Test à exécuter sur l'ensemble de résultats SQL. evaluate ne peut être qu'un des éléments suivants : |
|
rowCountTest |
Testez le nombre de lignes par rapport à un seuil. |
booleanTest |
Testez la valeur booléenne dans la colonne indiquée. |
Minutes
| Représentation JSON |
|---|
{ "periodicity": integer } |
| Champs | |
|---|---|
periodicity |
Obligatoire. Nombre de minutes entre les exécutions. L'intervalle doit être supérieur ou égal à 5 minutes et inférieur ou égal à 1 440 minutes. |
Toutes les heures
| Représentation JSON |
|---|
{ "periodicity": integer, // Union field |
| Champs | |
|---|---|
periodicity |
Obligatoire. Nombre d'heures entre les exécutions. La valeur doit être supérieure ou égale à 1 heure et inférieure ou égale à 48 heures. |
Champ d'union
|
|
minuteOffset |
Facultatif. Nombre de minutes après l'heure (en UTC) pour exécuter la requête. Doit être supérieur ou égal à 0 minute et inférieur ou égal à 59 minutes. Si aucune valeur n'est spécifiée, un décalage arbitraire est utilisé. |
Tous les jours
| Représentation JSON |
|---|
{
"periodicity": integer,
"executionTime": {
object ( |
| Champs | |
|---|---|
periodicity |
Obligatoire. Nombre de jours entre les exécutions. Doit être supérieur ou égal à 1 jour et inférieur ou égal à 31 jours. |
executionTime |
Facultatif. Heure de la journée (en UTC) à laquelle la requête doit être exécutée. Si aucune heure n'est spécifiée, le serveur en choisit une arbitrairement et exécute la requête à la même heure chaque jour. |
TimeOfDay
| Représentation JSON |
|---|
{ "hours": integer, "minutes": integer, "seconds": integer, "nanos": integer } |
| Champs | |
|---|---|
hours |
Heures de la journée au format 24 heures. Doit être supérieur ou égal à 0 et généralement inférieur ou égal à 23. Une API peut choisir d'autoriser la valeur "24:00:00" pour des cas tels que l'heure de fermeture des bureaux. |
minutes |
Minutes d'une heure. Doit être supérieur ou égal à 0 et inférieur ou égal à 59. |
seconds |
Secondes d'une minute. Doit être supérieur ou égal à 0 et généralement inférieur ou égal à 59. Une API peut autoriser la valeur 60 si elle autorise les secondes intercalaires. |
nanos |
Fractions de secondes, en nanosecondes. La valeur doit être supérieure ou égale à 0 et inférieure ou égale à 999 999 999. |
RowCountTest
| Représentation JSON |
|---|
{
"comparison": enum ( |
| Champs | |
|---|---|
comparison |
Obligatoire. Comparaison à appliquer entre le nombre de lignes renvoyées par la requête et le seuil. |
threshold |
Obligatoire. Valeur à laquelle comparer le nombre de lignes. |
BooleanTest
| Représentation JSON |
|---|
{ "column": string } |
| Champs | |
|---|---|
column |
Obligatoire. Nom de la colonne contenant la valeur booléenne. Si la valeur d'une ligne est NULL, cette ligne est ignorée. |
BoolValue
| Représentation JSON |
|---|
{ "value": boolean } |
| Champs | |
|---|---|
value |
Valeur booléenne. |
État
| Représentation JSON |
|---|
{ "code": integer, "message": string, "details": [ { "@type": string, field1: ..., ... } ] } |
| Champs | |
|---|---|
code |
Code d'état, qui doit être une valeur d'énumération de |
message |
Message d'erreur destiné au développeur, qui doit être en anglais. Tout message d'erreur destiné aux utilisateurs doit être localisé et envoyé dans le champ |
details[] |
Liste de messages comportant les détails de l'erreur. Il existe un ensemble commun de types de message utilisable par les API. Objet contenant des champs d'un type arbitraire. Un champ supplémentaire |
Tous
| Représentation JSON |
|---|
{ "typeUrl": string, "value": string } |
| Champs | |
|---|---|
typeUrl |
Identifie le type du message Protobuf sérialisé avec une référence URI composée d'un préfixe se terminant par une barre oblique et du nom de type complet. Exemple : type.googleapis.com/google.protobuf.StringValue Cette chaîne doit contenir au moins un caractère Le préfixe est arbitraire et les implémentations Protobuf sont censées supprimer tout ce qui précède le dernier Toutes les chaînes d'URL de type doivent être des références URI légales avec la restriction supplémentaire (pour le format texte) que le contenu de la référence ne doit être composé que de caractères alphanumériques, d'échappements encodés en pourcentage et de caractères de l'ensemble suivant (sans les accents graves extérieurs) : Dans la conception d'origine de |
value |
Contient une sérialisation Protobuf du type décrit par type_url. Chaîne encodée en base64. |
MutationRecord
| Représentation JSON |
|---|
{ "mutateTime": string, "mutatedBy": string } |
| Champs | |
|---|---|
mutateTime |
La date et l'heure auxquelles la modification a été apportée. Utilise la norme RFC 3339, où la sortie générée utilise toujours le format UTC (indiqué par "Z" pour le temps universel coordonné) avec des secondes fractionnaires de 0, 3, 6 ou 9 chiffres décimaux. Des décalages horaires autres que "Z" (UTC) sont également acceptés. Exemples : |
mutatedBy |
Adresse e-mail de l'utilisateur qui effectue la modification. |
Horodatage
| Représentation JSON |
|---|
{ "seconds": string, "nanos": integer } |
| Champs | |
|---|---|
seconds |
Représente les secondes de l'heure UTC à partir de l'epoch Unix 1970-01-01T00:00:00Z. La valeur doit être comprise entre -62135596800 et 253402300799 inclus (ce qui correspond à 0001-01-01T00:00:00Z et 9999-12-31T23:59:59Z). |
nanos |
Fractions de secondes non négatives avec une précision de l'ordre de la nanoseconde. Ce champ correspond à la partie en nanosecondes de la durée, et non à une alternative aux secondes. Les valeurs de secondes négatives avec des fractions doivent toujours comporter des valeurs de nanosecondes non négatives comptabilisées dans le temps. La valeur doit être comprise entre 0 et 999 999 999 inclus. |
AlertStrategy
| Représentation JSON |
|---|
{ "notificationRateLimit": { object ( |
| Champs | |
|---|---|
notificationRateLimit |
Obligatoire pour les règles d'alerte basées sur les journaux, c'est-à-dire les règles avec une condition Cette limite ne s'applique pas aux règles d'alerte qui ne comportent pas de condition LogMatch. |
notificationPrompts[] |
Pour les règles d'alerte basées sur les journaux, l'invite de notification est toujours [OUVERTE]. Pour les règles d'alerte non basées sur les journaux, les invites de notification peuvent être [OUVERT] ou [OUVERT, FERMÉ]. |
autoClose |
Si une règle d'alerte active n'a pas de données pendant cette période, tous les incidents ouverts seront fermés. Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par " |
notificationChannelStrategy[] |
Contrôlez la façon dont les notifications seront envoyées, canal par canal. |
NotificationRateLimit
| Représentation JSON |
|---|
{ "period": string } |
| Champs | |
|---|---|
period |
Pas plus d'une notification par Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par " |
NotificationChannelStrategy
| Représentation JSON |
|---|
{ "notificationChannelNames": [ string ], "renotifyInterval": string } |
| Champs | |
|---|---|
notificationChannelNames[] |
Nom complet de la ressource REST pour les canaux de notification auxquels ces paramètres s'appliquent. Chacun d'eux correspond au champ "name" de l'un des objets NotificationChannel référencés dans le champ "notification_channels" de cette AlertPolicy. Il a le format suivant : |
renotifyInterval |
Fréquence d'envoi des notifications de rappel pour les incidents ouverts. La valeur doit être comprise entre 30 minutes et 24 heures. Durée en secondes avec neuf chiffres au maximum après la virgule et se terminant par " |
Aligneur
Aligner spécifie l'opération qui sera appliquée aux points de données de chaque période d'alignement d'une série temporelle. À l'exception de ALIGN_NONE, qui spécifie qu'aucune opération ne doit être appliquée, chaque opération d'alignement remplace l'ensemble des valeurs de données de chaque période d'alignement par une seule valeur : le résultat de l'application de l'opération aux valeurs de données. Une série temporelle alignée comporte une seule valeur de données à la fin de chaque alignment_period.
Une opération d'alignement peut également modifier le type de données des valeurs. Par exemple, si vous appliquez une opération de comptage à des valeurs booléennes, les données value_type de la série temporelle d'origine sont BOOLEAN, mais les données value_type du résultat aligné sont INT64.
| Enums | |
|---|---|
ALIGN_NONE |
Aucun alignement. Les données brutes sont renvoyées. Non valide si une réduction croisée est demandée. Le value_type du résultat est identique à celui de l'entrée.value_type |
ALIGN_DELTA |
Alignez et convertissez au format Cet alignement est valide pour les métriques |
ALIGN_RATE |
Alignez et convertissez les données en taux. Le résultat est calculé sous la forme Cet aligneur est valide pour les métriques Si, par "taux", vous entendez "variation en pourcentage", consultez plutôt l'outil d'alignement |
ALIGN_INTERPOLATE |
Alignez les points de données en interpolant les points adjacents à la limite de la période d'alignement. Cet aligneur est valide pour les métriques GAUGE avec des valeurs numériques. Le value_type du résultat aligné est identique au value_type de l'entrée. |
ALIGN_NEXT_OLDER |
Alignez les points de données en déplaçant le point de données le plus récent et antérieur à la fin de la période d'alignement vers la limite correspondant à la fin de la période d'alignement. Cet aligneur est valide pour les métriques GAUGE. Le value_type du résultat aligné est identique au value_type de l'entrée. |
ALIGN_MIN |
Permet d'aligner les séries temporelles en renvoyant la valeur minimale pour chaque période d'alignement. Cet aligneur est valide pour les métriques GAUGE et DELTA avec des valeurs numériques. Le value_type du résultat aligné est identique au value_type de l'entrée. |
ALIGN_MAX |
Alignez les séries temporelles en renvoyant la valeur maximale de chaque période d'alignement. Cet aligneur est valide pour les métriques GAUGE et DELTA avec des valeurs numériques. Le value_type du résultat aligné est identique au value_type de l'entrée. |
ALIGN_MEAN |
Permet d'aligner les séries temporelles en renvoyant la valeur moyenne pour chaque période d'alignement. Cet aligneur est valide pour les métriques GAUGE et DELTA avec des valeurs numériques. Le value_type du résultat aligné est DOUBLE. |
ALIGN_COUNT |
Alignez la série temporelle en renvoyant le nombre de valeurs dans chaque période d'alignement. Cet aligneur est valide pour les métriques GAUGE et DELTA avec des valeurs numériques ou booléennes. Le value_type du résultat aligné est INT64. |
ALIGN_SUM |
Permet d'aligner les séries temporelles en renvoyant la somme des valeurs dans chaque période d'alignement. Cet aligneur est valide pour les métriques GAUGE et DELTA avec des valeurs numériques et de distribution. Le value_type du résultat aligné est identique au value_type de l'entrée. |
ALIGN_STDDEV |
Alignez la série temporelle en renvoyant l'écart type des valeurs pour chaque période d'alignement. Cet aligneur est valide pour les métriques GAUGE et DELTA avec des valeurs numériques. Le value_type du résultat est DOUBLE. |
ALIGN_COUNT_TRUE |
Alignez la série temporelle en renvoyant le nombre de valeurs True dans chaque période d'alignement. Cet aligneur est valide pour les métriques GAUGE avec des valeurs booléennes. Le value_type du résultat est INT64. |
ALIGN_COUNT_FALSE |
Alignez la série temporelle en renvoyant le nombre de valeurs False dans chaque période d'alignement. Cet aligneur est valide pour les métriques GAUGE avec des valeurs booléennes. Le value_type du résultat est INT64. |
ALIGN_FRACTION_TRUE |
Alignez les séries temporelles en renvoyant le ratio du nombre de valeurs True sur le nombre total de valeurs dans chaque période d'alignement. Cet aligneur est valide pour les métriques GAUGE avec des valeurs booléennes. La valeur de sortie est comprise dans la plage [0,0, 1,0] et comporte value_type DOUBLE. |
ALIGN_PERCENTILE_99 |
Alignez les séries temporelles à l'aide de l'agrégation par centiles. Le point de données résultant dans chaque période d'alignement correspond au 99e centile de tous les points de données de la période. Cet aligneur est valide pour les métriques GAUGE et DELTA avec des valeurs de distribution. Le résultat est une métrique GAUGE avec value_type DOUBLE. |
ALIGN_PERCENTILE_95 |
Alignez les séries temporelles à l'aide de l'agrégation par centiles. Le point de données résultant de chaque période d'alignement correspond au 95e centile de tous les points de données de la période. Cet aligneur est valide pour les métriques GAUGE et DELTA avec des valeurs de distribution. Le résultat est une métrique GAUGE avec value_type DOUBLE. |
ALIGN_PERCENTILE_50 |
Alignez les séries temporelles à l'aide de l'agrégation par centiles. Le point de données résultant dans chaque période d'alignement correspond au 50e centile de tous les points de données de la période. Cet aligneur est valide pour les métriques GAUGE et DELTA avec des valeurs de distribution. Le résultat est une métrique GAUGE avec value_type DOUBLE. |
ALIGN_PERCENTILE_05 |
Alignez les séries temporelles à l'aide de l'agrégation par centiles. Le point de données résultant dans chaque période d'alignement correspond au 5e centile de tous les points de données de la période. Cet aligneur est valide pour les métriques GAUGE et DELTA avec des valeurs de distribution. Le résultat est une métrique GAUGE avec value_type DOUBLE. |
ALIGN_PERCENT_CHANGE |
Alignez-les et convertissez-les en variation en pourcentage. Cet aligneur est valide pour les métriques Si les valeurs de Une moyenne mobile de 10 minutes est calculée à chaque point de la période d'alignement avant le calcul ci-dessus afin de lisser la métrique et d'éviter les faux positifs dus à des pics de très courte durée. La moyenne mobile ne s'applique qu'aux données dont les valeurs sont |
Réducteur
Une opération de réducteur décrit comment agréger les points de données de plusieurs séries temporelles en une seule série temporelle, où la valeur de chaque point de données de la série résultante est une fonction de toutes les valeurs déjà alignées des séries temporelles d'entrée.
| Enums | |
|---|---|
REDUCE_NONE |
Aucune réduction des séries temporelles croisées. Le résultat de Aligner est renvoyé. |
REDUCE_MEAN |
Réduit le résultat en calculant la valeur moyenne des séries temporelles pour chaque période d'alignement. Ce réducteur est valide pour les métriques DELTA et GAUGE avec des valeurs numériques ou de distribution. Le value_type du résultat est DOUBLE. |
REDUCE_MIN |
Réduit le résultat en calculant la valeur minimale des séries temporelles pour chaque période d'alignement. Ce réducteur est valide pour les métriques DELTA et GAUGE avec des valeurs numériques. Le value_type du résultat est identique au value_type de l'entrée. |
REDUCE_MAX |
Réduit le résultat en calculant la valeur maximale des séries temporelles pour chaque période d'alignement. Ce réducteur est valide pour les métriques DELTA et GAUGE avec des valeurs numériques. Le value_type du résultat est identique au value_type de l'entrée. |
REDUCE_SUM |
Réduit le résultat en calculant la somme des séries temporelles pour chaque période d'alignement. Ce réducteur est valide pour les métriques DELTA et GAUGE avec des valeurs numériques et de distribution. Le value_type du résultat est identique au value_type de l'entrée. |
REDUCE_STDDEV |
Réduit le résultat en calculant l'écart type des séries temporelles pour chaque période d'alignement. Ce réducteur est valide pour les métriques DELTA et GAUGE avec des valeurs numériques ou de distribution. Le value_type du résultat est DOUBLE. |
REDUCE_COUNT |
Réduit le résultat en calculant le nombre de points de données dans les séries temporelles pour chaque période d'alignement. Ce réducteur est valide pour les métriques DELTA et GAUGE de value_type numériques, booléens, de distribution et de chaîne. Le value_type du résultat est INT64. |
REDUCE_COUNT_TRUE |
Réduit le résultat en calculant le nombre de points de données avec la valeur True dans les séries temporelles pour chaque période d'alignement. Ce réducteur est valide pour les métriques DELTA et GAUGE de value_type booléen. La value_type du résultat est INT64. |
REDUCE_COUNT_FALSE |
Réduit le résultat en calculant le nombre de points de données avec la valeur False dans les séries temporelles pour chaque période d'alignement. Ce réducteur est valide pour les métriques DELTA et GAUGE de value_type booléen. Le value_type du résultat est INT64. |
REDUCE_FRACTION_TRUE |
Réduit le résultat en calculant le ratio du nombre de points de données avec une valeur True par rapport au nombre total de points de données pour chaque période d'alignement. Ce réducteur est valide pour les métriques DELTA et GAUGE de value_type booléen. La valeur de sortie est comprise dans la plage [0,0, 1,0] et comporte value_type DOUBLE. |
REDUCE_PERCENTILE_99 |
Réduit le résultat en calculant le 99e centile des points de données des séries temporelles pour chaque période d'alignement. Ce réducteur est valide pour les métriques GAUGE et DELTA de type numérique et de distribution. La valeur de la sortie est DOUBLE. |
REDUCE_PERCENTILE_95 |
Réduit le résultat en calculant le 95e centile des points de données dans les séries temporelles pour chaque période d'alignement. Ce réducteur est valide pour les métriques GAUGE et DELTA de type numérique et de distribution. La valeur de la sortie est DOUBLE. |
REDUCE_PERCENTILE_50 |
Réduit le résultat en calculant le 50e centile des points de données des séries temporelles pour chaque période d'alignement. Ce réducteur est valide pour les métriques GAUGE et DELTA de type numérique et de distribution. La valeur de la sortie est DOUBLE. |
REDUCE_PERCENTILE_05 |
Réduit le résultat en calculant le 5e centile des points de données des séries temporelles pour chaque période d'alignement. Ce réducteur est valide pour les métriques GAUGE et DELTA de type numérique et de distribution. La valeur de la sortie est DOUBLE. |
ComparisonType
Spécifie une relation d'ordre sur deux arguments, appelés left et right.
| Enums | |
|---|---|
COMPARISON_UNSPECIFIED |
Aucune relation d'ordre n'est spécifiée. |
COMPARISON_GT |
True si l'argument de gauche est supérieur à l'argument de droite. |
COMPARISON_GE |
True si l'argument de gauche est supérieur ou égal à l'argument de droite. |
COMPARISON_LT |
"True" si l'argument de gauche est inférieur à l'argument de droite. |
COMPARISON_LE |
True si l'argument de gauche est inférieur ou égal à l'argument de droite. |
COMPARISON_EQ |
Vrai si l'argument de gauche est égal à l'argument de droite. |
COMPARISON_NE |
True si l'argument de gauche n'est pas égal à l'argument de droite. |
EvaluationMissingData
Contrôle de condition qui détermine comment les conditions de seuil de métrique sont évaluées lorsque les données cessent d'arriver. Ce paramètre n'a aucune incidence sur les règles d'absence de métriques.
| Enums | |
|---|---|
EVALUATION_MISSING_DATA_UNSPECIFIED |
Option de données manquantes pour l'évaluation non spécifiée. Équivaut à EVALUATION_MISSING_DATA_NO_OP. |
EVALUATION_MISSING_DATA_INACTIVE |
S'il n'y a pas de données pour évaluer la condition, évaluez-la comme étant "false". |
EVALUATION_MISSING_DATA_ACTIVE |
S'il n'y a pas de données pour évaluer la condition, considérez qu'elle est remplie. |
EVALUATION_MISSING_DATA_NO_OP |
N'évaluez pas la condition à une valeur si aucune donnée n'est disponible. |
ConditionCombinerType
Opérateurs permettant de combiner des conditions.
| Enums | |
|---|---|
COMBINE_UNSPECIFIED |
Combinaison non spécifiée. |
AND |
Combinez des conditions à l'aide de l'opérateur logique AND. Un incident n'est créé que si toutes les conditions sont remplies simultanément. Ce combinateur est satisfait si toutes les conditions sont remplies, même si elles le sont sur des ressources complètement différentes. |
OR |
Combinez des conditions à l'aide de l'opérateur logique OR. Un incident est créé si l'une des conditions listées est remplie. |
AND_WITH_MATCHING_RESOURCE |
Combinez les conditions à l'aide de l'opérateur logique AND. Toutefois, contrairement à l'option AND habituelle, un incident n'est créé que si toutes les conditions sont remplies simultanément sur au moins une ressource. |
NotificationPrompt
Contrôlez le moment où les notifications seront envoyées.
| Enums | |
|---|---|
NOTIFICATION_PROMPT_UNSPECIFIED |
Aucune stratégie spécifiée. Traitée comme une erreur. |
OPENED |
Recevoir une notification en cas d'ouverture d'un incident. |
CLOSED |
Recevoir une notification en cas de fermeture d'un incident. |
Gravité
Énumération des niveaux de gravité possibles pour une règle d'alerte.
| Enums | |
|---|---|
SEVERITY_UNSPECIFIED |
Aucun niveau de gravité n'est spécifié. Il s'agit de la valeur par défaut. |
CRITICAL |
Il s'agit du niveau de gravité le plus élevé. Utilisez cette option si le problème peut entraîner des dommages ou une indisponibilité importants. |
ERROR |
Il s'agit du niveau de gravité moyen. Utilisez cette option si le problème peut entraîner des dommages ou un temps d'arrêt mineurs. |
WARNING |
Il s'agit du niveau de gravité le plus bas. Utilisez cette option si le problème ne cause aucun dommage ni temps d'arrêt, mais pourrait potentiellement en entraîner un à l'avenir. |
Annotations d'outils
Indication destructive : ❌ | Indication idempotente : ✅ | Indication en lecture seule : ✅ | Indication Open World : ❌