Configurer des métriques de compteur

Ce document explique comment créer une métrique basée sur les journaux de type compteur en utilisant la console Google Cloud, l'API Logging et la Google Cloud CLI.

Les métriques de compteur comptent le nombre d'entrées de journal correspondant à un filtre donné. Par exemple, vous pouvez créer un qui compte le nombre d'entrées de journal contenant une valeur s'affiche. Les métriques basées sur les journaux peuvent s'appliquer à un seul projet Google Cloud ou dans un bucket de journaux.

Pour en savoir plus sur les métriques basées sur les journaux, consultez Présentation des métriques basées sur les journaux

Avant de commencer

  1. Pour utiliser les métriques basées sur les journaux, vous devez disposer d'un projet Google Cloud avec facturation activée:

    1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
    2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

      Go to project selector

    3. Make sure that billing is enabled for your Google Cloud project.

    4. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

      Go to project selector

    5. Make sure that billing is enabled for your Google Cloud project.

  2. Assurez-vous que votre rôle Identity and Access Management inclut les autorisations requises pour créer et afficher des métriques basées sur les journaux, et créer des règles d'alerte. Pour en savoir plus, consultez la section Autorisations pour les métriques basées sur les journaux.

Créer une métrique basée sur les journaux de type compteur

La métrique compte les entrées de journal identifiées par un filtre que vous fournissez. Vous pouvez utiliser des expressions régulières ; dans votre filtre. Nous vous recommandons d'inclure un type de ressource. La longueur d'un filtre ne peut pas dépasser 20 000 caractères.

N'incluez pas d'informations sensibles dans le filtre. Les filtres sont traités comme des données de service.

Console

Procédez comme suit pour créer une métrique de compteur dans le Console Google Cloud dans votre projet Google Cloud:

  1. Dans la console Google Cloud, accédez à la page Métriques basées sur les journaux.

    Accéder à la page Métriques basées sur les journaux

    Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.

  2. Cliquez sur Créer une métrique. Le panneau Créer une métrique de journaux s'affiche.

  3. Définissez le Type de métrique : sélectionnez Compteur.

  4. Définissez les champs suivants dans la section Détails :

    • Nom de la métrique de journal: choisissez un nom unique parmi les basées sur les journaux dans votre projet Google Cloud. Certaines restrictions en termes de dénomination s'appliquent, consultez la section Dépannage pour plus de détails.
    • Description : saisissez une description de la métrique.
    • Unités : laissez ce champ vide ou insérez le chiffre 1.
  5. Définissez le filtre de votre métrique dans la section Sélection du filtre.

    1. Utilisez le menu Sélectionner un projet ou un bucket de journaux pour choisir si la métrique compte les entrées de journal de votre projet Google Cloud ou uniquement celles d'un bucket de journaux spécifique.

    2. Créez un filtre qui ne collecte que les entrées de journal que vous souhaitez comptabiliser dans votre métrique à l'aide du langage de requête de journalisation. Vous pouvez également utiliser des expressions régulières pour créer les filtres de votre métrique.

    3. Pour voir les entrées de journal correspondant à votre filtre, cliquez sur Prévisualiser les journaux.

  6. (Facultatif) Ajoutez un libellé dans la section Libellés. Pour obtenir des instructions sur la création de libellés, consultez la page Créer un libellé.

  7. Cliquez sur Créer une métrique pour créer la métrique.

gcloud

Vous pouvez créer une métrique basée sur les journaux sans étiquette personnalisée à l'aide de la classe la commande suivante:

gcloud logging metrics create METRIC_NAME \
  --description="METRIC_DESCRIPTION" \
  --log-filter="FILTER" \
  [--bucket-name="BUCKET_NAME"]

Par exemple, la commande suivante crée une métrique basée sur les journaux à l'échelle du projet appelé error_count.

gcloud logging metrics create error_count \
     --description "Errors in syslog." \
     --log-filter "resource.type=gce_instance AND log_id(\"syslog\") AND severity>=ERROR"

Pour créer une métrique basée sur les journaux à l'échelle du bucket, indiquez plutôt le L'indicateur --bucket_name:

gcloud logging metrics create error_count \
    --description "Errors in syslog." \
    --log-filter "resource.type=gce_instance AND log_id(\"syslog\") AND severity>=ERROR" \
    --bucket-name projects/my-project/locations/global/buckets/my-test-bucket

Pour obtenir des instructions créer des libellés, consultez la section Créer un libellé.

API

Pour créer une métrique de compteur, utilisez la méthode projects.metrics.create de l'API Logging. Vous pouvez tester la méthode dans l'explorateur d'API. Préparez les arguments de la méthode comme suit :

  1. Définissez le champ parent sur le projet ou le bucket dans lequel la métrique est à créer:

    • Pour une métrique basée sur les journaux à l'échelle du projet, spécifiez le projet:
    projects/PROJECT_ID
    
    • Pour une métrique basée sur les journaux à l'échelle du bucket, spécifiez le bucket:
    projects/PROJECT_ID/locations/LOCATION/bucket/BUCKET_ID
    
  2. Définissez le corps de la requête sur un objet LogMetric. Voici un exemple d'objet pour une métrique de compteur :

    {
      name:        "my-metric"
      description: "This is my metric."
      filter:      "resource.type=gce_instance AND log_id(\"syslog\")",
      metricDescriptor: {
          labels: [
            {
              key: "my-label",
              valueType: STRING,
              description: "This is my label.",
            }
          ]
      },
      labelExtractors: {
        "my-label":
          "REGEXP_EXTRACT(jsonPayload.someField, \"before ([0-9]+) after\")",
        ...
      },
    }
    

Remarques :

  • Choisissez un nom de métrique unique parmi les métriques basées sur les journaux dans votre projet. Certaines restrictions en termes de dénomination s'appliquent, consultez la section Dépannage pour plus de détails.

  • Pour les métriques de compteur, les champs LogMetric valueExtractor et bucketOptions n'ont aucune utilité et sont donc omis.

  • Si votre métrique ne comporte aucun libellé, vous pouvez omettre les champs metricDescriptor et labelExtractors. Si votre métrique comporte des étiquettes, Consultez la section Libellés de métriques basées sur les journaux pour obtenir plus d'informations sur les libellés. et des détails sur leur création dans l'API.

Pour plus de détails, reportez-vous au type LogMetric.

Latence des nouvelles métriques

Votre nouvelle métrique apparaît dans la liste des métriques de l'explorateur de journaux et dans les menus Monitoring appropriés. Les données sont généralement disponibles en moins d'une minute.

Inspecter les métriques basées sur les journaux

Pour répertorier les métriques basées sur les journaux définies par l'utilisateur dans votre projet Google Cloud ou pour pour inspecter une métrique spécifique dans votre projet Google Cloud, procédez comme suit:

Console

  1. Dans la console Google Cloud, accédez à la page Métriques basées sur les journaux.

    Accéder à la page Métriques basées sur les journaux

    Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.

  2. Le volet Métriques définies par l'utilisateur contient les métriques basées sur les journaux dans le projet Google Cloud actuel:

  3. Pour afficher les données d'une métrique basée sur les journaux, cliquez sur le menu sur la ligne de la métrique, puis sélectionnez Afficher dans l'explorateur de métriques.

gcloud

Pour répertorier les métriques basées sur les journaux définies par l'utilisateur dans votre projet Google Cloud, procédez comme suit : exécutez la commande suivante:

gcloud logging metrics list

Pour afficher une métrique basée sur les journaux définie par l'utilisateur dans votre projet Google Cloud, utilisez la commande suivante :

gcloud logging metrics describe METRIC_NAME

Pour obtenir de l'aide, utilisez la commande suivante:

gcloud logging metrics --help

Vous ne pouvez pas lire les données des séries temporelles d'une métrique à partir de la Google Cloud CLI.

API

Répertorier les statistiques

Pour répertorier les métriques basées sur les journaux définies par l'utilisateur dans un projet Google Cloud, utilisez la méthode API projects.metrics.list. Spécifiez les paramètres associés à la méthode comme suit :

  • parent: nom de ressource du projet Google Cloud: projects/PROJECT_ID
  • pageSize : nombre maximal de résultats.
  • pageToken : obtient la page suivante des résultats. Pour en savoir plus sur l'utilisation des jetons de page, consultez la page projects.metrics.list.

Récupérer les définitions de métrique

Pour récupérer une seule métrique basée sur les journaux définie par l'utilisateur, utilisez le projects.metrics.get. Spécifiez les paramètres associés à la méthode comme suit :

  • metricName : nom de la ressource de la métrique au format

    projects/PROJECT_ID/metrics/METRIC_ID
    

Lire les données de métrique

Pour lire les données de séries temporelles d'une métrique basée sur les journaux, utilisez la méthode projects.timeseries.list API Cloud Monitoring. Pour plus d'informations sur les données de séries temporelles, consultez la page Lire les séries temporelles.

Pour lire une seule métrique basée sur les journaux définie par l'utilisateur, renseignez le champ avec ce type de métrique et cet identifiant:

logging.googleapis.com/user/METRIC_ID

Mettre à jour les métriques basées sur les journaux

Vous pouvez modifier une métrique basée sur les journaux définie par l'utilisateur pour changer sa description, son filtre et les noms des champs référencés dans la métrique. Vous pouvez ajouter de nouveaux libellés à la métrique, et modifier les expressions régulières utilisées pour extraire des valeurs associées à la métrique et à ses libellés. Si vous utilisez une métrique à l'échelle du bucket, vous pouvez aussi mettre à jour le bucket de la métrique.

Vous ne pouvez pas modifier le nom ni le type des métriques basées sur les journaux définies par l'utilisateur. et vous ne pouvez pas supprimer de libellés existants dans une métrique basée sur les journaux.

Pour modifier une métrique basée sur les journaux, procédez comme suit :

Console

  1. Dans la console Google Cloud, accédez à la page Métriques basées sur les journaux.

    Accéder à la page Métriques basées sur les journaux

    Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.

  2. Cliquez sur Modifier la métrique dans la Menu correspondant à la métrique basée sur les journaux que vous voulez modifier.

  3. Ne modifiez que les éléments autorisés dans la métrique.

  4. Cliquez sur Mettre à jour la métrique.

gcloud

Utiliser la Google Cloud CLI pour modifier la description, le filtre d'une métrique de compteur une requête et un bucket. Vous pouvez mettre à jour un ou tous les champs en même temps.

gcloud logging update METRIC_NAME \
  --description="METRIC_DESCRIPTION" \
  --log-filter="FILTER" \
  --bucket-name=BUCKET_NAME

Si vous modifiez le bucket associé à une métrique à l'échelle du bucket, les données de métriques collectées avant la modification ne reflètent plus configuration actuelle. Les données de métriques collectées pour le bucket précédent n'est pas supprimée.

Pour mettre à jour les métriques de distribution ou d'autres champs de métrique de compteur, à l'exception de METRIC_NAME, créez un fichier contenant la spécification révisée de votre LogMetric au format JSON ou YAML. Mettez ensuite à jour la métrique en appelant la commande update avec le champ --config-from-file, en remplaçant FILENAME par le nom de votre fichier JSON ou YAML :

gcloud logging update METRIC_NAME --config-from-file FILENAME

Pour plus de détails, exécutez la commande suivante :

gcloud logging metrics update --help

API

Pour modifier une métrique basée sur les journaux, utilisez la méthode projects.metrics.update dans l'API. Définissez les champs comme suit:

  • metricName : nom complet de la ressource au format

    projects/PROJECT_ID/metrics/METRIC_ID
    

    Exemple :

    projects/my-gcp-project/metrics/my-error-metric
    
  • Dans le corps de la requête, incluez un objet LogMetric identique à la métrique existante, à l'exception des modifications et des ajouts que vous souhaitez effectuer.

Supprimer des métriques basées sur les journaux

Pour supprimer une métrique basée sur les journaux définie par l'utilisateur, procédez comme suit:

Console

  1. Dans la console Google Cloud, accédez à la page Métriques basées sur les journaux.

    Accéder à la page Métriques basées sur les journaux

    Si vous utilisez la barre de recherche pour trouver cette page, sélectionnez le résultat dont le sous-titre est Logging.

  2. Sélectionnez la métrique que vous souhaitez supprimer et cliquez sur Supprimer.

    Vous pouvez également cliquer sur Supprimer la métrique dans le menu de la métrique basée sur les journaux que vous souhaitez supprimer.

gcloud

Utilisez la commande suivante pour supprimer une métrique basée sur les journaux définie par l'utilisateur dans le projet Google Cloud actuel:

gcloud logging metrics delete METRIC_NAME

Pour plus de détails, exécutez la commande suivante :

gcloud logging metrics delete --help

API

Pour supprimer une métrique basée sur les journaux définie par l'utilisateur, utilisez la méthode projects.metrics.delete dans l'API.

De plus, sur la page Métrique basée sur les journaux de la console Google Cloud, Le volet Métriques définies par l'utilisateur de l'interface des métriques basées sur les journaux fournit plus de fonctionnalités pour vous aider à gérer les métriques définies par l'utilisateur projet Google Cloud. Pour en savoir plus, consultez le volet de métriques définies par l'utilisateur.