Monitorizar procesos en VMs

De forma predeterminada, el agente de operaciones y el agente de Monitoring antiguo están configurados para recoger métricas que registran información sobre los procesos que se ejecutan en tus máquinas virtuales (VMs) de Compute Engine. También puede recoger estas métricas en las VMs de Amazon Elastic Compute Cloud (EC2) mediante el agente de Monitoring. Este conjunto de métricas, denominado métricas de proceso, se identifica por el prefijo agent.googleapis.com/processes. Estas métricas no se recogen en Google Kubernetes Engine (GKE).

A partir del 6 de agosto del 2021, se empezarán a cobrar estas métricas, tal como se describe en la sección de métricas facturables de la página de precios de Observabilidad de Google Cloud. El conjunto de métricas de proceso se clasifica como facturable, pero nunca se han aplicado cargos.

En este documento se describen las herramientas para visualizar las métricas de procesos, cómo determinar la cantidad de datos que ingieres de estas métricas y cómo minimizar los cargos relacionados.

Trabajar con métricas de procesos

Puede visualizar los datos de métricas de procesos con gráficos creados mediante el explorador de métricas o paneles de control personalizados. Para obtener más información, consulta el artículo sobre cómo usar los paneles de control y los gráficos. Además, Cloud Monitoring incluye datos de métricas de procesos en dos paneles predefinidos:

  • Panel de control Instancias de VM en Monitoring
  • Panel de control Detalles de la instancia de VM en Compute Engine

En las siguientes secciones se describen estos paneles de control.

Monitorización: ver métricas de procesos agregadas

Para ver las métricas de procesos agregadas en un ámbito de métricas, ve a la pestaña Procesos del panel de control Instancias de VM:

  1. En la Google Cloud consola, ve a la página  Paneles de control:

    Ve a Paneles.

    Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuya sección sea Monitorización.

  2. Selecciona el panel de control Instancias de VM en la lista.

  3. Haz clic en Procesos.

En la siguiente captura de pantalla se muestra un ejemplo de la página Monitorización Procesos:

La página **Procesos** de Monitoring muestra métricas de procesos agregadas.

Puede usar los gráficos de la pestaña Procesos para identificar los procesos de su ámbito de métricas que consumen más CPU y memoria, y que tienen el mayor uso de disco.

Compute Engine: ver métricas de rendimiento de las VMs que consumen más recursos

Para ver los gráficos de rendimiento que muestran las cinco VMs que consumen la mayor parte de un recurso de tu Google Cloud proyecto, ve a la pestaña Observabilidad de tus instancias de VM:

  1. En la Google Cloud consola, ve a la página Instancias de VM:

    Ve a Instancias de VM.

    Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo sea Compute Engine.

  2. Haz clic en Observabilidad.

En la siguiente captura de pantalla se muestra un ejemplo de la página Observabilidad de Compute Engine.

La página **Observabilidad** de Compute Engine muestra las cinco VMs que más consumen un recurso determinado.

Para obtener información sobre cómo usar estas métricas para diagnosticar problemas con tus máquinas virtuales, consulta el artículo Solucionar problemas de rendimiento de máquinas virtuales.

Compute Engine: ver métricas de procesos por VM

Para ver una lista de los procesos que se están ejecutando en una sola máquina virtual de Compute Engine y gráficos de los procesos con el mayor consumo de recursos, ve a la pestaña Observabilidad de la máquina virtual:

  1. En la Google Cloud consola, ve a la página Instancias de VM:

    Ve a Instancias de VM.

    Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo sea Compute Engine.

  2. En la pestaña Instancias, haz clic en el nombre de una VM para inspeccionarla.

  3. Haz clic en Observabilidad para ver las métricas de esta VM.

  4. En el panel de navegación de la pestaña Observabilidad, selecciona Procesos.

En la siguiente captura de pantalla se muestra un ejemplo de la página Procesos de Compute Engine:

La página **Procesos** de Compute Engine muestra métricas de procesos por máquina virtual.

Las métricas de proceso se conservan durante un máximo de 24 horas, por lo que puedes usarlas para consultar datos anteriores y atribuir anomalías en el consumo de recursos a procesos específicos o identificar los procesos que consumen más recursos. Por ejemplo, el siguiente gráfico muestra los procesos que consumen los porcentajes más altos de recursos de CPU. Puedes usar el selector de periodo para cambiar el periodo del gráfico. El selector de periodo ofrece valores predefinidos, como la última hora, y también te permite introducir un periodo personalizado.

Puedes usar métricas de procesos para identificar los procesos que consumen la mayor parte de un recurso.

La tabla Procesos en ejecución muestra una lista del consumo de recursos análoga a la salida del comando top de Linux. De forma predeterminada, la tabla muestra una instantánea de los datos más recientes. Sin embargo, si seleccionas un periodo en un gráfico que termina en el pasado, la tabla muestra los procesos que se estaban ejecutando al final de ese periodo.

Para obtener información sobre cómo usar estas métricas para diagnosticar problemas con tus máquinas virtuales, consulta el artículo Solucionar problemas de rendimiento de máquinas virtuales.

Métricas de procesos recogidas por el agente

Los agentes de Linux recogen todas las métricas que se indican en la siguiente tabla de los procesos que se ejecutan en las VMs de Compute Engine y, mediante el agente de Monitoring, en las VMs de Amazon Elastic Compute Cloud (EC2). Puedes inhabilitar su recogida mediante el agente de operaciones (versiones 2.0.0 y posteriores) y el agente de Monitoring antiguo.

También puedes inhabilitar la recogida de métricas de procesos para el agente de operaciones (versión 2.0.0 y posteriores) que se ejecute en máquinas virtuales Windows.

Para obtener más información, consulta Inhabilitar métricas de procesos.

Si quieres inhabilitar la recogida de estas métricas en Windows, te recomendamos que actualices a la versión 2.0.0 o a una posterior del agente de operaciones. Para obtener más información, consulta Instalar el agente de Ops.

Tabla de métricas de procesos

Las cadenas "tipo de métrica" de esta tabla deben tener el prefijo agent.googleapis.com/processes/. Ese prefijo se ha omitido en las entradas de la tabla. Cuando consultes una etiqueta, usa el prefijo metric.labels.. Por ejemplo, metric.labels.LABEL="VALUE".

Tipo de métrica Fase de lanzamiento(Niveles de jerarquía de recursos)
Nombre visible
Tipo, unidad
Recursos monitorizados
Descripción
Etiquetas
count_by_state GA(proyecto)
Procesos
GAUGEDOUBLE1
aws_ec2_instance
baremetalsolution.googleapis.com/Instance
gce_instance
Número de procesos en el estado indicado. Solo en Linux. Se muestrea cada 60 segundos.
state: Correr, dormir, zombi, etc.
cpu_time GA(project)
Proceso de CPU
CUMULATIVEINT64us{CPU}
aws_ec2_instance
baremetalsolution.googleapis.com/Instance
gce_instance
Tiempo de CPU del proceso. Se muestrea cada 60 segundos.
process: Nombre del proceso.
user_or_syst: Indica si se trata de un usuario o de un proceso del sistema.
command: Procesa el comando.
command_line: Procesa la línea de comandos, con un máximo de 1024 caracteres.
owner: Propietario del proceso.
pid: ID de proceso.
disk/read_bytes_count GA(project)
Procesar E/S de lectura de disco
CUMULATIVEINT64By
aws_ec2_instance
baremetalsolution.googleapis.com/Instance
gce_instance
Procesa la E/S de lectura de disco. Solo en Linux. Se muestrea cada 60 segundos.
process: Nombre del proceso.
command: Procesa el comando.
command_line: Procesa la línea de comandos, con un máximo de 1024 caracteres.
owner: Propietario del proceso.
pid: ID de proceso.
disk/write_bytes_count GA(project)
Procesar E/S de escritura en disco
CUMULATIVEINT64By
aws_ec2_instance
baremetalsolution.googleapis.com/Instance
gce_instance
Procesa la E/S de escritura en disco. Solo en Linux. Se muestrea cada 60 segundos.
process: Nombre del proceso.
command: Procesa el comando.
command_line: Procesa la línea de comandos, con un máximo de 1024 caracteres.
owner: Propietario del proceso.
pid: ID de proceso.
fork_count GA(proyecto)
Número de bifurcaciones
CUMULATIVEINT641
aws_ec2_instance
baremetalsolution.googleapis.com/Instance
gce_instance
Número total de procesos bifurcados. Solo en Linux. Se muestrea cada 60 segundos.
rss_usage GA(proyecto)
Memoria residente del proceso
GAUGEDOUBLEBy
aws_ec2_instance
baremetalsolution.googleapis.com/Instance
gce_instance
Uso de memoria residente del proceso en cuestión. Solo en Linux. Se muestrea cada 60 segundos.
process: Nombre del proceso.
command: Procesa el comando.
command_line: Procesa la línea de comandos, con un máximo de 1024 caracteres.
owner: Propietario del proceso.
pid: ID de proceso.
vm_usage GA(proyecto)
Procesar memoria virtual
GAUGEDOUBLEBy
aws_ec2_instance
baremetalsolution.googleapis.com/Instance
gce_instance
Uso de la VM del proceso indicado. Se muestrea cada 60 segundos.
process: Nombre del proceso.
command: Procesa el comando.
command_line: Procesa la línea de comandos, con un máximo de 1024 caracteres.
owner: Propietario del proceso.
pid: ID de proceso.

Tabla generada el 2025-09-05 a las 02:07:49 UTC.

Determinar la ingestión actual

Puede usar el explorador de métricas para ver la cantidad de datos que está ingiriendo para las métricas de procesos. Sigue este procedimiento:

  1. En la Google Cloud consola, ve a la página  Explorador de métricas:

    Ve al explorador de métricas.

    Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuya sección sea Monitorización.

  2. En la barra de herramientas del panel de creación de consultas, selecciona el botón cuyo nombre sea  MQL o  PromQL.

  3. Verifica que PromQL esté seleccionado en el interruptor Idioma. El interruptor de idioma se encuentra en la misma barra de herramientas que te permite dar formato a tu consulta.

  4. Para ver el número total de puntos de métricas de procesos de tus recursos gce_instance y aws_ec2_instance, haz lo siguiente:

    1. Introduce la siguiente consulta:

      sum_over_time(
        sum by (resource_type) (
          label_replace(
            label_replace(
              sum(count_over_time({"agent.googleapis.com/processes/cpu_time", monitored_resource="gce_instance"}[1m])),
              "metric_suffix", "cpu_time", "", ""
            )
            or
            label_replace(
              sum(count_over_time({"agent.googleapis.com/processes/disk/read_bytes_count", monitored_resource="gce_instance"}[1m])),
              "metric_suffix", "disk_read_bytes_count", "", ""
            )
            or
            label_replace(
              sum(count_over_time({"agent.googleapis.com/processes/disk/write_bytes_count", monitored_resource="gce_instance"}[1m])),
              "metric_suffix", "disk_write_bytes_count", "", ""
            )
            or
            label_replace(
              sum(count_over_time({"agent.googleapis.com/processes/rss_usage", monitored_resource="gce_instance"}[1m])),
              "metric_suffix", "rss_usage", "", ""
            )
            or
            label_replace(
              sum(count_over_time({"agent.googleapis.com/processes/vm_usage", monitored_resource="gce_instance"}[1m])),
              "metric_suffix", "vm_usage", "", ""
            )
            or
            label_replace(
              sum(count_over_time({"agent.googleapis.com/processes/count_by_state", monitored_resource="gce_instance"}[1m])),
              "metric_suffix", "count_by_state", "", ""
            )
            or
            label_replace(
              sum(count_over_time({"agent.googleapis.com/processes/fork_count", monitored_resource="gce_instance"}[1m])),
              "metric_suffix", "fork_count", "", ""
            ),
            "resource_type", "gce_instance", "", ""
          )
          or
          label_replace(
            label_replace(
              sum(count_over_time({"agent.googleapis.com/processes/cpu_time", monitored_resource="aws_ec2_instance"}[1m])),
              "metric_suffix", "cpu_time", "", ""
            )
            or
            label_replace(
              sum(count_over_time({"agent.googleapis.com/processes/disk/read_bytes_count", monitored_resource="aws_ec2_instance"}[1m])),
              "metric_suffix", "disk_read_bytes_count", "", ""
            )
            or
            label_replace(
              sum(count_over_time({"agent.googleapis.com/processes/disk/write_bytes_count", monitored_resource="aws_ec2_instance"}[1m])),
              "metric_suffix", "disk_write_bytes_count", "", ""
            )
            or
            label_replace(
              sum(count_over_time({"agent.googleapis.com/processes/rss_usage", monitored_resource="aws_ec2_instance"}[1m])),
              "metric_suffix", "rss_usage", "", ""
            )
            or
            label_replace(
              sum(count_over_time({"agent.googleapis.com/processes/vm_usage", monitored_resource="aws_ec2_instance"}[1m])),
              "metric_suffix", "vm_usage", "", ""
            )
            or
            label_replace(
              sum(count_over_time({"agent.googleapis.com/processes/count_by_state", monitored_resource="aws_ec2_instance"}[1m])),
              "metric_suffix", "count_by_state", "", ""
            )
            or
            label_replace(
              sum(count_over_time({"agent.googleapis.com/processes/fork_count", monitored_resource="aws_ec2_instance"}[1m])),
              "metric_suffix", "fork_count", "", ""
            ),
            "resource_type", "aws_ec2_instance", "", ""
          )
        )[1d:]
      )
      
    2. Haz clic en Ejecutar consulta. En el gráfico resultante se muestran los valores de cada tipo de recurso.

Estimar el coste de las métricas

En los ejemplos de precios de Monitoring se muestra cómo puedes estimar el coste de ingerir métricas. Estos ejemplos se pueden aplicar a las métricas de proceso.

  • Todas las métricas de proceso se muestrean cada 60 segundos y todas ellas escriben puntos de datos que se contabilizan como ocho bytes a efectos de los precios.

  • El precio de las métricas de proceso se ha fijado en el 5% del coste del volumen estándar que se usa en los ejemplos de precios. Por lo tanto, si asumes que todas las métricas de los escenarios descritos en esos ejemplos son métricas de proceso, puedes usar el 5% del coste total de cada escenario como estimación del coste de las métricas de proceso.

Inhabilitar la recogida de métricas de procesos

Hay varias formas de inhabilitar la recogida de estas métricas con el agente de Ops (versión 2.0.0 y posteriores) y con el agente de Monitoring antiguo en Linux.

Los agentes solo se ejecutan en VMs de Compute Engine y, en el caso del agente de Monitoring, en VMs de Amazon Elastic Compute Cloud (EC2). Estos procedimientos solo se aplican a esas plataformas.

No puedes inhabilitar la recogida de datos por parte del agente de Ops si utilizas versiones anteriores a la 2.0.0 o el agente de Monitoring antiguo en Windows. Si quieres inhabilitar la recogida de estas métricas en Windows, te recomendamos que actualices a la versión 2.0.0 o a una posterior del agente de operaciones. Para obtener más información, consulta Instalar el agente de Ops.

El procedimiento general es el siguiente:

  1. Conéctate a la VM.

  2. Haz una copia del archivo de configuración actual como copia de seguridad. Guarda la copia de seguridad fuera del directorio de configuración del agente para que el agente no intente cargar ambos archivos. Por ejemplo, el siguiente comando hace una copia del archivo de configuración del agente de monitorización en Linux:

    cp /etc/stackdriver/collectd.conf BACKUP_DIR/collectd.conf.bak
    
  3. Cambie la configuración con una de las opciones descritas a continuación:

  4. Reinicia el agente para que se aplique la nueva configuración:

    • User-agent de monitorización: sudo service stackdriver-agent restart
    • Agente de operaciones: sudo service google-cloud-ops-agent restart
  5. Comprueba que ya no se recogen las métricas de proceso de esta máquina virtual:

    1. En la Google Cloud consola, ve a la página  Explorador de métricas:

      Ve al explorador de métricas.

      Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuya sección sea Monitorización.

    2. En la barra de herramientas del panel de creación de consultas, selecciona el botón cuyo nombre sea  MQL o  PromQL.

    3. Verifica que PromQL esté seleccionado en el interruptor Idioma. El interruptor de idioma se encuentra en la misma barra de herramientas que te permite dar formato a tu consulta.

    4. En el caso de un recurso gce_instance, introduce la siguiente consulta y sustituye VM_NAME por el nombre de esta VM:

      rate({"agent.googleapis.com/processes/cpu_time", monitored_resource="gce_instance", metadata_system_name="VM_NAME"}[1m])
      

      En el caso de un recurso aws_ec2_instance, sustituye gce_instance en la consulta.

    5. Haz clic en Ejecutar consulta.

Agente de operaciones en Linux o Windows

La ubicación del archivo de configuración del agente de operaciones depende del sistema operativo:

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

Para inhabilitar la recogida de todas las métricas de procesos por parte del agente de operaciones, añade lo siguiente al archivo config.yaml:

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

De esta forma, se excluyen las métricas de procesos de la recogida en el metrics_filterprocesador que se aplica a la canalización predeterminada del servicio metrics.

Para obtener más información sobre las opciones de configuración del agente de operaciones, consulta el artículo Configurar el agente de operaciones.

Agente de Monitoring en Linux

Para inhabilitar la recogida de métricas de procesos con el agente de Monitoring antiguo, tienes las siguientes opciones:

En las siguientes secciones se describe cada opción y se enumeran las ventajas y los riesgos asociados a ella.

Modificar el archivo de configuración del agente

Con esta opción, puedes editar directamente el archivo de configuración principal del agente, /etc/stackdriver/collectd.conf, para quitar las secciones que habilitan la recogida de métricas de procesos.

Procedimiento

Hay tres grupos de eliminaciones que debes hacer en el archivo collectd.conf:

  1. Elimina la siguiente directiva LoadPlugin y la configuración del complemento:

    LoadPlugin processes
    
    <Plugin "processes">
      ProcessMatch "all" ".*"
      Detail "ps_cputime"
      Detail "ps_disk_octets"
      Detail "ps_rss"
      Detail "ps_vm"
    </Plugin>
    
  2. Elimina la siguiente directiva PostCacheChain y la configuración de la cadena 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. Elimina la cadena MaybeThrottleProcesses que usa la cadena 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>
    
Ventajas y riesgos
  • Ventajas
    • Reduces los recursos que consume el agente, ya que las métricas nunca se recogen.
    • Si has hecho otros cambios en tu archivo collectd.conf, puede que puedas conservarlos fácilmente.
  • Riesgos
    • Debe usar la cuenta de root para editar este archivo de configuración.
    • Te arriesgas a introducir errores tipográficos en el archivo.

Sustituir el archivo de configuración del agente

Con esta opción, se sustituye el archivo de configuración principal del agente por una versión editada previamente que tiene las secciones pertinentes eliminadas.

Procedimiento
  1. Descarga el archivo preeditado, collectd-no-process-metrics.conf, del repositorio de GitHub en el directorio /tmp y, a continuación, haz lo siguiente:

    cd /tmp && curl -sSO https://raw.githubusercontent.com/Stackdriver/agent-packaging/master/collectd-no-process-metrics.conf
    
  2. Sustituye el archivo collectd.conf por el archivo preeditado:

    cp /tmp/collectd-no-process-metrics.conf /etc/stackdriver/collectd.conf
    
Ventajas y riesgos
  • Ventajas
    • Reduces los recursos que consume el agente porque las métricas nunca se recogen.
    • No tienes que editar el archivo manualmente como root.
    • Las herramientas de gestión de la configuración pueden sustituir fácilmente un archivo.
  • Riesgos
    • Si has hecho otros cambios en el archivo collectd.conf, debes combinar esos cambios en el archivo de sustitución.

Solución de problemas

Los procedimientos descritos en este documento son cambios en la configuración del agente, por lo que es muy probable que se produzcan los siguientes problemas:

  • Privilegios insuficientes para editar los archivos de configuración. Los archivos de configuración deben editarse desde la cuenta de root.
  • Introducción de errores tipográficos en el archivo de configuración si lo editas directamente.

Para obtener información sobre cómo resolver otros problemas, consulta Solucionar problemas del agente de monitorización.

Agente de monitorización en Windows

No puedes inhabilitar la recogida de métricas de procesos mediante el agente de Monitoring antiguo que se ejecuta en VMs Windows. Este agente no se puede configurar. Si quieres inhabilitar la recogida de estas métricas en Windows, te recomendamos que actualices a la versión 2.0.0 o a una posterior del agente de operaciones. Para obtener más información, consulta Instalar el agente de Ops.

Si estás ejecutando el agente de operaciones, consulta Agente de operaciones en Linux o Windows.