Cette page aborde plus en détail la discussion et les exemples présentés dans les pages Métriques, séries temporelles et ressources et Composants du modèle de métrique. Pour tirer le meilleur parti de cette page, commencez par lire ces pages.
Cette page est destinée aux lecteurs qui souhaitent mieux comprendre les séries temporelles et la mise en œuvre du modèle de métrique Cloud Monitoring, en particulier ceux qui utilisent l'API Monitoring. Cela inclut les utilisateurs de métriques personnalisées (définies par l'utilisateur).Cette page mappe le modèle de métrique général à l'API Cloud Monitoring. Elle est donc utile pour toute personne utilisant directement l'API Monitoring. Utilisateurs dont interaction principale avec la console Google Cloud n'en a probablement pas besoin plus de détails.
Il est également utile à toute personne utilisant une intégration tierce telle que OpenTelemetry. Lorsque les données d'une source externe atteignent Cloud Monitoring via une intégration, elles sont mappées au modèle de métrique Cloud Monitoring et traitées comme toute autre donnée de métrique.
Pour en savoir plus sur la collecte de vos propres métriques, consultez la section Présentation des métriques définies par l'utilisateur.
Examen du modèle de métrique
Pour comprendre la structure des séries temporelles, vous devez connaître le modèle de métrique utilisé par Cloud Monitoring. Ce modèle est décrit sur la page Métriques, séries temporelles et ressources. Cette section propose un bref récapitulatif.
De manière générale, les données de surveillance sont enregistrées dans des séries temporelles. Chaque série temporelle inclut trois informations pertinentes pour cette discussion :
- Un ensemble de points de données horodatés
- Une référence au type de métrique qui vous indique comment interpréter les points de données
Une référence à la ressource surveillée d'où proviennent les données
Chaque série temporelle contient les mesures d'une seule source physique ou logique. Si votre environnement dispose de centaines de ressources, chacune contribue à au moins une série temporelle. En fait, si votre type de métrique et votre type de ressource surveillée comportent des libellés, vous obtenez une série temporelle par combinaison de valeurs de libellé. Pour en savoir plus, consultez la section Cardinalité.
Exemple de série temporelle
Une série temporelle est représentée par l'instance
objet TimeSeries
.
Voici une instance complète d'une seule série temporelle :
{ "metric": { "labels": { "log": "kubelet", "severity": "DEFAULT" }, "type": "logging.googleapis.com/log_entry_count" }, "resource": { "type": "gce_instance", "labels": { "instance_id": "5106847938295940291", "zone": "us-central1-a", "project_id": "a-gcp-project" } }, "metricKind": "DELTA", "valueType": "INT64", "points": [ { "interval": { "startTime": "2019-12-20T20:25:38Z", "endTime": "2019-12-20T20:26:38Z" }, "value": { "int64Value": "20" } } ] }
La plupart des séries temporelles incluent beaucoup plus de points de données. Celle-ci couvre un intervalle d'une minute. Toutes les séries temporelles ont la même structure, avec les champs suivants :
Le champ
metric
enregistre les informations suivantes :- Les valeurs de libellé de métrique pour cette série temporelle particulière, représentant une combinaison de valeurs de libellé.
- Le type de métrique auquel les données sont associées. Le type de métrique spécifie les libellés disponibles et décrit ce que les points de données représentent.
Les informations contenues dans ce champ sont décrites plus en détail dans la section Métriques :
Le champ
resource
enregistre les informations suivantes :- Les valeurs de libellé de ressource pour cette série temporelle particulière, représentant une combinaison de valeurs de libellé.
- la ressource surveillée spécifique à partir de laquelle les données ont été collectées.
Les informations contenues dans ce champ sont décrites plus en détail dans la section Objets de ressources surveillées
Les champs
metricKind
etvalueType
vous indiquent comment interpréter les valeurs. Pour en savoir plus, consultez la section Types de valeurs et genres de métriques.Le champ
points
est un tableau de valeurs horodatées. Le type de métrique vous indique ce que les valeurs représentent. L'exemple de série temporelle comporte un tableau avec un seul point de données. Dans la plupart des séries temporelles, le tableau comporte beaucoup plus de valeurs.
Pour obtenir un exemple réel permettant de récupérer des données de séries temporelles, consultez la section Séries temporelles : données d'une ressource surveillée.
Le reste de la page examine plus en détail les informations des champs metric
et resource
.
Ressources surveillées
Cloud Monitoring collecte les données des ressources surveillées et les enregistre dans des séries temporelles. Chaque série temporelle créée inclut une description de la ressource surveillée à partir de laquelle les données ont été collectées.
Objets de ressources surveillées
Une ressource surveillée est représentée par une instance d'un objet MonitoredResource
. La ressource surveillée décrit
la source des valeurs d'une série temporelle.
L'objet MonitoredResource
est intégré à la série temporelle et identifie une instance spécifique d'un type de ressource surveillée connu de Monitoring : il pointe vers une entité physique ou logique.
Par exemple, voici un objet de ressource surveillée décrivant une instance Compute Engine particulière, extrait de l'exemple de série temporelle :
"resource": { "type": "gce_instance", "labels": { "instance_id": "5106847938295940291", "zone": "us-central1-a", "project_id": "a-gcp-project" } }
Cette instance d'une ressource surveillée est de type gce_instance
et elle possède une valeur instance_id
spécifique (5106847938295940291) dans le projet a-gcp-project
.
L'instance est située aux États-Unis. Une autre série temporelle peut provenir d'une autre instance de cette ressource surveillée. Chaque combinaison de valeurs de libellé identifie une ressource unique à partir de laquelle les données sont collectées.
Il est pertinent d'avoir différents ensembles de libellés pour différentes ressources. L'ensemble de libellés d'une ressource est déterminé par le descripteur de ressource surveillée pour ce type.
Descripteurs de ressources surveillées
Les informations relatives à un type de ressource surveillée sont conservées dans une structure de données
appelé descripteur de ressource surveillée. Pour connaître la définition de cette structure de données, consultez MonitoredResourceDescriptor
.
Un descripteur de ressource surveillée est semblable à un schéma ou à une spécification pour une structure d'enregistrement. Il ne contient pas de données sur une instance particulière de la ressource surveillée. Il vous explique comment décrire une ressource surveillée d'un type spécifique. Par exemple, voici le descripteur de ressource surveillée pour la ressource gce_instance
:
{ "type": "gce_instance", "displayName": "VM Instance", "description": "A virtual machine instance hosted in Compute Engine.", "name": "projects/[PROJECT_ID]/monitoredResourceDescriptors/gce_instance" "labels": [ { "key": "project_id", "description": "The identifier of the GCP project associated with this resource, such as \"my-project\"." }, { "key": "instance_id", "description": "The numeric VM instance identifier assigned by Compute Engine." }, { "key": "zone", "description": "The Compute Engine zone in which the VM is running." } ], }
Comparez ce descripteur de ressource surveillée à l'instance spécifique d'une ressource gce_instance
indiquée dans la section Objets de ressources surveillées.
Ce descripteur ne décrit pas une ressource surveillée particulière. À la place, le descripteur spécifie les libellés, et chaque combinaison de valeurs de libellé identifie une ressource surveillée particulière.
Vous pouvez récupérer les descripteurs de ressources surveillées dans votre projet Google Cloud à l'aide de l'API Cloud Monitoring. Consultez, par exemple, les pages de référence des méthodes monitoredResourceDescriptors.list
et monitoredResourceDescriptors.get
.
Exemple en ligne:Si vous disposez d'un projet Google Cloud, vous pouvez le récupérer à l'aide du widget APIs Explorer, comme suit:
Ouvrez le
monitoredResourceDescriptors.list
la page de référence.Dans le volet intitulé Try this method (Essayer cette méthode), saisissez la commande suivante:
name :
projects/PROJECT_ID/monitoredResourceDescriptors/gce_instance
Remplacez
PROJECT_ID
par l'ID de votre projet Google Cloud.
Cliquez sur Exécuter.
La requête renvoie le descripteur précédent.
Pour obtenir des exemples d'utilisation des méthodes de l'API Monitoring, consultez Répertorier les types de métriques et de ressources
Métriques
Chaque série temporelle créée par Cloud Monitoring enregistre un ensemble de points de données ainsi que des informations sur leur organisation et leur signification.
Objets de métriques
Chaque série temporelle inclut une référence à la description des données enregistrées dans un objet de métrique.
L'objet "metric" inclus dans une série temporelle spécifie le type de mesures
et des informations spécifiques aux métriques.
Pour une définition de la métrique
structure de données d'objet, consultez Metric
.
Par exemple, voici l'objet métrique
extraites de la série temporelle
Exemple de série temporelle:
{ "metric": { "labels": { "log": "kubelet", "severity": "DEFAULT" }, "type": "logging.googleapis.com/log_entry_count" }
Cet objet vous indique que la série temporelle contient
logging.googleapis.com/log_entry_count
mesures. Les valeurs de libellé vous indiquent que cette série temporelle spécifique ne comptabilise que les entrées de journal de gravité DEFAULT
dans le fichier journal nommé kubelet
.
Il existe une série temporelle pour chaque combinaison de valeurs de libellé. Par conséquent, les entrées INFO
d'un même fichier journal apparaissent dans une série temporelle différente.
L'ensemble de libellés collectés dans un objet de métrique est spécifié dans le descripteur de ce type de métrique.
Descripteurs de métriques
Les informations relatives à un type de métrique sont conservées dans une structure de données appelée
Un descripteur de métrique. Pour obtenir une définition
structure de données, consultez MetricDescriptor
.
Un descripteur de métrique est un schéma ou une spécification pour une structure d'enregistrement. Il ne contient pas de données sur une métrique spécifique. Il vous explique comment interpréter les données associées à un type de métrique spécifique.
Voici un exemple de descripteur de métrique :
{ "type": "logging.googleapis.com/log_entry_count", "name": "projects/a-gcp-project/metricDescriptors/logging.googleapis.com/log_entry_count", "labels": [ { "key": "log", "description": "Name of the log." }, { "key": "severity", "description": "Severity of the log entry." } ], "metricKind": "DELTA", "valueType": "INT64", "unit": "1", "description": "Number of log entries that contributed to user-defined metrics.", "displayName": "Log entries", "metadata": { "launchStage": "GA", "samplePeriod": "60s" }, "launchStage": "GA" }
Comparez ce descripteur de métrique à l'objet de métrique indiqué dans la section Objets de métriques. Le descripteur vous indique la signification des valeurs de libellé et explique comment interpréter les valeurs des points de données.
Vous pouvez récupérer des descripteurs de métriques à l'aide de l'API Cloud Monitoring. Consultez, par exemple, les pages de référence des méthodes metricDescriptors.list
et metricDescriptors.get
.
Exemple en ligne:Si vous disposez d'un projet Google Cloud, vous pouvez le récupérer à l'aide du widget APIs Explorer, comme suit:
Ouvrez la page de référence sur
metricDescriptors.list
.Dans le volet Essayer cette méthode, saisissez ce qui suit :
- name (nom) :
projects/PROJECT_ID/metricDescriptors/logging.googleapis.com/log_entry_count
RemplacezPROJECT_ID
par l'ID de votre projet Google Cloud.
- name (nom) :
Cliquez sur Exécuter.
La requête renvoie le descripteur précédent.
Pour obtenir des exemples d'utilisation des méthodes de l'API Monitoring, consultez la page Répertorier les types de métriques et de ressources.
La plupart des champs du descripteur de métrique sont explicites. Deux champs peuvent demander plus d'explications. Il s'agit du genre de métrique et du type de valeur, qui sont décrits plus en détail sur la page Types de valeurs et genres de métriques.
Cloud Monitoring dispose d'environ 6 500 types de métriques intégrées. Pour en savoir plus, consultez la liste des métriques. Vous pouvez également créer votre propre métrique pour capturer des métriques personnalisées. Pour en savoir plus, consultez Présentation des métriques définies par l'utilisateur