Désactiver la collecte de métriques

Ce document explique comment désactiver l'API Cloud Monitoring pour un projet Google Cloud , et comment empêcher l'agent Ops et l'ancien agent Monitoring de collecter des métriques de processus. Vous pouvez désactiver l'API Cloud Monitoring, par exemple lorsque vous souhaitez empêcher l'ingestion de métriques facturables dans un projet Google Cloud.

Désactiver la collecte de toutes les métriques

Pour empêcher la collecte de toutes les métriques, désactivez l'API Cloud Monitoring:

Console

  1. Dans la console Google Cloud, sélectionnez le projet Google Cloud, puis accédez à la page API et services:

    Accéder aux API et services

  2. Sélectionnez API Cloud Monitoring.

  3. Cliquez sur Désactiver l'API.

gcloud

Exécutez la commande suivante pour désactiver l'API Cloud Monitoring dans votre projet actuel:

gcloud services disable monitoring.googleapis.com

Pour en savoir plus sur la désactivation d'une API à l'aide de Google Cloud CLI, consultez la page Activer et désactiver des services.

Désactiver la collecte de métriques de processus

Il existe plusieurs façons de désactiver la collecte de ces métriques par l'agent Ops (versions 2.0.0 et ultérieures) et par l'ancien agent Monitoring sous Linux.

Les agents ne s'exécutent que sur les VM Compute Engine et, pour l'agent Monitoring, sur les VM Amazon Elastic Compute Cloud (EC2). Ces procédures ne s'appliquent qu'à ces plates-formes.

Vous ne pouvez pas désactiver la collecte par l'agent Ops si vous exécutez des versions antérieures à la version 2.0.0 ou l'ancien agent Monitoring sous Windows. Si vous souhaitez désactiver la collecte de ces métriques sous Windows, nous vous recommandons de passer à la version 2.0.0 ou ultérieure de l'agent Ops. Pour en savoir plus, consultez la page Installer l'agent Ops.

La procédure générale se présente comme suit :

  1. Connectez-vous à la VM.

  2. Créez une copie du fichier de configuration existant en tant que sauvegarde. Stockez la copie de sauvegarde en dehors du répertoire de configuration de l'agent afin que celui-ci ne tente pas de charger les deux fichiers. Par exemple, la commande suivante crée une copie du fichier de configuration pour l'agent Monitoring sous Linux :

    cp /etc/stackdriver/collectd.conf BACKUP_DIR/collectd.conf.bak
    
  3. Modifiez la configuration à l'aide de l'une des options décrites dans les éléments suivants :

  4. Redémarrez l'agent pour récupérer la nouvelle configuration:

    • Agent Monitoring : sudo service stackdriver-agent restart
    • Agent Ops : sudo service google-cloud-ops-agent restart
  5. Vérifiez que les métriques de processus ne sont plus collectées pour cette VM:

    1. Sélectionnez l'Explorateur de métriques.

    2. Cliquez sur MQL.

    3. Pour une ressource gce_instance, saisissez la requête suivante, en remplaçant VM_NAME par le nom de cette VM:

      fetch gce_instance
      | metric 'agent.googleapis.com/processes/cpu_time'
      | filter (metadata.system_labels.name == 'VM_NAME')
      | align rate(1m)
      | every 1m
      

      Pour une ressource aws_ec2_instance, remplacez gce_instance dans la requête.

    4. Cliquez sur Exécuter la requête (Run Query).

Agent Ops sous Linux ou Windows

L'emplacement du fichier de configuration pour l'agent Ops dépend du système d'exploitation :

  • Pour Linux : /etc/google-cloud-ops-agent/config.yaml
  • Pour Windows : C:\Program Files\Google\Cloud Operations\Ops Agent\config\config.yaml

Pour désactiver la collecte de toutes les métriques de processus par l'agent Ops, ajoutez les éléments suivants à votre fichier config.yaml :

metrics:
  processors:
    metrics_filter:
      type: exclude_metrics
      metrics_pattern:
      - agent.googleapis.com/processes/*

Cela exclut les métriques de processus de la collecte dans le processeur metrics_filter qui s'applique au pipeline par défaut du service metrics.

Pour en savoir plus sur les options de configuration de l'agent Ops, consultez la section Configurer l'agent Ops.

Agent Monitoring sous Linux

Vous disposez des options suivantes pour désactiver la collecte de métriques de processus avec l'ancien agent Monitoring:

Les sections suivantes décrivent chaque option et répertorient les avantages et les risques qui lui sont associés.

Modifier le fichier de configuration de l'agent

Avec cette option, vous modifiez directement le fichier de configuration principal de l'agent, /etc/stackdriver/collectd.conf, pour supprimer les sections qui permettent de collecter les métriques de processus.

Procédure

Il existe trois groupes de suppressions que vous devez effectuer sur le fichier collectd.conf:

  1. Supprimez la directive LoadPlugin et la configuration du plug-in suivante:

    LoadPlugin processes
    
    <Plugin "processes">
      ProcessMatch "all" ".*"
      Detail "ps_cputime"
      Detail "ps_disk_octets"
      Detail "ps_rss"
      Detail "ps_vm"
    </Plugin>
    
  2. Supprimez la directive PostCacheChain suivante et la configuration de la chaîne PostCache:

    PostCacheChain "PostCache"
    
    <Chain "PostCache">
      <Rule "processes">
        <Match "regex">
          Plugin "^processes$"
          Type "^(ps_cputime|disk_octets|ps_rss|ps_vm)$"
        </Match>
        <Target "jump">
          Chain "MaybeThrottleProcesses"
        </Target>
        Target "stop"
      </Rule>
    
      <Rule "otherwise">
        <Match "throttle_metadata_keys">
          OKToThrottle false
          HighWaterMark 5700000000  # 950M * 6
          LowWaterMark 4800000000  # 800M * 6
        </Match>
        <Target "write">
           Plugin "write_gcm"
        </Target>
      </Rule>
    </Chain>
    
  3. Supprimez la chaîne MaybeThrottleProcesses utilisée par la chaîne PostCache:

    <Chain "MaybeThrottleProcesses">
      <Rule "default">
        <Match "throttle_metadata_keys">
          OKToThrottle true
          TrackedMetadata "processes:pid"
          TrackedMetadata "processes:command"
          TrackedMetadata "processes:command_line"
          TrackedMetadata "processes:owner"
        </Match>
        <Target "write">
           Plugin "write_gcm"
        </Target>
      </Rule>
    </Chain>
    
Avantages et risques
  • Avantages
    • Vous réduisez les ressources consommées par l'agent, car les métriques ne sont jamais collectées.
    • Si vous avez apporté d'autres modifications à votre fichier collectd.conf, vous pouvez facilement les conserver.
  • Risques
    • Vous devez utiliser le compte root pour modifier ce fichier de configuration.
    • Vous risquez d'introduire des erreurs typographiques dans le fichier.

Remplacer le fichier de configuration de l'agent

Cette option vous permet de remplacer le fichier de configuration principal de l'agent par une version prédéfinie avec les sections pertinentes supprimées pour vous.

Procédure
  1. Téléchargez le fichier prédéfini collectd-no-process-metrics.conf, du dépôt GitHub vers le répertoire /tmp, puis procédez comme suit:

    cd /tmp && curl -sSO https://raw.githubusercontent.com/Stackdriver/agent-packaging/master/collectd-no-process-metrics.conf
    
  2. Remplacez le fichier collectd.conf existant par le fichier prédéfini :

    cp /tmp/collectd-no-process-metrics.conf /etc/stackdriver/collectd.conf
    
Avantages et risques
  • Avantages
    • Vous réduisez les ressources consommées par l'agent, car les métriques ne sont jamais collectées.
    • Vous n'avez pas besoin de modifier manuellement le fichier en tant que root.
    • Les outils de gestion de la configuration peuvent facilement remplacer un fichier.
  • Risques
    • Si vous avez apporté d'autres modifications au fichier collectd.conf, vous devez les fusionner dans le fichier de remplacement.

Dépannage

Les procédures décrites dans ce document sont des modifications de la configuration de l'agent. Les problèmes suivants se produiront donc probablement :

  • Droits insuffisants pour modifier les fichiers de configuration. Les fichiers de configuration doivent être modifiés à partir du compte root.
  • Présentation des erreurs typographiques dans le fichier de configuration, si vous le modifiez directement

Pour en savoir plus sur la résolution d'autres problèmes, consultez la section Dépanner l'agent Monitoring.

Agent Monitoring sous Windows

Vous ne pouvez pas désactiver la collecte de métriques de processus par l'ancien agent Monitoring exécuté sur les VM Windows. Cet agent n'est pas configurable. Si vous souhaitez désactiver la collecte de ces métriques sous Windows, nous vous recommandons de passer à la version 2.0.0 ou ultérieure de l'agent Ops. Pour en savoir plus, consultez la page Installer l'agent Ops.

Si vous exécutez l'agent Ops, consultez la section Agent Ops sous Linux ou Windows.