Descripción general de Cloud Monitoring

En este documento, se proporciona una descripción general de los servicios que usa Cloud Monitoring proporciona. Estos servicios pueden ayudarte a comprender el comportamiento, el estado y el rendimiento de tus aplicaciones y de otros servicios de Google Cloud. Cloud Monitoring recopila y almacena automáticamente la información de rendimiento para la mayoría de los servicios de Google Cloud. Tú puede recopilar Prometheus a través de Google Cloud Managed Service para Prometheus. Si instalas el Agente de operaciones en tu instancia de Compute Engine virtuales (VMs), puedes recopilar métricas y registros de tus de aplicaciones y de terceros.

Los servicios de alertas, pruebas y visualización que proporciona Cloud Monitoring te ayuda a responder preguntas importantes como las siguientes:

  • ¿Cuál es la carga de mi servicio?
  • ¿Mi sitio web responde correctamente?
  • ¿Mi servicio funciona bien?

Cloud Monitoring proporciona compatibilidad con la consola de Google Cloud y la API para la mayoría de sus servicios. Algunos servicios también admiten Google Cloud CLI en Terraform. Las páginas de referencia de la API de Cloud Monitoring, como la página alertPolicies.list, te permiten experimentar con llamadas a la API directamente desde la página de referencia.

Servicios de Cloud Monitoring

Cloud Monitoring proporciona diferentes servicios que puedes usar para comprender el estado y el rendimiento de tus aplicaciones y el otros servicios de Google Cloud que uses.

Alertas y notificaciones

Para recibir una notificación cuando el valor de una métrica de rendimiento cumpla con los criterios que definir, crea una política de alertas. La política de alertas incluye la lista de personas o grupos que recibirán notificaciones. Monitoring admite canales de notificación comunes como el correo electrónico, Cloud Mobile App y servicios como PagerDuty o Slack. Por ejemplo, puedes crear una política de alertas cuando el uso de CPU de una VM supera el 80%.

Cada notificación incluye información relevante sobre una falla, y incluye un vínculo a un incidente. Un incidente es un registro persistente que almacena información útil para solucionar el problema. Por lo general, un registro enumera el estado del incidente, vínculos a registros y un gráfico de la métrica registrada los datos, las etiquetas y la duración.

El servicio de alertas está integrado en muchos servicios de Google Cloud. Cuando estos que existen integraciones, es posible que veas un panel que enumera alertas recomendadas es posible que veas un botón en un gráfico que te permita crear una política de alertas. En ambos casos, las políticas de alertas están preconfiguradas solo debes especificar la lista de personas o grupos a los que deseas notificar.

Puedes crear y administrar políticas de alertas con la consola de Google Cloud, la API de Cloud Monitoring, Google Cloud CLI o Terraform.

Supervisión y validación proactivas

Para probar la disponibilidad, coherencia y rendimiento de tus servicios, sigue estos pasos: aplicaciones, páginas web y APIs, crear monitores sintéticos. Por ejemplo: puedes sondear extremos HTTP, HTTPS y TCP para determinar si son de respuesta con verificaciones de tiempo de actividad y recibirás una notificación o extremo no responde. También puedes crear verificador de vínculos rotos para rastrear una página web y, luego, te notificarán cuando se detecten vínculos rotos.

Puedes crear y administrar monitores sintéticos con la consola de Google Cloud, la API de Cloud Monitoring, Google Cloud CLI o Terraform.

Visualización de datos

Para visualizar tus datos, ver tendencias, identificar valores atípicos y ver otras más detalles sobre tus datos, puedes usar el servicios de panel y gráficos:

  • El servicio de panel crea automáticamente Panel administrado por Google Cloud cuando agregues un recurso a tu proyecto de Google Cloud. Por ejemplo, un panel cuando creas una instancia de Compute Engine, se crea un una política de retención o un monitor sintético. Puedes usar estas paneles para ver información de rendimiento y configuración, como el uso del disco o la dirección IP, y a ver eventos.

    Para controlar qué datos ves y el formato de visualización de esos datos, crear un panel personalizado Por ejemplo: puedes importar un panel de Grafana o instalar un panel a partir de una plantilla. Tus paneles personalizados pueden mostrar gráficos, tablas, registros y grupos de errores, incidentes y políticas de alertas, y texto. También puedes compartir paneles personalizados con otras personas grupos en tu organización y configurar estos paneles para mostrar eventos.

    Puedes crear y administrar paneles usando la consola de Google Cloud o API.

  • El servicio de gráficos, Explorador de métricas, permite visualizar y explorar rápidamente los datos de series temporales. La configuración del gráfico te permiten comparar los datos actuales con los anteriores, mostrar valores atípicos y y muestran varias métricas. También puedes guardar gráficos en un panel personalizado

Recopilación y almacenamiento de datos

Cloud Monitoring recopila y almacena los siguientes tipos de datos de métricas:

  • Métricas basadas en registros que registran información numérica sobre los registros escritos en Cloud Logging. Las métricas basadas en registros definidas por Google incluyen la cantidad total de errores que detecta tu servicio la cantidad de entradas de registro que recibió tu proyecto de Google Cloud. También puedes definir métricas basadas en registros.

Lenguajes de consulta

Cuando creas una política de alertas o un gráfico, debes proporciona una consulta que describa los datos que deseas supervisar o representar:

  • Consola de Google Cloud: Puedes crear tu consulta a través de selecciones de menús, o escribir una consulta. Hay editores de consultas disponibles para Prometheus Query Language (PromQL) y el Lenguaje de consulta de Monitoring (MQL). Los editores de consultas proporcionar verificaciones de sintaxis y sugerencias. También puedes escribir una expresión de Monitoring filter

  • API de Cloud Monitoring: La API admite y Prometheus Query Language (PromQL), MQL y Monitoring.

Supervisa sistemas grandes

En esta sección, se describe cómo puedes administrar recursos como un de datos y cómo puedes supervisar las métricas almacenadas en varios proyectos de Google Cloud.

Administra recursos como una colección

Administrar tus recursos como una colección en lugar de individualmente, crea un grupo de recursos. Un grupo de recursos es una colección dinámica de recursos que cumplan con algunos criterios proporcionados. A medida que agregas y quitas recursos, por ejemplo, agregando instancias de VM de Compute Engine a tu proyecto de Google Cloud, la membresía del grupo cambia automáticamente. Los siguientes son ejemplos de grupos de recursos:

  • Instancias de Compute Engine cuyos nombres comienzan con la string prod-.
  • Recursos con la etiqueta test-cluster
  • Instancias de Amazon EC2 en la región A o la región B.

Después de que defines un grupo de recursos, Puedes supervisar el grupo como si fuera un solo recurso. Por ejemplo, Puedes configurar una verificación de tiempo de actividad para supervisar un grupo de recursos. Para los gráficos y las políticas de alertas, también puedes filtrar según el nombre del grupo.

Para obtener más información, consulta Configura grupos de recursos.

Supervisa las métricas de varios proyectos de Google Cloud

Para ver y supervisar los datos de series temporales de varios proyectos de Google Cloud y cuentas de AWS a través de una única interfaz, configurar un permiso de métricas para varios proyectos,

De forma predeterminada, las páginas de Cloud Monitoring en la consola de Google Cloud proporcionan acceso solo a las series temporales almacenadas en el proyecto de permisos. El El proyecto de permisos es aquel que seleccionaste con las Selector de proyectos de la consola de Google Cloud. El proyecto de permisos almacena las alertas, los monitores sintéticos, los paneles y los grupos de supervisión que configures.

El proyecto de permisos también aloja un permiso de métricas. El permiso de métricas define los proyectos y las cuentas cuyas métricas se visibles para el proyecto de permisos. Puedes configurar los permisos de métricas incluir datos de series temporales de otros proyectos de Google Cloud y de Cuentas de AWS. Para obtener información sobre cómo modificar un permiso de métricas, consulta Configura un permiso de métricas para varios proyectos.

Modelo de datos de Cloud Monitoring

En esta sección, se presenta el modelo de datos de Cloud Monitoring:

  • Un tipo de métrica describe algo que es medir. Algunos ejemplos de tipos de métricas incluyen el uso de CPU de una VM y las el porcentaje de un disco que se usa.

  • Una serie temporal es una estructura de datos que contiene mediciones con marca de tiempo de una métrica e información sobre la fuente y el significado de esas mediciones.

Estos son algunos detalles sobre lo que contiene una serie temporal:

  • El array points contiene las medidas con marca de tiempo.

    El siguiente es un ejemplo de un array points con dos valores:

      "points": [
        {
          "interval": {
            "startTime": "2020-07-27T20:20:21.597143Z",
            "endTime": "2020-07-27T20:20:21.597143Z"
          },
          "value": {
            "doubleValue": 0.473005
          }
        },
        {
          "interval": {
            "startTime": "2020-07-27T20:19:21.597239Z",
            "endTime": "2020-07-27T20:19:21.597239Z"
          },
          "value": {
            "doubleValue": 0.473025
          }
        },
      ],
    

    Para comprender el significado de un valor, necesitas consultar los otros datos incluidos en las series temporales y en las definiciones de esos datos.

  • El campo resource describe el componente de hardware o software que se supervisa. En Cloud Monitoring, el hardware o software se conoce como el recurso supervisado. Algunos ejemplos de recursos supervisados incluyen Compute Engine y aplicaciones de App Engine. Para obtener una lista de recursos supervisados, consulta la Lista de recursos supervisados

    El siguiente es un ejemplo de un campo resource:

      "resource": {
        "type": "gce_instance",
        "labels": {
          "instance_id": "2708613220420473591",
          "zone": "us-east1-b",
          "project_id": "sampleproject"
        }
      }
    
    • El campo type enumera el recurso supervisado como gce_instance, lo que indica que estas mediciones se realizan en una instancia de VM de Compute Engine.

    • El campo labels contiene pares clave-valor que proporcionan información sobre el recurso supervisado. Para un tipo gce_instance, las etiquetas identifican la instancia de VM que se supervisa.

  • El campo metric describe lo que se mide.

    El siguiente es un ejemplo de un campo metric:

      "metric": {
        "labels": {
          "instance_name": "test"
        },
        "type": "compute.googleapis.com/instance/cpu/utilization"
      },
    
    • Para los servicios de Google, el campo type especifica el servicio y lo que se está supervisando. En este ejemplo, el servicio de Compute Engine para medir el uso de CPU. Cuando el campo type comienza con custom o external, la métrica se una métrica personalizada o una definida por un tercero.

    • El campo labels contiene pares clave-valor que proporcionan información adicional sobre las mediciones. Estas etiquetas se definen como parte de el MetricDescriptor, que es una estructura de datos que define los atributos de los datos medidos. El MetricDescriptor de la métrica compute.googleapis.com/instance/cpu/utilization incluye la etiqueta instance_name.

  • El campo metricKind describe la relación entre medidas adyacentes dentro de una serie temporal:

    • Las métricas de GAUGE almacenan el valor de lo que se medirse en un momento dado, por ejemplo, una frecuencia registro de temperatura.

    • Las métricas CUMULATIVE almacenan el valor acumulado de lo que se mide en un momento determinado, por ejemplo, un odómetro en un vehículo.

    • Las métricas de DELTA almacenan el cambio en el valor del elemento que se medido durante un período específico, por ejemplo, una acción que muestra las ganancias o pérdidas de la acción.

  • El campo valueType describe el tipo de datos para la medición: INT64, DOUBLE, BOOL, STRING, o DISTRIBUTION.

Cloud Monitoring escribe una serie temporal para cada combinación de los valores de las etiquetas de recursos y métricas. Puedes usar estas etiquetas para agrupar y filtrar series temporales. Por ejemplo, cuando un proyecto de Google Cloud contiene múltiples Instancias de VM de Compute Engine, el uso de CPU para cada instancia de VM es una serie temporal única. Estas son algunas maneras de mostrar esto datos:

  • Puedes mostrar el uso de CPU de cada instancia de VM.
  • Puedes mostrar el uso de CPU para una instancia de VM específica filtra las series temporales para un solo valor de la etiqueta instance_id.
  • Puedes agrupar por instancias de VM por la etiqueta machine_type y, luego, mostrará el uso de CPU promedio. La siguiente captura de pantalla se ilustra un gráfico con esta configuración:

    Uso de CPU promedio agrupado por tipo de máquina.

Precios

En general, las métricas del sistema de Cloud Monitoring son gratuitas, y las métricas de sistemas, agentes o aplicaciones externos. Las métricas facturables son según la cantidad de bytes o de muestras transferidas.

Para obtener más información sobre los precios de Cloud Monitoring, consulta los siguientes documentos:

¿Qué sigue?