Ce document explique comment créer des règles d'alerte et des graphiques pour surveiller le quota qui vous est attribué par Google Cloud. Il comprend plusieurs exemples. Google Cloud définit divers quotas que vous pouvez utiliser pour suivre et limiter les ressources consommées par un projet ou une organisation. Pour obtenir des informations générales sur les quotas, y compris sur les quotas d'allocation et les quotas de débit, consultez la page Utiliser des quotas.
Avant de commencer
Dans ce document, nous partons du principe que vous connaissez bien les données de séries temporelles et leur manipulation. Les ressources suivantes fournissent des informations supplémentaires :
- Pour en savoir plus sur l'utilisation des données de séries temporelles, consultez la section Filtrage et agrégation.
- Pour connaître les définitions des termes jauge, delta et cumulatif, consultez la section Genre de métriques.
- Pour plus d'informations sur les fonctions utilisées pour combiner des séries temporelles, consultez
Aligner
etReducer
.
Gestion des quotas
Cloud Monitoring gère les quotas de deux manières:
Quota client : pour ce type de quota, la ressource surveillée est
consumer_quota
. Les métriques de cette ressource constituent un sous-ensemble des métriquesserviceruntime
.La plupart des exemples de cette page sont des exemples de quota client.
Quotas spécifiques aux ressources : certains services fournissent des ressources surveillées disposant de métriques spécifiques aux ressources pour les quotas. Ces types de métriques apparaissent par groupes de trois et suivent un format de dénomination :
service/quota/quota-type/exceeded
service/quota/quota-type/limit
service/quota/quota-type/usage
Par exemple, Compute Engine dispose de la ressource
compute.googleapis.com/VpcNetwork
. Les métriques liées aux quotas associées à cette ressource correspondent au sous-ensemblecompute.googleapis.com/quota
des métriquescompute
. Il existe trois types de métriques liées au quota d'instances par réseau VPC:quota/instances_per_vpc_network/exceeded
quota/instances_per_vpc_network/limit
quota/instances_per_vpc_network/usage
Identifier les métriques de quota et les noms de limites
Les données brutes sur la consommation des quotas, en particulier pour les quotas de client, peuvent inclure des informations sur de nombreux quotas différents. Pour extraire des informations sur un quota spécifique pour un graphique ou une règle d'alerte, vous devez identifier ce sous-ensemble de données de quota.
Selon la source, les données de quota peuvent inclure des libellés que vous pouvez utiliser pour isoler les informations souhaitées. Voici des exemples de libellés :
- Métrique de quota: la métrique de quota est un identifiant pour un type de quota. Elle n'est pas l'un des types de métriques décrits dans la liste des métriques. Par exemple, toutes les données de quotas de consommateurs sont écrites sous le type de métrique
serviceruntime.googleapis.com
, commequota/allocation/usage
. Ce type de métrique comporte un libelléquota_metric
qui peut être utilisé pour filtrer sur un quota spécifique, par exemple les données d'utilisation d'allocation. - Nom de la limite: ce nom identifie la limite appliquée à un type spécifique de quota.
Un quota peut être associé à plusieurs limites. Par exemple, un quota pour les appels en lecture peut être limité à 100 par minute et à 1 000 par jour, avec deux noms de limites,
readsPerMinute
etreadsPerDay
. Les types de métriques liées aux quotas peuvent comporter un champlimit_name
pour cette valeur.
Tous les types de métriques serviceruntime.googleapis.com/quota
fournissent le libellé quota_metric
, mais seulement certains incluent le libellé limit_name
.
Les types de métriques spécifiques aux ressources pour le quota incluent le libellé limit_name
.
Tous les services Google Cloud ne sont pas compatibles avec les métriques de quota. Pour déterminer si un service est compatible avec les métriques de quota et identifier les valeurs des libellés spécifiques aux quotas, procédez comme suit:
-
Dans la console Google Cloud, accédez à la page Quotas et limites du système:
Accéder à Quotas et limites du système
Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est IAM et administration.
Cliquez sur view_column Afficher une colonne, puis ajoutez les colonnes suivantes à l'affichage des quotas:
- Métrique: cette colonne affiche la valeur du libellé
quota_metric
. - Nom de la limite: cette colonne affiche la valeur du libellé
limit_name
. - Ressource surveillée: lorsque ce champ est renseigné, le quota utilise la ressource surveillée listée. Lorsqu'il est vide, la ressource surveillée du quota est
consumer_quota
.
- Métrique: cette colonne affiche la valeur du libellé
Recherchez le quota qui vous intéresse.
Par exemple, le quota des sous-réseaux de l'API Compute Engine indique la métrique comme
compute.googleapis.com/subnetworks
, le nom de la limite commeSUBNETWORKS-per-project
et ne liste pas de ressource surveillée. Par conséquent, la ressource surveillée pour ce quota estconsumer_quota
.
Exemple : Afficher l'utilisation d'une métrique de quota client spécifique
L'objectif est de créer un graphique qui affiche le quota de stockage total de disque de Compute Engine, par région. Cet exemple de quota de client récupère les données quota/allocation/usage
, puis les filtre afin que l'utilisation d'allocation pour une métrique de quota spécifique s'affiche:
Dans la console Google Cloud, sélectionnez "Cloud Monitoringquot;, puis "Explorateur de métriques".
Accédez à l'onglet Configuration.
Dans la barre d'outils, définissez la période sur un mois en sélectionnant 1 mois.
Développez le menu Graphique en courbes, puis sélectionnez Graphique à barres empilées.
Configurez l'explorateur de métriques pour afficher l'utilisation du quota d'allocation'allocation:
- Cliquez sur Sélectionner une métrique, puis saisissez
allocation
dans la barre de filtre filter_list. - Sélectionnez Quota du client pour la ressource.
- Sélectionnez Quota pour la catégorie de métriques.
- Sélectionnez Utilisation du quota d'allocation pour la métrique, puis cliquez sur Appliquer.
Le graphique affiche, sous forme de graphique à barres, l'utilisation du quota d'allocation sur une période de six semaines. Les différents services représentés sur le graphique sont répertoriés dans la légende.
Si vous utilisez l'API Cloud Monitoring, la valeur de filtre correspondante est la suivante :
metric.type="serviceruntime.googleapis.com/quota/allocation/usage" resource.type="consumer_quota"
Vous pouvez afficher cette valeur de filtre en développant le menu Type de ressource, puis en sélectionnant Mode de filtrage direct.
- Cliquez sur Sélectionner une métrique, puis saisissez
Pour limiter le graphique au service Compute Engine, ajoutez le filtre
service = compute.googleapis.com
:Si vous utilisez l'API Cloud Monitoring, la valeur de filtre correspondante est la suivante :
metric.type="serviceruntime.googleapis.com/quota/allocation/usage" resource.type="consumer_quota" resource.label.service="compute.googleapis.com"
Le graphique affiche maintenant les séries temporelles associées à l'utilisation du quota d'allocation pour ce qui concerne les quotas Compute Engine. Pour chaque série temporelle, la valeur du libellé
quota_metric
est affichée dans la légende. Cette valeur identifie chacun des quotas. Par exemple,compute.googleapis.com/disks_total_storage
identifie la série temporelle du quota de stockage total sur disque de Compute Engine.Le graphique ne montre l'utilisation des quotas que pour ceux qui ont enregistré une utilisation. Par exemple, si le projet ne dispose d'aucune ressource Compute Engine, le filtrage du service
compute.googleapis.com
génère un graphique sans données.Pour créer un graphique indiquant l'utilisation totale du quota de stockage sur disque de Compute Engine, utilisez le filtre
quota_metric = compute.googleapis.com/disks_total_storage
:Si vous utilisez l'API Cloud Monitoring, la valeur de filtre correspondante est la suivante :
metric.type="serviceruntime.googleapis.com/quota/allocation/usage" resource.type="consumer_quota" metric.label.quota_metric="compute.googleapis.com/disks_total_storage"
Le graphique précédent affiche les séries temporelles pour les régions
us-central1
etus-east1
, ainsi que pour plusieurs zones, y compris la zoneus-central1-a
.Pour affiner le graphique afin qu'il n'affiche que les données des régions, sans les zones, ajoutez un filtre basé sur le libellé
location
. Dans cet exemple, où les deux régions commencent parus-
et se terminent par1
, un filtre utilisant une expression régulière, en l'occurrencelocation =~ ^us.*1$
, fonctionne bien :
Pour le quota de client, la valeur du libellé quota_metric
identifie à la fois le service et l'utilisation spécifique du quota surveillé. Lorsque vous créez des graphiques ou des règles d'alerte qui surveillent une métrique de quota spécifique, vous utilisez cette information.
Règles d'alerte dans Cloud Monitoring
Les règles d'alerte permettent de configurer Monitoring pour vous avertir lorsqu'un événement se produit, par exemple lorsque vous atteignez 85% de votre limite de quota.
Une règle d'alerte est un ensemble de conditions et d'informations de notification :
- Une condition décrit ce qui est surveillé, comment les données de séries temporelles de cette ressource doivent être combinées et le moment où un incident est généré. Une règle d'alerte doit spécifier au moins une condition.
- Le canal de notification indique qui doit être averti et comment il doit être averti lorsqu'un incident se produit. Par exemple, vous pouvez configurer la règle d'alerte pour qu'elle envoie des e-mails à une personne spécifique ou à un groupe de personnes.
Vous pouvez utiliser deux techniques pour créer des conditions de règle d'alerte:
Sélection et manipulation des données à l'aide des filtres Monitoring. Par exemple, lorsque vous utilisez l'interface graphique pour créer des conditions de règle d'alerte, vous créez des filtres. L'exemple présenté dans la section Utiliser des métriques de quota utilise des filtres pour sélectionner les données d'un graphique. Vous pouvez également utiliser des filtres dans les requêtes adressées à l'API Monitoring.
Utilisation de MQL pour sélectionner et manipuler des données. MQL est un langage de requête basé sur le texte. L'éditeur de code MQL vous permet de créer des requêtes que vous ne pouvez pas créer avec la technique basée sur un filtre. Nous vous recommandons d'utiliser MQL pour créer des règles d'alerte basées sur un ratio. Pour en savoir plus, consultez la section Exemples de règles d'alerte MQL.
Cette page traite des deux techniques. Vous pouvez également créer des graphiques à l'aide de l'une ou l'autre technique.
Filtrer les exemples de règles d'alerte
Dans cette section, chaque sous-section inclut la représentation JSON d'une règle d'alerte, ainsi qu'une paire de tables décrivant comment configurer la règle dans la console Google Cloud:
- Le premier tableau décrit ce qui est surveillé et la manière dont les données doivent être combinées.
- Le deuxième tableau indique le moment où un incident doit être généré.
Ces exemples concernent l'approche basée sur des filtres.
Aucune de ces règles ne calcule des ratios. Pour obtenir des exemples basés sur des ratios, consultez les exemples de règles d'alerte MQL.
Alertes sur les erreurs quota/exceeded
Vous pouvez créer des règles d'alerte pour vous avertir si un service de votre projet Google Cloud signale une erreur de dépassement de quota. Vous pouvez créer ce type de règle à l'aide de Google Cloud Console ou de l'API Cloud Monitoring.
Utiliser la console Google Cloud
La suite de cette sous-section concerne la boîte de dialogue des conditions d'une règle d'alerte.
Remplissez la boîte de dialogue Nouvelle condition à l'aide des paramètres indiqués dans le tableau suivant.
Ces paramètres indiquent que vous souhaitez surveiller l'erreur /quota/exceeded
dans les données de la série temporelle pour la métrique serviceruntime
pour tous les services de votre projet Google Cloud, et que vous souhaitez regrouper les données par limite de quota.
Champ de la boîte de dialogue Nouvelle condition |
Valeur |
---|---|
Ressource et métrique | Dans le menu Ressources, sélectionnez Quota du client. Dans le menu Catégories de métriques, sélectionnez Quota. Dans le menu Métriques, sélectionnez Erreur de dépassement du quota. ( metric.type est serviceruntime.googleapis.com/quota/exceeded ,et resource.type est consumer_quota ).
|
Filter |
Ajoutez un filtre pour que le graphique affiche uniquement les données du service que vous souhaitez surveiller. Par exemple, pour surveiller le service de gestion de l'authentification et des accès, ajoutez le filtre suivant : service = iam.googleapis.com. Lorsque le champ de filtre est vide, toutes les données de métriques disponibles sont incluses dans le graphique. |
Fenêtre glissante | Sélectionnez 1 m . |
Fenêtrage glissant | Sélectionnez count true .
Cette métrique est de type Pour cette métrique, les fonctions de fenêtre glissante de |
Dans toutes les séries temporelles Agrégation de séries temporelles |
Sélectionnez Le champ d'agrégation est automatiquement défini sur |
Dans toutes les séries temporelles Regrouper les séries temporelles par |
Sélectionnez Cette option regroupe les données en fonction du type de nom de l'élément |
Renseignez les champs de la boîte de dialogue Configurer le déclencheur à l'aide des paramètres suivants. Ces paramètres entraînent la création d'une alerte par la règle d'alerte si le nombre d'erreurs de dépassement de quota dépasse un seuil de 0 pendant une minute. Dans le cas présent, la valeur 0 est sélectionnée, car les erreurs de dépassement de quota sont inattendues, et indiquent qu'un quota doit être augmenté ou qu'un service doit être modifié pour réduire les requêtes API. Vous pouvez utiliser un seuil plus élevé.
Champ de la boîte de dialogue Configurer le déclencheur |
Valeur |
---|---|
Type de condition | Threshold |
Déclencheur d'alerte | Any time series violates |
Position du seuil | Above threshold |
Valeur du seuil | 0 |
Fenêtre du nouveau test | 1 m |
Utiliser l'API Cloud Monitoring
Vous pouvez créer cette règle d'alerte à l'aide de la méthode API alertPolicies.create
. Vous pouvez appeler l'API Cloud Monitoring directement à l'aide de Google Cloud CLI ou de bibliothèques clientes. Pour en savoir plus, consultez la section Créer des règles.
Pour en savoir plus sur l'écriture des règles d'alerte au format JSON ou YAML, consultez la page Exemples de règles.
Voici une représentation de cette règle d'alerte au format JSON :
{
"combiner": "OR",
"conditions": [
{
"conditionThreshold": {
"aggregations": [
{
"alignmentPeriod": "60s",
"crossSeriesReducer": "REDUCE_SUM",
"groupByFields": [
"metric.label.quota_metric"
],
"perSeriesAligner": "ALIGN_COUNT_TRUE"
}
],
"comparison": "COMPARISON_GT",
"duration": "60s",
"filter": "metric.type=\"serviceruntime.googleapis.com/quota/exceeded\" resource.type=\"consumer_quota\"",
"trigger": {
"count": 1
}
},
"displayName": "Quota exceeded error by label.quota_metric SUM",
}
],
"displayName": "Quota exceeded policy",
}
Alertes sur la valeur absolue quota/allocation/usage
Vous pouvez créer une règle d'alerte pour vous avertir si l'utilisation du quota d'allocation pour un service spécifique de votre projet Google Cloud dépasse un seuil défini par l'utilisateur. Vous pouvez créer ce type de règle à l'aide de Google Cloud Console ou de l'API Cloud Monitoring.
Utiliser la console Google Cloud
La suite de cette sous-section concerne la boîte de dialogue des conditions d'une règle d'alerte.
Remplissez la boîte de dialogue Nouvelle condition à l'aide des paramètres indiqués dans le tableau suivant.
Ces paramètres indiquent que vous souhaitez surveiller l'erreur /quota/allocation/usage
dans les données de la série temporelle pour la métrique serviceruntime
pour un service de votre projet Google Cloud, et que vous souhaitez regrouper les données par limite de quota.
Champ de la boîte de dialogue Nouvelle condition |
Valeur |
---|---|
Ressource et métrique | Dans le menu Ressources, sélectionnez Quota du client. Dans le menu Catégories de métriques, sélectionnez Quota. Dans le menu Métriques, sélectionnez Utilisation du quota d'allocation. ( metric.type est serviceruntime.googleapis.com/quota/allocation/usage ,et resource.type est consumer_quota ).
|
Filter |
Ajoutez un filtre pour que le graphique affiche uniquement les données du service que vous souhaitez surveiller. Par exemple, pour surveiller le service de gestion de l'authentification et des accès, ajoutez le filtre suivant : service = iam.googleapis.com. Lorsque le champ de filtre est vide, toutes les données de métriques disponibles sont incluses dans le graphique. |
Fenêtre glissante | Sélectionnez 1440 m .La période correspond à l'intervalle d'échantillonnage pour cette métrique. |
Fenêtrage glissant | Sélectionnez next older . La fenêtrage glissante est définie sur |
Dans toutes les séries temporelles Agrégation de séries temporelles |
Sélectionnez Le champ d'agrégation est automatiquement défini sur |
Dans toutes les séries temporelles Regrouper les séries temporelles par |
Sélectionnez Cette option regroupe les données en fonction du type de nom de l'élément |
Renseignez les champs de la boîte de dialogue Configurer le déclencheur à l'aide des paramètres suivants. Ces paramètres entraînent la création d'une alerte par la règle d'alerte si la valeur de la série temporelle dépasse 2,5 pendant 1 440 minutes. La valeur de 1 440 minutes correspond à la période glissante. La valeur de 2,5 a été sélectionnée dans cet exemple, car elle est légèrement supérieure à la valeur normale du système de test. Vous devez sélectionner le seuil en fonction du service que vous surveillez en association avec une analyse de la plage de valeurs attendue pour la métrique.
Champ de la boîte de dialogue Configurer le déclencheur |
Valeur |
---|---|
Type de condition | Threshold |
Déclencheur d'alerte | Any time series violates |
Position du seuil | Above threshold |
Valeur du seuil | 2.5 |
Fenêtre du nouveau test | 1440 m |
Utiliser l'API Cloud Monitoring
Vous pouvez créer cette règle d'alerte à l'aide de la méthode API alertPolicies.create
. Vous pouvez appeler l'API Cloud Monitoring directement à l'aide de Google Cloud CLI ou de bibliothèques clientes. Pour en savoir plus, consultez la section Créer des règles.
Pour en savoir plus sur l'écriture des règles d'alerte au format JSON ou YAML, consultez la page Exemples de règles.
Voici une représentation de cette règle d'alerte au format JSON :
{
"combiner": "OR",
"conditions": [
{
"conditionThreshold": {
"aggregations": [
{
"alignmentPeriod": "86400s",
"crossSeriesReducer": "REDUCE_SUM",
"groupByFields": [
"metric.label.quota_metric"
],
"perSeriesAligner": "ALIGN_NEXT_OLDER"
}
],
"comparison": "COMPARISON_GT",
"duration": "86400s",
"filter": "metric.type=\"serviceruntime.googleapis.com/quota/allocation/usage\" resource.type=\"consumer_quota\" resource.label.\"service\"=\"iam.googleapis.com\"",
"thresholdValue": 2.5,
"trigger": {
"count": 1
}
},
"displayName": "Allocation quota usage for iam.googleapis.com by label.quota_metric SUM",
}
],
"displayName": "Absolute quota usage policy",
}
Exemples de règles d'alerte MQL
MQL est un langage de requête de type textuel qui utilise une série d'opérations liées par des barres verticales. MQL vous permet de créer des requêtes plus puissantes et flexibles que celles que vous pouvez créer avec des filtres Monitoring. Nous vous recommandons d'utiliser MQL pour configurer des règles d'alerte basées sur un ratio. Par exemple, avec MQL, vous pouvez configurer un ratio pour l'utilisation du quota de débit, ce qui nécessite de calculer le ratio d'une métrique de jauge (limite) et d'une métrique delta (taux).
Vous pouvez créer des règles d'alerte basées sur MQL à l'aide de la console Google Cloud ou de l'API Monitoring:
Console Google Cloud: utilisez l'éditeur de code MQL lorsque vous créez la condition d'alerte. Pour afficher l'éditeur de code, cliquez sur code Éditeur de requête dans la barre d'outils de la boîte de dialogue Créer une règle d'alerte. Pour en savoir plus sur l'utilisation de cet éditeur, consultez la section Utiliser l'éditeur de code pour MQL.
API Monitoring: utilisez la méthode
alertPolicies.create
et indiquez une condition du typeMonitoringQueryLanguageCondition
. Ce type de condition utilise une requête MQL en tant que valeur de champ. Pour en savoir plus sur l'utilisation de l'API Monitoring avec MQL, consultez la page Créer des conditions pour les règles d'alerte MQL.
Pour en savoir plus sur MQL, consultez la page Utiliser le langage de requête Monitoring. Pour en savoir plus sur les règles d'alerte basées sur MQL, consultez la section Règles d'alerte avec MQL.
Règle d'alerte qui surveille le ratio entre le quota de débit et la limite de quota
Le modèle de requête MQL suivant décrit une règle d'alerte qui envoie une notification lorsque l'utilisation du débit par minute d'un service de ressources spécifique dépasse 80% d'une limite donnée:
fetch consumer_quota
| filter resource.service == 'sample.googleapis.com'
| { metric serviceruntime.googleapis.com/quota/rate/net_usage
| align delta_gauge(1m)
| group_by [resource.project_id, metric.quota_metric, resource.location],
sum(value.net_usage)
; metric serviceruntime.googleapis.com/quota/limit
| filter metric.limit_name == 'Limit'
| group_by [resource.project_id, metric.quota_metric, resource.location],
sliding(1m), max(val()) }
| ratio
| every 1m
| condition gt(val(), 0.8 '1')
Pour utiliser ce modèle de requête, apportez les modifications suivantes:
- Remplacez
sample.googleapis.com
par le service que vous souhaitez surveiller. - Remplacez
Limit
pourmetric.limit_name
par la limite que vous souhaitez suivre. Pour savoir comment identifier les noms des limites, consultez la section Identifier les métriques de quota et les noms des limites. - Remplacez
1m
dans les fonctionsdelta_gauge
etsliding
par une fenêtre appropriée pour votre limite.
Ne modifiez pas l'opération every 1m
, qui détermine l'écart entre les points de données dans les résultats de la requête.
Vous ne pouvez pas créer cette requête avec des filtres.
Règle d'alerte qui surveille le ratio du quota de débit avec des caractères génériques
MQL accepte le filtrage à l'aide de caractères génériques, d'expressions régulières et de logique booléenne. Par exemple, vous pouvez utiliser MQL pour créer une règle d'alerte qui suit plusieurs limites et vous avertit si une limite est dépassée.
Le modèle de requête MQL suivant décrit une règle d'alerte qui envoie des notifications lorsque l'utilisation des débits par minute ou par jour des services de ressources dépasse 80%:
fetch consumer_quota
| filter resource.service =~ '.*'
| { { metric serviceruntime.googleapis.com/quota/rate/net_usage
| align delta_gauge(1m)
| group_by [resource.project_id, metric.quota_metric, resource.location],
sum(value.net_usage)
; metric serviceruntime.googleapis.com/quota/limit
| filter metric.limit_name =~ '.*PerMinute.*'
| group_by [resource.project_id, metric.quota_metric, resource.location],
sliding(1m), max(val()) }
| ratio
; { metric serviceruntime.googleapis.com/quota/rate/net_usage
| align delta_gauge(23h)
| group_by [resource.project_id, metric.quota_metric, resource.location],
sum(value.net_usage)
; metric serviceruntime.googleapis.com/quota/limit
| filter metric.limit_name =~ '.*PerDay.*'
| group_by [resource.project_id, metric.quota_metric, resource.location],
sliding(23h), max(val()) }
| ratio }
| union
| every 1m
| condition gt(val(), 0.8 '1')
Dans la requête précédente, l'argument de l'aligneur delta_gauge
est défini sur 23 heures au lieu d'un jour. MQL ne peut exiger que 23 heures et 30 minutes de données. À des fins de calcul, l'aligneur delta_gauge
ajoute une heure à la période d'alignement. Si vous utilisez delta_gauge(1d)
, la condition ne peut pas être enregistrée, car elle exige 25 heures de données. Ce comportement est différent de l'aligneur next_older
, qui ne remplit pas la période d'alignement.
Pour utiliser ce modèle de requête, apportez les modifications suivantes:
- Remplacez l'expression régulière du
resource.service
par une expression régulière pour les services que vous souhaitez suivre. - Dans le premier ratio :
- Remplacez
.*PerMinute.*
pourmetric.limit_name
par une expression régulière pour le premier groupe de limites que vous souhaitez suivre. Pour savoir comment identifier les noms des limites, consultez la section Identifier les métriques de quota et les noms des limites. - Remplacez
1m
dans les fonctionsdelta_gauge
etsliding
par une fenêtre adaptée à vos limites.
- Remplacez
- Dans le deuxième ratio :
- Remplacez
.*PerDay.*
pour la valeurmetric.limit_name
par une expression régulière pour le deuxième groupe de limites que vous souhaitez suivre. - Remplacez
23h
dans les fonctionsdelta_gauge
etsliding
par une fenêtre adaptée à vos limites.
- Remplacez
Ne modifiez pas l'opération every 1m
, qui détermine l'écart entre les points de données dans les résultats de la requête.
Vous ne pouvez pas créer cette requête avec des filtres.
Alerte de ratio sur l'utilisation du quota d'allocation pour une limite
Le modèle de requête MQL suivant décrit une alerte qui surveille lorsque l'utilisation quotidienne de l'allocation d'un service de ressources spécifique dépasse 80% d'une limite donnée:
fetch consumer_quota
| filter resource.service == 'sample.googleapis.com'
| { metric serviceruntime.googleapis.com/quota/allocation/usage
| align next_older(1d)
| group_by [resource.project_id, metric.quota_metric, resource.location],
max(val())
; metric serviceruntime.googleapis.com/quota/limit
| filter metric.limit_name == 'Limit'
| align next_older(1d)
| group_by [resource.project_id, metric.quota_metric, resource.location],
min(val())
}
| ratio
| every 1m
| condition gt(val(), 0.8 '1')
Pour utiliser ce modèle de requête, apportez les modifications suivantes:
- Remplacez
sample.googleapis.com
par le service que vous souhaitez surveiller. - Remplacez
Limit
pourmetric.limit_name
par la limite que vous souhaitez suivre. Pour savoir comment identifier les noms des limites, consultez la section Identifier les métriques de quota et les noms des limites.
Ne modifiez pas l'opération every 1m
, qui détermine l'écart entre les points de données dans les résultats de la requête.
Exemple: Utilisation du processeur de 75% dans une région
La requête suivante crée une règle d'alerte qui se déclenche lorsque l'utilisation du processeur de l'instance de VM Compute Engine dépasse 75% de la limite dans une région:
fetch consumer_quota
| filter resource.service == 'compute.googleapis.com'
| { metric serviceruntime.googleapis.com/quota/allocation/usage
| align next_older(1d)
| group_by [resource.project_id, metric.quota_metric, resource.location],
max(val())
; metric serviceruntime.googleapis.com/quota/limit
| filter metric.limit_name == 'CPUS-per-project-region'
| align next_older(1d)
| group_by [resource.project_id, metric.quota_metric, resource.location],
min(val())
}
| ratio
| every 1m
| condition gt(val(), 0.75 '1')
Cette règle de quota de client utilise le nom de la limite CPUS-per-project-region
dans le quota "Processeurs" de l'API Compute Engine. Pour en savoir plus sur la recherche des noms de limite, consultez la section Identifier les métriques de quota et les noms de limite.
Règle d'alerte qui surveille le ratio du quota d'allocation pour un service
MQL accepte le filtrage avec des caractères génériques, des expressions régulières et une logique booléenne. Par exemple, vous pouvez utiliser MQL pour créer une alerte qui suit plusieurs limites ou services et vous avertit si un seuil est dépassé.
La requête MQL suivante décrit une alerte qui surveille lorsque l'utilisation quotidienne de l'allocation d'un service de ressources dépasse 80% pour toute limite de quota:
fetch consumer_quota
| filter resource.service =~ '.*'
| { metric serviceruntime.googleapis.com/quota/allocation/usage
| align next_older(1d)
| group_by [resource.project_id, metric.quota_metric, resource.location],
max(val())
; metric serviceruntime.googleapis.com/quota/limit
| align next_older(1d)
| group_by [resource.project_id, metric.quota_metric, resource.location],
min(val())
}
| ratio
| every 1m
| condition gt(val(), 0.8 '1')
Vous pouvez utiliser cette requête comme présenté ou remplacer l'expression régulière de resource.service
par une expression régulière pour les services que vous souhaitez suivre. Vous pouvez également filtrer sur un service spécifique et utiliser des caractères génériques dans un filtre de limite.
Ne modifiez pas l'opération every 1m
, qui détermine l'écart entre les points de données dans les résultats de la requête.
Exemple: Utilisation du processeur supérieure à 50% dans des zones spécifiques
La requête suivante crée une règle d'alerte qui se déclenche lorsque l'utilisation du processeur des instances de VM Compute Engine dépasse 50% de la limite dans l'une des zones us-central1
. Cette requête filtre les données limit
par nom de limite et emplacement de ressource:
fetch consumer_quota
| filter resource.service == 'compute.googleapis.com'
| { metric serviceruntime.googleapis.com/quota/allocation/usage
| align next_older(1d)
| group_by [resource.project_id, metric.quota_metric, resource.location],
max(val())
; metric serviceruntime.googleapis.com/quota/limit
| filter metric.limit_name == 'CPUS-per-project-zone' &&
resource.location =~ 'us-central1-.*'
| align next_older(1d)
| group_by [resource.project_id, metric.quota_metric, resource.location],
min(val())
}
| ratio
| every 1m
| condition gt(val(), 0.50 '1')
Cette règle de quota de client utilise le nom de la limite CPUS-per-project-zone
dans le quota "Processeurs" de l'API Compute Engine. Pour en savoir plus sur la recherche des noms de limite, consultez la section Identifier les métriques de quota et les noms de limite.
Alerte de ratio utilisant un quota spécifique à la ressource
Vous pouvez utiliser MQL pour configurer des ratios pour les métriques liées aux quotas spécifiques aux ressources. Dans ce cas, vous spécifiez une ressource surveillée spécifique au service et calculez un ratio sur une paire de métriques spécifiques à la ressource liées aux quotas.
Le modèle de requête suivant décrit une alerte qui surveille lorsque l'utilisation d'un quota dépasse 80% de la limite:
fetch sample.googleapis.com/SampleResource
| { metric sample.googleapis.com/quota/samplemetric/usage
| align next_older(1d)
| group_by [resource.label_1, ... , resource.label_n,
metric.label_1, ... , metric.label_n],
max(val())
; metric sample.googleapis.com/quota/samplemetric/limit
| align next_older(1d)
| group_by [resource.label_1, ... , resource.label_n,
metric.label_1, ... , metric.label_n],
min(val())
}
| ratio
| every 1m
| condition gt(val(), 0.8 '1')
Pour utiliser ce modèle de requête, apportez les modifications suivantes:
- Remplacez
sample.googleapis.com
par le service que vous souhaitez surveiller. - Remplacez
sampleResource
par la ressource surveillée associée. - Remplacez
samplemetric
par la chaîne d'un groupe de types de métriques. - Dans les opérations
group_by
, répertoriez chacun des libellés de ressource et de métrique.
Exemple: Utilisation du processeur de 75% dans une région
Par exemple, la requête MQL suivante configure une alerte qui surveille si l'utilisation du quota instances_per_vpc_network
de Compute Engine dépasse 80% pour tout ID réseau:
fetch compute.googleapis.com/VpcNetwork
| { metric compute.googleapis.com/quota/instances_per_vpc_network/usage
| align next_older(1d)
| group_by [resource.resource_container, metric.limit_name,
resource.location, resource.network_id],
max(val())
; metric compute.googleapis.com/quota/instances_per_vpc_network/limit
| align next_older(1d)
| group_by [resource.resource_container, metric.limit_name,
resource.location, resource.network_id],
min(val())
}
| ratio
| every 1m
| condition gt(val(), 0.80 '1')
Notez que cette requête utilise le type de ressource compute.googleapis.com/VpcNetwork
, et non consumer_quota
, et elle prend le ratio de deux métriques compute.googleapis.com/quota/instances_per_vpc_network
, et usage
et limit
. (Installation de Python groupée).
Exemples de graphiques
Les graphiques affichent les données de séries temporelles. Vous pouvez utiliser l'explorateur de métriques pour créer un graphique. Avec l'explorateur de métriques, vous pouvez soit supprimer le graphique lorsque vous n'en avez plus besoin, soit l'enregistrer dans un tableau de bord. Dans la vue de tableau de bord, vous pouvez ajouter un graphique au tableau de bord.
Si vous souhaitez configurer uniquement un graphique qui affiche des données de quota, vous pouvez utiliser les paramètres du tableau Nouvelle condition. Les conditions d'alerte utilisent une notation différente de celle des outils de création de graphiques. Les outils de création de graphiques incluent l'explorateur de métriques et la configuration de graphiques dans les tableaux de bord personnalisés:Nom du champ de la boîte de dialogue Nouvelle condition |
Graphiques |
---|---|
Fenêtrage glissant | Configuration optimale en fonction des paramètres de métrique et d'agrégation sélectionnés. Pour spécifier la fonction d'alignement, procédez comme suit:
|
Fenêtre glissante | Intervalle minimal (pour y accéder, cliquez sur add Ajouter un élément de requête) |
Regrouper les séries temporelles par (dans la section Dans toutes les séries temporelles) |
Deuxième menu de l'élément Agrégation |
Agrégation de séries temporelles (dans la section Dans toutes les séries temporelles) |
Premier menu de l'élément Agrégation |
Série temporelle pour quota/rate/net_usage
Pour afficher les données de la série temporelle de la métrique serviceruntime
quota/rate/net_usage
dans laquelle les données sont regroupées par nom de métrique de quota et le taux d'utilisation est affiché, pour tous les services de votre projet Google Cloud, utilisez les paramètres suivants :
Champ de la boîte de dialogue Nouvelle condition |
Valeur |
---|---|
Ressource et métrique | Dans le menu Ressources, sélectionnez Quota du client. Dans le menu Catégories de métriques, sélectionnez Quota. Dans le menu Métriques, sélectionnez Utilisation du quota de débit. ( metric.type est serviceruntime.googleapis.com/quota/rate/net_usage ,et resource.type est consumer_quota ).
|
Filter |
Ajoutez un filtre pour que le graphique affiche uniquement les données du service que vous souhaitez surveiller. Par exemple, pour surveiller le service de gestion de l'authentification et des accès, ajoutez le filtre suivant : service = iam.googleapis.com. Lorsque le champ de filtre est vide, toutes les données de métriques disponibles sont incluses dans le graphique. |
Fenêtre glissante | Sélectionnez 1 m .La période d'une minute correspond à l'intervalle d'échantillonnage pour cette métrique. |
Fenêtrage glissant | Sélectionnez rate .
En définissant l'aligneur sur la valeur |
Dans toutes les séries temporelles Agrégation de séries temporelles |
Sélectionnez Le champ d'agrégation est automatiquement défini sur |
Dans toutes les séries temporelles Regrouper les séries temporelles par |
Sélectionnez Cette option regroupe les données en fonction du type de nom de l'élément |
Série temporelle pour quota/instances_per_vpc_network/limit
Pour afficher les données de séries temporelles de la métrique compute.googleapis.com
quota/instances_per_vpc_network/limit
, pour tous les réseaux de votre projet Google Cloud, utilisez les paramètres suivants:
Champ de la boîte de dialogue Nouvelle condition |
Valeur |
---|---|
Ressource et métrique | Dans le menu Resource type (Type de ressource), sélectionnez VPC Network (Réseau VPC). Dans le menu Catégorie de métrique, sélectionnez quota. Dans le menu Métrique, sélectionnez Limite de quota d'instances par réseau VPC. ( metric.type est compute.googleapis.com/quota/instances_per_vpc_network/limit ,et resource.type est compute.googleapis.com/VpcNetwork ).
|
Filter | Laisser ce champ vide. |
Fenêtre glissante | Sélectionnez 1 m .La période correspond à l'intervalle d'échantillonnage pour cette métrique. |
Fenêtrage glissant | Sélectionnez mean . |
Dans toutes les séries temporelles Agrégation de séries temporelles |
Laisser en tant que none
|
Dans toutes les séries temporelles Regrouper les séries temporelles par |
Laisser ce champ vide. |
Série temporelle pour quota/instances_per_vpc_network/usage
Pour afficher les données de séries temporelles de la métrique compute.googleapis.com
quota/instances_per_vpc_network/usage
, pour l'un des réseaux de votre projet Google Cloud, utilisez les paramètres suivants:
Champ de la boîte de dialogue Nouvelle condition |
Valeur |
---|---|
Ressource et métrique | Dans le menu Resource type (Type de ressource), sélectionnez VPC Network (Réseau VPC). Dans le menu Catégorie de métrique, sélectionnez quota. Dans le menu Métrique, sélectionnez Instances par utilisation du quota de réseau VPC. ( metric.type est compute.googleapis.com/quota/instances_per_vpc_network/usage ,et resource.type est compute.googleapis.com/VpcNetwork ).
|
Métrique | Dans le menu Métrique, sélectionnez compute.googleapis.com/quota/instances_per_vpc_network/usage . |
Filter |
Ajoutez un filtre afin que le graphique n'affiche qu'un sous-ensemble de toutes les données. Par exemple, pour afficher l'utilisation d'un réseau spécifique, ajoutez le filtre suivant : network_id = identifier. Lorsque le champ de filtre est vide, toutes les données de métriques disponibles sont incluses dans le graphique. |
Fenêtre glissante | Sélectionnez 1 m .La période correspond à l'intervalle d'échantillonnage pour cette métrique. |
Fenêtrage glissant | Sélectionnez mean . |
Dans toutes les séries temporelles Agrégation de séries temporelles |
Laisser en tant que none
|
Dans toutes les séries temporelles Regrouper les séries temporelles par |
Laisser ce champ vide. |
Graphiques MQL
Vous pouvez utiliser des requêtes MQL pour créer des graphiques à l'aide de l'éditeur de code MQL. Par exemple, vous pouvez y saisir l'une des requêtes affichées dans les exemples de règle d'alerte MQL. Vous pouvez omettre la dernière opération, condition
, dans chaque requête. elle s'applique, sauf lors de la création d'une condition pour une règle d'alerte. Dans un graphique, l'opération condition
n'a aucun effet.
Pour en savoir plus, consultez les pages Utiliser l'éditeur de code pour MQL et Exemples MQL.