MCP Tools Reference: monitoring.googleapis.com

Herramienta: get_alert_policy

Usa esta herramienta como la principal para obtener información sobre una política de alertas específica. Las políticas de alertas definen las condiciones en las que deseas recibir notificaciones sobre problemas con tus servicios. Esto es útil para comprender los detalles de una configuración de alerta específica.

En el siguiente ejemplo, se muestra cómo usar curl para invocar la herramienta de MCP get_alert_policy.

Solicitud de Curl
                  
curl --location 'https://monitoring.googleapis.com/mcp' \
--header 'content-type: application/json' \
--header 'accept: application/json, text/event-stream' \
--data '{
  "method": "tools/call",
  "params": {
    "name": "get_alert_policy",
    "arguments": {
      // provide these details according to the tool's MCP specification
    }
  },
  "jsonrpc": "2.0",
  "id": 1
}'
                

Esquema de entrada

Es el protocolo para la solicitud de GetAlertPolicy.

GetAlertPolicyRequest

Representación JSON
{
  "name": string
}
Campos
name

string

Obligatorio. Política de alertas que se recuperará. El formato es el siguiente:

projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]

Esquema de salida

Una descripción de las condiciones según las cuales algún aspecto de tu sistema se considera "en mal estado" y las formas de notificar a las personas o servicios acerca de este estado. Para obtener una descripción general de las políticas de alertas, consulta Introducción a las alertas.

AlertPolicy

Representación JSON
{
  "name": string,
  "displayName": string,
  "documentation": {
    object (Documentation)
  },
  "userLabels": {
    string: string,
    ...
  },
  "conditions": [
    {
      object (Condition)
    }
  ],
  "combiner": enum (ConditionCombinerType),
  "enabled": boolean,
  "validity": {
    object (Status)
  },
  "notificationChannels": [
    string
  ],
  "creationRecord": {
    object (MutationRecord)
  },
  "mutationRecord": {
    object (MutationRecord)
  },
  "alertStrategy": {
    object (AlertStrategy)
  },
  "severity": enum (Severity)
}
Campos
name

string

Es el identificador. Obligatorio si existe la política. Es el nombre del recurso de esta política. El formato es el siguiente:

projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]

Cloud Monitoring asigna [ALERT_POLICY_ID] cuando se crea la política. Cuando llames al método alertPolicies.create, no incluyas el campo name en la política de alertas que se pasa como parte de la solicitud.

displayName

string

Es un nombre corto o una frase que se usa para identificar la política en los paneles, las notificaciones y los incidentes. Para evitar confusiones, no uses el mismo nombre visible para varias políticas en el mismo proyecto. El nombre tiene un límite de 512 caracteres Unicode.

La convención para el display_name de un PrometheusQueryLanguageCondition es "{nombre del grupo de reglas}/{nombre de la alerta}", en la que el {nombre del grupo de reglas} y el {nombre de la alerta} deben tomarse del archivo de configuración de Prometheus correspondiente. Esta convención no se aplica de forma obligatoria. En cualquier caso, display_name no es una clave única de AlertPolicy.

documentation

object (Documentation)

Documentación que se incluye con las notificaciones y los incidentes relacionados con esta política. La práctica recomendada es que la documentación incluya información para ayudar a los encargados de ofrecer respuestas a comprender, mitigar, derivar y corregir los problemas subyacentes detectados por la política de alertas. Es posible que los canales de notificación que tienen capacidad limitada no muestren esta documentación.

userLabels

map (key: string, value: string)

Son los datos de clave/valor proporcionados por el usuario que se usarán para organizar e identificar los objetos AlertPolicy.

El campo puede contener hasta 64 entradas. Cada clave y valor se limita a 63 caracteres Unicode o 128 bytes, lo que sea menor. Las etiquetas y los valores solo pueden contener letras en minúscula, números, guiones bajos y guiones. Las claves deben comenzar con una letra.

Ten en cuenta que Prometheus {alert name} es un nombre de etiqueta de Prometheus válido, mientras que Prometheus {rule group} es una cadena UTF-8 sin restricciones. Esto significa que no se pueden almacenar tal como están en las etiquetas de usuario, ya que pueden contener caracteres que no se permiten en los valores de las etiquetas de usuario.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

conditions[]

object (Condition)

Es una lista de condiciones de la política. Las condiciones se combinan con Y o O según el campo combiner. Si las condiciones combinadas se evalúan como verdaderas, se crea un incidente. Una política puede tener de una a seis condiciones. Si condition_time_series_query_language está presente, debe ser el único condition. Si condition_monitoring_query_language está presente, debe ser el único condition.

combiner

enum (ConditionCombinerType)

Es la forma de combinar los resultados de varias condiciones para determinar si se debe abrir un incidente. Si condition_time_series_query_language está presente, debe ser COMBINE_UNSPECIFIED.

enabled

boolean

Indica si la política está habilitada o no. Cuando se escribe, la interpretación predeterminada si no se establece es que la política está habilitada. En la lectura, los clientes no deben hacer ninguna suposición sobre el estado si no se propagó. El campo siempre debe completarse en las operaciones de lista y obtención, a menos que se haya especificado una proyección de campo que lo quite.

validity

object (Status)

Es una descripción de solo lectura de por qué no es válida la política de alertas. Este campo solo se configura cuando la política de alertas no es válida. Una política de alertas no válida no generará incidentes.

notificationChannels[]

string

Identifica los canales de notificación a los que se deben enviar notificaciones cuando se abren o cierran incidentes, o cuando se producen incumplimientos nuevos en un incidente ya abierto. Cada elemento de este array corresponde al campo name en cada uno de los objetos NotificationChannel que se devuelven del método ListNotificationChannels. El formato de las entradas en este campo es el siguiente:

projects/[PROJECT_ID_OR_NUMBER]/notificationChannels/[CHANNEL_ID]
creationRecord

object (MutationRecord)

Es un registro de solo lectura de la creación de la política de alertas. Si se proporciona en una llamada para crear o actualizar, este campo se ignorará.

mutationRecord

object (MutationRecord)

Es un registro de solo lectura del cambio más reciente en la política de alertas. Si se proporciona en una llamada para crear o actualizar, este campo se ignorará.

alertStrategy

object (AlertStrategy)

Control sobre cómo se notifican los canales de notificación de esta política de alertas.

severity

enum (Severity)

Es opcional. La gravedad de una política de alertas indica la importancia de los incidentes que genera esa política. El nivel de gravedad se mostrará en la página Detalles del incidente y en las notificaciones.

Documentación

Representación JSON
{
  "content": string,
  "mimeType": string,
  "subject": string,
  "links": [
    {
      object (Link)
    }
  ]
}
Campos
content

string

Cuerpo de la documentación, interpretado según mime_type. El contenido no puede exceder los 8,192 caracteres Unicode ni los 10,240 bytes cuando se codifica en formato UTF-8, lo que sea menor. Este texto se puede crear como plantilla con variables.

mimeType

string

Es el formato del campo content. Actualmente, solo se admite el valor "text/markdown". Consulta Markdown para obtener más información.

subject

string

Es opcional. Es el asunto de la notificación. La línea de asunto no puede superar los 10,240 bytes. En las notificaciones que genera esta política, el contenido de la línea de asunto después de la expansión de variables se truncará a 255 bytes o menos en el límite de caracteres UTF-8 más reciente. Este hilo recomienda el límite de 255 bytes. Es el límite que imponen algunos productos de venta de entradas de terceros y es común definir campos de texto en bases de datos como VARCHAR(255).

El contenido del asunto se puede crear a partir de plantillas con variables. Si este campo falta o está vacío, se generará una línea de asunto predeterminada.

links[]

object (Link)

Es opcional. Vínculos a contenido, como guías, repositorios y otros recursos. Este campo puede contener hasta 3 entradas.

Representación JSON
{
  "displayName": string,
  "url": string
}
Campos
displayName

string

Es un nombre visible corto para el vínculo. El nombre visible no debe estar vacío ni superar los 63 caracteres. Ejemplo: "manual".

url

string

Es la URL de una página web. Se puede crear una plantilla de una URL usando variables en la ruta o en los parámetros de consulta. La longitud total de una URL no debe exceder los 2,083 caracteres antes ni después de la expansión de variables. Ejemplo: "https://my_domain.com/playbook?name=${resource.name}"

UserLabelsEntry

Representación JSON
{
  "key": string,
  "value": string
}
Campos
key

string

value

string

Condición

Representación JSON
{
  "name": string,
  "displayName": string,

  // Union field condition can be only one of the following:
  "conditionThreshold": {
    object (MetricThreshold)
  },
  "conditionAbsent": {
    object (MetricAbsence)
  },
  "conditionMatchedLog": {
    object (LogMatch)
  },
  "conditionMonitoringQueryLanguage": {
    object (MonitoringQueryLanguageCondition)
  },
  "conditionPrometheusQueryLanguage": {
    object (PrometheusQueryLanguageCondition)
  },
  "conditionSql": {
    object (SqlCondition)
  }
  // End of list of possible types for union field condition.
}
Campos
name

string

Obligatorio si existe la condición. Es el nombre único del recurso para esta condición. Su formato es el siguiente:

projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[POLICY_ID]/conditions/[CONDITION_ID]

Cloud Monitoring asigna [CONDITION_ID] cuando se crea la condición como parte de una política de alertas nueva o actualizada.

Cuando llames al método alertPolicies.create, no incluyas el campo name en las condiciones de la política de alertas solicitada. Cloud Monitoring crea los identificadores de condición y los incluye en la política nueva.

Cuando llamas al método alertPolicies.update para actualizar una política, incluir una condición name hace que se actualice la condición existente. Las condiciones sin nombres se agregan a la política actualizada. Las condiciones existentes se borran si no se actualizan.

La práctica recomendada es conservar [CONDITION_ID] si solo realizas cambios pequeños, como los que se aplican a los umbrales de condición, las duraciones o los valores de activación. De lo contrario, trata el cambio como una condición nueva y permite que se borre la condición existente.

displayName

string

Es un nombre corto o una frase breve que se usa para identificar la condición en los paneles, las notificaciones y los incidentes. Para evitar confusiones, no uses el mismo nombre visible para varias condiciones en la misma política.

Campo de unión condition. Solo se especificará uno de los siguientes tipos de condiciones. condition puede ser solo uno de los parámetros siguientes:
conditionThreshold

object (MetricThreshold)

Es una condición que compara una serie temporal con un umbral.

conditionAbsent

object (MetricAbsence)

Es una condición que verifica que una serie temporal siga recibiendo datos nuevos.

conditionMatchedLog

object (LogMatch)

Es una condición que verifica si hay mensajes de registro que coincidan con las restricciones proporcionadas. Si se configura, no puede haber otras condiciones.

conditionMonitoringQueryLanguage

object (MonitoringQueryLanguageCondition)

Es una condición que usa el lenguaje de consultas de Monitoring para definir alertas.

conditionPrometheusQueryLanguage

object (PrometheusQueryLanguageCondition)

Es una condición que usa el lenguaje de consulta de Prometheus para definir alertas.

conditionSql

object (SqlCondition)

Es una condición que evalúa periódicamente el resultado de una consulta en SQL.

MetricThreshold

Representación JSON
{
  "filter": string,
  "aggregations": [
    {
      object (Aggregation)
    }
  ],
  "denominatorFilter": string,
  "denominatorAggregations": [
    {
      object (Aggregation)
    }
  ],
  "forecastOptions": {
    object (ForecastOptions)
  },
  "comparison": enum (ComparisonType),
  "thresholdValue": number,
  "duration": string,
  "trigger": {
    object (Trigger)
  },
  "evaluationMissingData": enum (EvaluationMissingData)
}
Campos
filter

string

Obligatorio. Es un filtro que identifica qué series temporales se deben comparar con el umbral.

El filtro es similar al que se especifica en la solicitud ListTimeSeries (esa llamada es útil para verificar las series temporales que se recuperarán o procesarán). El filtro debe especificar el tipo de métrica y el tipo de recurso. De manera opcional, puede especificar etiquetas de recursos y etiquetas de métricas. Este campo no debe superar los 2,048 caracteres Unicode de longitud.

aggregations[]

object (Aggregation)

Especifica la alineación de los datos en series temporales individuales, así como la forma de combinar las series temporales recuperadas (por ejemplo, cuando se agregan varias transmisiones en cada recurso a una sola transmisión para cada recurso o cuando se agregan transmisiones en todos los miembros de un grupo de recursos). Las agregaciones múltiples se aplican en el orden especificado.

Este campo es similar al de la solicitud ListTimeSeries. Se recomienda usar el método ListTimeSeries cuando se depure este campo.

denominatorFilter

string

Un filtro que identifica una serie temporal que se debe usar como denominador de una proporción que se comparará con el umbral. Si se especifica un denominator_filter, la serie temporal especificada por el campo filter se usará como numerador.

El filtro debe especificar el tipo de métrica y, de manera opcional, puede contener restricciones sobre el tipo de recurso, las etiquetas de recursos y las etiquetas de métricas. Este campo no puede superar los 2,048 caracteres Unicode de longitud.

denominatorAggregations[]

object (Aggregation)

Especifica la alineación de los datos en las series temporales individuales seleccionadas por denominatorFilter, así como la forma de combinar las series temporales recuperadas (por ejemplo, cuando se agregan varios flujos en cada recurso a un solo flujo para cada recurso o cuando se agregan flujos en todos los miembros de un grupo de recursos).

Cuando se calculan proporciones, los campos aggregations y denominator_aggregations deben usar el mismo período de alineación y generar series temporales que tengan la misma periodicidad y las mismas etiquetas.

forecastOptions

object (ForecastOptions)

Cuando este campo está presente, la condición MetricThreshold prevé si se predice que la serie temporal incumplirá el umbral dentro del forecast_horizon. Cuando no se configura este campo, MetricThreshold prueba el valor actual de la serie temporal en relación con el umbral.

comparison

enum (ComparisonType)

Es la comparación que se aplicará entre las series temporales (indicadas por filter y aggregation) y el umbral (indicado por threshold_value). La comparación se aplica a cada serie temporal, con la serie temporal a la izquierda y el umbral a la derecha.

Actualmente, solo se admiten COMPARISON_LT y COMPARISON_GT.

thresholdValue

number

Es un valor con el que se comparará la serie temporal.

duration

string (Duration format)

Obligatorio. Es la cantidad de tiempo durante la que una serie temporal debe incumplir el límite para considerarse con fallas. Actualmente, solo se admiten valores que son múltiplos de un minuto, p.ej., 0, 60, 120 o 300 segundos. Si se proporciona un valor no válido, se mostrará un error. Cuando elijas una duración, es útil tener en cuenta la frecuencia de los datos subyacentes de la serie temporal (que también puede verse afectada por cualquier alineación especificada en el campo aggregations). Una buena duración es lo suficientemente larga como para que un solo valor atípico no genere alertas espurias, pero lo suficientemente corta como para que los estados no saludables se detecten y se generen alertas rápidamente.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

trigger

object (Trigger)

Es la cantidad o el porcentaje de series temporales para las que se debe mantener la comparación para que se active la condición. Si no se especifica, la condición se activará si la comparación es verdadera para cualquiera de las series temporales que se identificaron con filter y aggregations, o con la proporción, si se especifican denominator_filter y denominator_aggregations.

evaluationMissingData

enum (EvaluationMissingData)

Es un control de condición que determina cómo se evalúan las condiciones de umbral de métrica cuando dejan de llegar datos. Para usar este control, el valor del campo duration debe ser mayor o igual que 60 segundos.

Agregación

Representación JSON
{
  "alignmentPeriod": string,
  "perSeriesAligner": enum (Aligner),
  "crossSeriesReducer": enum (Reducer),
  "groupByFields": [
    string
  ]
}
Campos
alignmentPeriod

string (Duration format)

El alignment_period especifica un intervalo de tiempo, en segundos, que se usa para dividir los datos de todos los time series en bloques de tiempo coherentes. Esto se hará antes de que se pueda aplicar el alineador por serie a los datos.

El valor debe ser de al menos 60 segundos. Si se especifica un alineador por serie que no sea ALIGN_NONE, este campo es obligatorio o se mostrará un error. Si no se especifica ningún alineador por serie o se especifica el alineador ALIGN_NONE, se ignora este campo.

El valor máximo de alignment_period es de 104 semanas (2 años) para los gráficos y de 90,000 segundos (25 horas) para las políticas de alertas.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

perSeriesAligner

enum (Aligner)

Un Aligner describe cómo alinear temporalmente los datos de una sola serie temporal. Excepto por ALIGN_NONE, todas las alineaciones hacen que todos los datos de un alignment_period se agrupen matemáticamente, lo que genera un solo dato para cada alignment_period con una marca de tiempo final al final del período.

Es posible que no todas las operaciones de alineación se puedan aplicar a todas las series temporales. Las opciones válidas dependen de los valores de metric_kind y value_type de la serie temporal original. La alineación puede cambiar el metric_kind o el value_type de la serie temporal.

Los datos de series temporales deben alinearse para realizar la reducción entre series temporales. Si se especifica cross_series_reducer, también se debe especificar per_series_aligner y no debe ser igual a ALIGN_NONE, y se debe especificar alignment_period. De lo contrario, se devolverá un error.

crossSeriesReducer

enum (Reducer)

Operación de reducción que se usará para combinar series temporales en una sola, en la que el valor de cada dato de la serie resultante es una función de todos los valores ya alineados en las series temporales de entrada.

No todas las operaciones de reducción se pueden aplicar a todas las series temporales. Las opciones válidas dependen de metric_kind y value_type de la serie temporal original. La reducción puede generar una serie temporal con un metric_kind o un value_type diferente al de la serie temporal de entrada.

Los datos de series temporales primero deben alinearse (consulta per_series_aligner) para realizar la reducción entre series temporales. Si se especifica cross_series_reducer, también se debe especificar per_series_aligner, y no debe ser ALIGN_NONE. También se debe especificar un alignment_period; de lo contrario, se devolverá un error.

groupByFields[]

string

Es el conjunto de campos que se conservarán cuando se especifique cross_series_reducer. Los group_by_fields determinan cómo se particionan las series temporales en subconjuntos antes de aplicar la operación de agregación. Cada subconjunto contiene series temporales que tienen el mismo valor para cada uno de los campos de agrupación. Cada serie temporal individual pertenece a exactamente un subconjunto. El cross_series_reducer se aplica a cada subconjunto de series temporales. No es posible reducir la cantidad de recursos en diferentes tipos de recursos, por lo que este campo contiene implícitamente resource.type. Los campos que no se especifican en group_by_fields se agregan. Si no se especifica group_by_fields y todas las series temporales tienen el mismo tipo de recurso, las series temporales se agregan en una sola serie temporal de salida. Si no se define cross_series_reducer, se ignora este campo.

Duración

Representación JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Son los segundos firmados del período. Debe estar entre -315,576,000,000 y +315,576,000,000, inclusive. Nota: Estos límites se calculan de la siguiente manera: 60 s/min * 60 min/h * 24 h/d * 365.25 d/a * 10,000 a

nanos

integer

Fracciones firmadas de un segundo con una resolución de nanosegundos del período. Las duraciones inferiores a un segundo se representan con un campo seconds igual a 0 y un campo nanos positivo o negativo. Para duraciones de un segundo o más, un valor distinto de cero para el campo nanos debe tener el mismo signo que el campo seconds. Debe ser un valor entre -999,999,999 y +999,999,999, inclusive.

ForecastOptions

Representación JSON
{
  "forecastHorizon": string
}
Campos
forecastHorizon

string (Duration format)

Obligatorio. Es el período futuro para el que se prevé si una serie temporal incumplirá el umbral. Si se detecta que el valor predicho incumple el umbral y el incumplimiento se observa en todas las previsiones realizadas para el duration configurado, se considera que la serie temporal falla. El horizonte de previsión puede variar de 1 a 60 horas.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

Activador

Representación JSON
{

  // Union field type can be only one of the following:
  "count": integer,
  "percent": number
  // End of list of possible types for union field type.
}
Campos
Campo de unión type. Es un tipo de activador. type puede ser solo uno de los parámetros siguientes:
count

integer

Es la cantidad absoluta de series temporales que deben fallar en el predicado para que se active la condición.

percent

number

Es el porcentaje de series temporales que deben fallar en el predicado para que se active la condición.

MetricAbsence

Representación JSON
{
  "filter": string,
  "aggregations": [
    {
      object (Aggregation)
    }
  ],
  "duration": string,
  "trigger": {
    object (Trigger)
  }
}
Campos
filter

string

Obligatorio. Es un filtro que identifica qué series temporales se deben comparar con el umbral.

El filtro es similar al que se especifica en la solicitud ListTimeSeries (esa llamada es útil para verificar las series temporales que se recuperarán o procesarán). El filtro debe especificar el tipo de métrica y el tipo de recurso. De manera opcional, puede especificar etiquetas de recursos y etiquetas de métricas. Este campo no debe superar los 2,048 caracteres Unicode de longitud.

aggregations[]

object (Aggregation)

Especifica la alineación de los datos en series temporales individuales, así como la forma de combinar las series temporales recuperadas (por ejemplo, cuando se agregan varias transmisiones en cada recurso a una sola transmisión para cada recurso o cuando se agregan transmisiones en todos los miembros de un grupo de recursos). Las agregaciones múltiples se aplican en el orden especificado.

Este campo es similar al de la solicitud ListTimeSeries. Se recomienda usar el método ListTimeSeries cuando se depure este campo.

duration

string (Duration format)

Obligatorio. Es la cantidad de tiempo durante la que una serie temporal debe dejar de informar datos nuevos para considerarse que falla. El valor mínimo de este campo es de 120 segundos. Se admiten valores más grandes que sean múltiplos de un minuto, por ejemplo, 240 o 300 segundos. Si se proporciona un valor no válido, se mostrará un error.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

trigger

object (Trigger)

Es la cantidad o el porcentaje de series temporales para las que se debe mantener la comparación para que se active la condición. Si no se especifica, la condición se activará si la comparación es verdadera para cualquiera de las series temporales que se identificaron con filter y aggregations.

LogMatch

Representación JSON
{
  "filter": string,
  "labelExtractors": {
    string: string,
    ...
  }
}
Campos
filter

string

Obligatorio. Es un filtro basado en registros. Consulta Consultas de registros avanzadas para saber cómo se debe crear este filtro.

labelExtractors

map (key: string, value: string)

Es opcional. Es un mapa de una clave de etiqueta a una expresión de extractor, que se usa para extraer el valor de esta clave de etiqueta. Cada entrada de este mapa es una especificación de cómo se deben extraer los datos de las entradas de registro que coinciden con filter. Cada combinación de valores extraídos se trata como una regla independiente a los efectos de activar notificaciones. Las claves de etiquetas y los valores correspondientes se pueden usar en las notificaciones que genera esta condición.

Consulta la documentación sobre las métrica basada en registros valueExtractor para obtener información sobre la sintaxis y ejemplos.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

LabelExtractorsEntry

Representación JSON
{
  "key": string,
  "value": string
}
Campos
key

string

value

string

MonitoringQueryLanguageCondition

Representación JSON
{
  "query": string,
  "duration": string,
  "trigger": {
    object (Trigger)
  },
  "evaluationMissingData": enum (EvaluationMissingData)
}
Campos
query

string

Consulta del lenguaje de consultas de Monitoring que genera un flujo booleano.

duration

string (Duration format)

Es opcional. Es la cantidad de tiempo durante la que una serie temporal debe incumplir el límite para considerarse con fallas. Actualmente, solo se admiten valores que son múltiplos de un minuto, p.ej., 0, 60, 120 o 300 segundos. Si se proporciona un valor no válido, se mostrará un error. Cuando elijas una duración, es útil tener en cuenta la frecuencia de los datos subyacentes de la serie temporal (que también puede verse afectada por cualquier alineación especificada en el campo aggregations). Una buena duración es lo suficientemente larga como para que un solo valor atípico no genere alertas espurias, pero lo suficientemente corta como para que los estados no saludables se detecten y se generen alertas rápidamente. El valor predeterminado es cero.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

trigger

object (Trigger)

Es la cantidad o el porcentaje de series temporales para las que se debe mantener la comparación para que se active la condición. Si no se especifica, la condición se activará si la comparación es verdadera para cualquiera de las series temporales que se identificaron con filter y aggregations, o con la proporción, si se especifican denominator_filter y denominator_aggregations.

evaluationMissingData

enum (EvaluationMissingData)

Es un control de condición que determina cómo se evalúan las condiciones de umbral de métrica cuando dejan de llegar datos.

PrometheusQueryLanguageCondition

Representación JSON
{
  "query": string,
  "duration": string,
  "evaluationInterval": string,
  "labels": {
    string: string,
    ...
  },
  "ruleGroup": string,
  "alertRule": string,
  "disableMetricValidation": boolean
}
Campos
query

string

Obligatorio. Es la expresión PromQL que se evaluará. En cada ciclo de evaluación, esta expresión se evalúa en el momento actual, y todas las series temporales resultantes se convierten en alertas pendientes o activadas. Este campo no puede estar vacío.

duration

string (Duration format)

Es opcional. Las alertas se consideran activadas una vez que la expresión de PromQL se evaluó como “verdadera” durante este período. Las alertas cuya expresión de PromQL no se evaluó como “verdadera” durante el tiempo suficiente se consideran pendientes. Debe ser una duración no negativa o faltar. Este campo es opcional. Su valor predeterminado es cero.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

evaluationInterval

string (Duration format)

Es opcional. Con qué frecuencia se debe evaluar esta regla. Debe ser un múltiplo positivo de 30 segundos o no estar presente. Este campo es opcional. Su valor predeterminado es 30 segundos. Si este PrometheusQueryLanguageCondition se generó a partir de una regla de alerta de Prometheus, este valor se debe tomar del grupo de reglas adjunto.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

labels

map (key: string, value: string)

Es opcional. Son las etiquetas que se agregarán o reemplazarán en el resultado de la consulta de PromQL. Los nombres de las etiquetas deben ser válidos. Los valores de las etiquetas se pueden generar a partir de plantillas con variables. Los únicos nombres de variables disponibles son los nombres de las etiquetas en el resultado de PromQL, incluidos "__name__" y "value". "labels" puede estar vacío.

Un objeto que contiene una lista de pares "key": value. Ejemplo: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

ruleGroup

string

Es opcional. Es el nombre del grupo de reglas de esta alerta en el archivo de configuración de Prometheus correspondiente.

Es posible que algunas herramientas externas requieran que este campo se complete correctamente para hacer referencia al archivo de configuración original de Prometheus. El nombre del grupo de reglas y el nombre de la alerta son necesarios para actualizar las AlertPolicies pertinentes en caso de que la definición del grupo de reglas cambie en el futuro.

Este campo es opcional. Si este campo no está vacío, debe contener una cadena UTF-8 válida. Este campo no puede superar los 2,048 caracteres Unicode de longitud.

alertRule

string

Es opcional. Es el nombre de la regla de alerta de esta alerta en el archivo de configuración de Prometheus correspondiente.

Es posible que algunas herramientas externas requieran que este campo se complete correctamente para hacer referencia al archivo de configuración original de Prometheus. El nombre del grupo de reglas y el nombre de la alerta son necesarios para actualizar las AlertPolicies pertinentes en caso de que la definición del grupo de reglas cambie en el futuro.

Este campo es opcional. Si este campo no está vacío, debe ser un nombre de etiqueta de Prometheus válido. Este campo no puede superar los 2,048 caracteres Unicode de longitud.

disableMetricValidation

boolean

Es opcional. Indica si se debe inhabilitar la validación de la existencia de la métrica para esta condición.

Esto permite definir políticas de alertas sobre métricas que aún no existen, lo que mejora los flujos de trabajo avanzados de los clientes, como la configuración de políticas de alertas con Terraform.

Los usuarios con el rol de monitoring.alertPolicyViewer pueden ver el nombre de la métrica inexistente en la condición de la política de alertas.

LabelsEntry

Representación JSON
{
  "key": string,
  "value": string
}
Campos
key

string

value

string

SqlCondition

Representación JSON
{
  "query": string,

  // Union field schedule can be only one of the following:
  "minutes": {
    object (Minutes)
  },
  "hourly": {
    object (Hourly)
  },
  "daily": {
    object (Daily)
  }
  // End of list of possible types for union field schedule.

  // Union field evaluate can be only one of the following:
  "rowCountTest": {
    object (RowCountTest)
  },
  "booleanTest": {
    object (BooleanTest)
  }
  // End of list of possible types for union field evaluate.
}
Campos
query

string

Obligatorio. Es la consulta en SQL de Log Analytics que se ejecutará, como una cadena. La consulta debe cumplir con la forma requerida. Específicamente, la búsqueda no debe intentar filtrar la entrada por tiempo. Se aplicará automáticamente un filtro para filtrar la entrada, de modo que la consulta reciba todas las filas recibidas desde la última vez que se ejecutó.

Por ejemplo, la siguiente consulta extrae todas las entradas de registro que contienen una solicitud HTTP:

SELECT
  timestamp, log_name, severity, http_request, resource, labels
FROM
  my-project.global._Default._AllLogs
WHERE
  http_request IS NOT NULL
Campo de unión schedule. El programa indica la frecuencia con la que se debe ejecutar la consulta. schedule puede ser solo uno de los parámetros siguientes:
minutes

object (Minutes)

Programa la consulta para que se ejecute cada cierta cantidad de minutos.

hourly

object (Hourly)

Programa la consulta para que se ejecute cada cierta cantidad de horas.

daily

object (Daily)

Programa la consulta para que se ejecute cada cierta cantidad de días.

Campo de unión evaluate. Es la prueba que se ejecutará en el conjunto de resultados de SQL. evaluate puede ser solo uno de los parámetros siguientes:
rowCountTest

object (RowCountTest)

Comprueba el recuento de filas en relación con un umbral.

booleanTest

object (BooleanTest)

Prueba el valor booleano en la columna indicada.

Minutos

Representación JSON
{
  "periodicity": integer
}
Campos
periodicity

integer

Obligatorio. Cantidad de minutos entre ejecuciones. El intervalo debe ser mayor o igual que 5 minutos y menor o igual que 1,440 minutos.

Cada hora

Representación JSON
{
  "periodicity": integer,

  // Union field _minute_offset can be only one of the following:
  "minuteOffset": integer
  // End of list of possible types for union field _minute_offset.
}
Campos
periodicity

integer

Obligatorio. Cantidad de horas entre ejecuciones. Debe ser mayor o igual que 1 hora y menor o igual que 48 horas.

Campo de unión _minute_offset.

_minute_offset puede ser una de las siguientes opciones:

minuteOffset

integer

Es opcional. Cantidad de minutos después de la hora (en UTC) para ejecutar la consulta. Debe ser mayor o igual que 0 minutos y menor o igual que 59 minutos. Si no se especifica, se usa un desplazamiento arbitrario.

Diario

Representación JSON
{
  "periodicity": integer,
  "executionTime": {
    object (TimeOfDay)
  }
}
Campos
periodicity

integer

Obligatorio. Cantidad de días entre ejecuciones. Debe ser mayor o igual a 1 día y menor o igual a 31 días.

executionTime

object (TimeOfDay)

Es opcional. Hora del día (en UTC) en la que se debe ejecutar la consulta. Si no se especifica, el servidor elige una hora del día arbitraria y ejecuta la consulta a la misma hora todos los días.

TimeOfDay

Representación JSON
{
  "hours": integer,
  "minutes": integer,
  "seconds": integer,
  "nanos": integer
}
Campos
hours

integer

Horas de un día en formato de 24 horas. Debe ser mayor o igual que 0 y, por lo general, debe ser menor o igual que 23. Una API puede permitir el valor “24:00:00” para casos como el horario de cierre de empresas.

minutes

integer

Minutos de una hora. Debe ser mayor o igual que 0 y menor o igual que 59.

seconds

integer

Segundos de un minuto. Debe ser mayor o igual que 0 y, por lo general, debe ser menor o igual que 59. Una API puede permitir el valor 60 si permite segundos bisiestos.

nanos

integer

Fracciones de segundos, en nanosegundos. Debe ser mayor o igual que 0 y menor o igual que 999,999,999.

RowCountTest

Representación JSON
{
  "comparison": enum (ComparisonType),
  "threshold": string
}
Campos
comparison

enum (ComparisonType)

Obligatorio. Es la comparación que se aplicará entre la cantidad de filas que devuelve la consulta y el umbral.

threshold

string (int64 format)

Obligatorio. Valor con el que se comparará el recuento de filas.

BooleanTest

Representación JSON
{
  "column": string
}
Campos
column

string

Obligatorio. Es el nombre de la columna que contiene el valor booleano. Si el valor de una fila es NULL, se ignora esa fila.

BoolValue

Representación JSON
{
  "value": boolean
}
Campos
value

boolean

Es el valor booleano.

Estado

Representación JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
Campos
code

integer

El código de estado, que debe ser un valor enum de google.rpc.Code.

message

string

Un mensaje de error dirigido al desarrollador, que debe estar en inglés. Cualquier mensaje de error dirigido al usuario debe localizarse y enviarse al campo google.rpc.Status.details; o el cliente debe localizarlo.

details[]

object

Una lista de mensajes que contienen los detalles del error. Hay un conjunto común de tipos de mensajes para que usen las API.

Un objeto que contiene campos de un tipo arbitrario. Un campo adicional "@type" contiene una URI que identifica el tipo. Ejemplo: { "id": 1234, "@type": "types.example.com/standard/id" }.

Cualquiera

Representación JSON
{
  "typeUrl": string,
  "value": string
}
Campos
typeUrl

string

Identifica el tipo del mensaje serializado de Protobuf con una referencia de URI que consta de un prefijo que termina en una barra y el nombre de tipo completo.

Ejemplo: type.googleapis.com/google.protobuf.StringValue

Esta cadena debe contener al menos un carácter /, y el contenido después del último / debe ser el nombre completamente calificado del tipo en formato canónico, sin un punto inicial. No escribas un esquema en estas referencias de URI para que los clientes no intenten comunicarse con ellas.

El prefijo es arbitrario, y se espera que las implementaciones de Protobuf simplemente quiten todo hasta el último / inclusive para identificar el tipo. type.googleapis.com/ es un prefijo predeterminado común que requieren algunas implementaciones heredadas. Este prefijo no indica el origen del tipo, y no se espera que los URIs que lo contienen respondan a ninguna solicitud.

Todas las cadenas de URL de tipo deben ser referencias URI legales con la restricción adicional (para el formato de texto) de que el contenido de la referencia solo debe constar de caracteres alfanuméricos, escapes codificados como porcentaje y caracteres del siguiente conjunto (sin incluir las comillas invertidas externas): /-.~_!$&()*+,;=. A pesar de que permitimos la codificación de porcentaje, las implementaciones no deben decodificarlas para evitar confusiones con los analizadores existentes. Por ejemplo, se debe rechazar type.googleapis.com%2FFoo.

En el diseño original de Any, se consideró la posibilidad de iniciar un servicio de resolución de tipos en estas URLs de tipo, pero Protobuf nunca implementó uno y considera que contactar estas URLs es problemático y un posible problema de seguridad. No intentes comunicarte con URLs de tipo.

value

string (bytes format)

Contiene una serialización de Protobuf del tipo que describe type_url.

Es una cadena codificada en Base64.

MutationRecord

Representación JSON
{
  "mutateTime": string,
  "mutatedBy": string
}
Campos
mutateTime

string (Timestamp format)

Cuándo se produjo el cambio

Usa el formato RFC 3339, en el que el resultado generado siempre usará la normalización Z y los dígitos fraccionarios 0, 3, 6 o 9. También se aceptan otras compensaciones que no sean “Z”. Ejemplos: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

mutatedBy

string

La dirección de correo electrónico del usuario que realiza el cambio

Marca de tiempo

Representación JSON
{
  "seconds": string,
  "nanos": integer
}
Campos
seconds

string (int64 format)

Representa los segundos de la hora UTC desde la época de Unix 1970-01-01T00:00:00Z. Debe estar entre -62135596800 y 253402300799 inclusive (lo que corresponde a 0001-01-01T00:00:00Z a 9999-12-31T23:59:59Z).

nanos

integer

Fracciones no negativas de un segundo a una resolución de nanosegundos. Este campo es la parte de la duración en nanosegundos, no una alternativa a los segundos. Los valores de segundos negativos con fracciones deben tener valores nanos no negativos que se cuentan hacia adelante en el tiempo. Debe ser un valor entre 0 y 999,999,999, inclusive.

AlertStrategy

Representación JSON
{
  "notificationRateLimit": {
    object (NotificationRateLimit)
  },
  "notificationPrompts": [
    enum (NotificationPrompt)
  ],
  "autoClose": string,
  "notificationChannelStrategy": [
    {
      object (NotificationChannelStrategy)
    }
  ]
}
Campos
notificationRateLimit

object (NotificationRateLimit)

Se requiere para las políticas de alertas basadas en registros, es decir, las políticas con una condición LogMatch.

Este límite no se implementa para las políticas de alertas que no tienen una condición LogMatch.

notificationPrompts[]

enum (NotificationPrompt)

En el caso de las políticas de alertas basadas en registros, el mensaje de notificación siempre es [OPENED]. En el caso de las políticas de alertas que no se basan en registros, los mensajes de notificación pueden ser [OPENED] o [OPENED, CLOSED].

autoClose

string (Duration format)

Si una política de alertas que estaba activa no tiene datos durante este tiempo, se cerrarán todos los incidentes abiertos.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

notificationChannelStrategy[]

object (NotificationChannelStrategy)

Controla cómo se enviarán las notificaciones por canal.

NotificationRateLimit

Representación JSON
{
  "period": string
}
Campos
period

string (Duration format)

No más de una notificación por period

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

NotificationChannelStrategy

Representación JSON
{
  "notificationChannelNames": [
    string
  ],
  "renotifyInterval": string
}
Campos
notificationChannelNames[]

string

Es el nombre completo del recurso de REST para los canales de notificación a los que se aplica esta configuración. Cada uno de estos elementos corresponde al campo name de uno de los objetos NotificationChannel a los que se hace referencia en el campo notification_channels de esta AlertPolicy. El formato es el siguiente:

projects/[PROJECT_ID_OR_NUMBER]/notificationChannels/[CHANNEL_ID]
renotifyInterval

string (Duration format)

Es la frecuencia con la que se envían notificaciones de recordatorio para los incidentes abiertos. El valor debe ser de entre 30 minutos y 24 horas.

Una duración en segundos con hasta nueve dígitos decimales, que terminan en “s”. Ejemplo: "3.5s".

Alineador

El Aligner especifica la operación que se aplicará a los datos de cada período de alineación en una serie temporal. Excepto por ALIGN_NONE, que especifica que no se aplique ninguna operación, cada operación de alineación reemplaza el conjunto de valores de datos en cada período de alineación por un solo valor: el resultado de aplicar la operación a los valores de datos. Una serie temporal alineada tiene un solo valor de datos al final de cada alignment_period.

Una operación de alineación también puede cambiar el tipo de datos de los valores. Por ejemplo, si aplicas una operación de recuento a valores booleanos, los datos value_type en la serie temporal original son BOOLEAN, pero el value_type en el resultado alineado es INT64.

Enums
ALIGN_NONE No hay alineación. Se devuelven los datos sin procesar. No es válido si se solicita una reducción en varias series. El value_type del resultado es el mismo que el value_type de la entrada.
ALIGN_DELTA

Alinear y convertir a DELTA El resultado es delta = y1 - y0.

Esta alineación es válida para las métricas CUMULATIVE y DELTA. Si el período de alineación seleccionado genera períodos sin datos, el valor alineado para ese período se crea por interpolación. El value_type del resultado alineado es el mismo que el value_type de la entrada.

ALIGN_RATE

Alinear y convertir a una tasa El resultado se calcula como rate = (y1 - y0)/(t1 - t0), o "delta a lo largo del tiempo". Piensa en este alineador como si proporcionara la pendiente de la línea que pasa por el valor al principio y al final de alignment_period.

Este alineador es válido para las métricas CUMULATIVE y DELTA con valores numéricos. Si el período de alineación seleccionado genera períodos sin datos, el valor alineado para ese período se crea por interpolación. El resultado es una métrica de GAUGE con value_type DOUBLE.

Si, con "tasa", te refieres a "cambio porcentual", consulta el alineador de ALIGN_PERCENT_CHANGE.

ALIGN_INTERPOLATE Alinea los datos interpolando entre los puntos adyacentes alrededor del límite del período de alineación. Este alineador es válido para las métricas de GAUGE con valores numéricos. El value_type del resultado alineado es el mismo que el value_type de la entrada.
ALIGN_NEXT_OLDER Para la alineación, se mueve el dato más reciente antes del final del período de alineación al límite que se encuentra al final del período de alineación. Este alineador es válido para las métricas de GAUGE. El value_type del resultado alineado es el mismo que el value_type de la entrada.
ALIGN_MIN Alinea la serie temporal devolviendo el valor mínimo en cada período de alineación. Este alineador es válido para las métricas GAUGE y DELTA con valores numéricos. El value_type del resultado alineado es el mismo que el value_type de la entrada.
ALIGN_MAX Alinea la serie temporal devolviendo el valor máximo en cada período de alineación. Este alineador es válido para las métricas GAUGE y DELTA con valores numéricos. El value_type del resultado alineado es el mismo que el value_type de la entrada.
ALIGN_MEAN Alinea la serie temporal devolviendo el valor medio en cada período de alineación. Este alineador es válido para las métricas GAUGE y DELTA con valores numéricos. El value_type del resultado alineado es DOUBLE.
ALIGN_COUNT Alinea la serie temporal mostrando la cantidad de valores en cada período de alineación. Este alineador es válido para las métricas GAUGE y DELTA con valores numéricos o booleanos. El value_type del resultado alineado es INT64.
ALIGN_SUM Alinea la serie temporal devolviendo la suma de los valores en cada período de alineación. Este alineador es válido para las métricas GAUGE y DELTA con valores numéricos y de distribución. El value_type del resultado alineado es el mismo que el value_type de la entrada.
ALIGN_STDDEV Alinea la serie temporal devolviendo la desviación estándar de los valores en cada período de alineación. Este alineador es válido para las métricas GAUGE y DELTA con valores numéricos. El value_type del resultado es DOUBLE.
ALIGN_COUNT_TRUE Alinea la serie temporal devolviendo la cantidad de valores True en cada período de alineación. Este alineador es válido para las métricas de GAUGE con valores booleanos. El value_type del resultado es INT64.
ALIGN_COUNT_FALSE Alinea la serie temporal devolviendo la cantidad de valores False en cada período de alineación. Este alineador es válido para las métricas de GAUGE con valores booleanos. El value_type del resultado es INT64.
ALIGN_FRACTION_TRUE Alinea la serie temporal devolviendo la proporción de la cantidad de valores de True con respecto a la cantidad total de valores en cada período de alineación. Este alineador es válido para las métricas de GAUGE con valores booleanos. El valor de salida está en el rango [0.0, 1.0] y tiene value_type DOUBLE.
ALIGN_PERCENTILE_99 Alinea la serie temporal con la agregación de percentiles. El dato resultante en cada período de alineación es el percentil 99 de todos los datos del período. Este alineador es válido para las métricas GAUGE y DELTA con valores de distribución. El resultado es una métrica de GAUGE con value_type DOUBLE.
ALIGN_PERCENTILE_95 Alinea la serie temporal con la agregación de percentiles. El dato resultante en cada período de alineación es el percentil 95 de todos los datos del período. Este alineador es válido para las métricas GAUGE y DELTA con valores de distribución. El resultado es una métrica de GAUGE con value_type DOUBLE.
ALIGN_PERCENTILE_50 Alinea la serie temporal con la agregación de percentiles. El dato resultante en cada período de alineación es el percentil 50 de todos los datos del período. Este alineador es válido para las métricas GAUGE y DELTA con valores de distribución. El resultado es una métrica de GAUGE con value_type DOUBLE.
ALIGN_PERCENTILE_05 Alinea la serie temporal con la agregación de percentiles. El dato resultante en cada período de alineación es el percentil 5 de todos los datos del período. Este alineador es válido para las métricas GAUGE y DELTA con valores de distribución. El resultado es una métrica de GAUGE con value_type DOUBLE.
ALIGN_PERCENT_CHANGE

Alinear y convertir a un cambio porcentual Este alineador es válido para las métricas GAUGE y DELTA con valores numéricos. Esta alineación devuelve ((current - previous)/previous) * 100, donde el valor de previous se determina según el alignment_period.

Si los valores de current y previous son 0, el valor que se muestra es 0. Si solo previous es 0, el valor devuelto es infinito.

En cada punto del período de alineación anterior al cálculo mencionado, se calcula una media móvil de 10 minutos para suavizar la métrica y evitar falsos positivos a partir de picos de muy corta duración. La media móvil solo se aplica a los datos cuyos valores son >= 0. Los valores < 0 se consideran como datos faltantes y se ignoran. Si bien esta alineación acepta las métricas de DELTA, se debe tener especial cuidado para garantizar que los valores de la métrica siempre sean positivos. El resultado es una métrica de GAUGE con value_type DOUBLE.

Reductor

Una operación de reductor describe cómo agregar datos de varias series temporales en una sola, en la que el valor de cada dato de la serie resultante es una función de todos los valores ya alineados en las series temporales de entrada.

Enums
REDUCE_NONE No hay reducción entre series temporales. Se muestra el resultado de Aligner.
REDUCE_MEAN Reduce el valor calculando la media en las series temporales para cada período de alineación. Este reductor es válido para las métricas DELTA y GAUGE con valores numéricos o de distribución. El value_type del resultado es DOUBLE.
REDUCE_MIN Reduce el valor calculando el valor mínimo en las series temporales para cada período de alineación. Este reductor es válido para las métricas DELTA y GAUGE con valores numéricos. El value_type del resultado es el mismo que el value_type de la entrada.
REDUCE_MAX Reduce el valor calculando el valor máximo en las series temporales para cada período de alineación. Este reductor es válido para las métricas DELTA y GAUGE con valores numéricos. El value_type del resultado es el mismo que el value_type de la entrada.
REDUCE_SUM Reduce mediante el cálculo de la suma en las series temporales para cada período de alineación. Este reductor es válido para las métricas DELTA y GAUGE con valores numéricos y de distribución. El value_type del resultado es el mismo que el value_type de la entrada.
REDUCE_STDDEV Reduce el valor calculando la desviación estándar en las series temporales para cada período de alineación. Este reductor es válido para las métricas DELTA y GAUGE con valores numéricos o de distribución. El value_type del resultado es DOUBLE.
REDUCE_COUNT Reduce el valor calculando la cantidad de datos en las series temporales para cada período de alineación. Este reductor es válido para las métricas DELTA y GAUGE de value_type numéricos, booleanos, de distribución y de cadena. El value_type del resultado es INT64.
REDUCE_COUNT_TRUE Reduce el valor calculando la cantidad de datos con valor True en las series temporales para cada período de alineación. Este reductor es válido para las métricas DELTA y GAUGE del tipo booleano value_type. El value_type del resultado es INT64.
REDUCE_COUNT_FALSE Reduce el valor calculando la cantidad de datos con valor False en las series temporales para cada período de alineación. Este reductor es válido para las métricas DELTA y GAUGE del tipo booleano value_type. El value_type del resultado es INT64.
REDUCE_FRACTION_TRUE Reduce el cálculo de la proporción entre la cantidad de datos con valores True y la cantidad total de datos para cada período de alineación. Este reductor es válido para las métricas DELTA y GAUGE del valor booleano value_type. El valor de salida está en el rango [0.0, 1.0] y tiene value_type DOUBLE.
REDUCE_PERCENTILE_99 Reduce el valor calculando el percentil 99 de los datos en las series temporales para cada período de alineación. Este reductor es válido para las métricas GAUGE y DELTA de tipo numérico y de distribución. El valor de la salida es DOUBLE.
REDUCE_PERCENTILE_95 Reduce el valor calculando el percentil 95 de los datos en las series temporales para cada período de alineación. Este reductor es válido para las métricas GAUGE y DELTA de tipo numérico y de distribución. El valor de la salida es DOUBLE.
REDUCE_PERCENTILE_50 Reduce el valor calculando el percentil 50 de los datos en las series temporales para cada período de alineación. Este reductor es válido para las métricas GAUGE y DELTA de tipo numérico y de distribución. El valor de la salida es DOUBLE.
REDUCE_PERCENTILE_05 Reduce mediante el cálculo del percentil 5 de los datos en las series temporales para cada período de alineación. Este reductor es válido para las métricas GAUGE y DELTA de tipo numérico y de distribución. El valor de la salida es DOUBLE.

ComparisonType

Especifica una relación de ordenamiento en dos argumentos, llamados left y right.

Enums
COMPARISON_UNSPECIFIED No se especifica ninguna relación de orden.
COMPARISON_GT Es verdadero si el argumento de la izquierda es mayor que el de la derecha.
COMPARISON_GE Es verdadero si el argumento de la izquierda es mayor o igual que el argumento de la derecha.
COMPARISON_LT Es verdadero si el argumento de la izquierda es menor que el de la derecha.
COMPARISON_LE Es verdadero si el argumento de la izquierda es menor o igual que el argumento de la derecha.
COMPARISON_EQ Es verdadero si el argumento de la izquierda es igual al argumento de la derecha.
COMPARISON_NE Es verdadero si el argumento de la izquierda no es igual al argumento de la derecha.

EvaluationMissingData

Es un control de condición que determina cómo se evalúan las condiciones de umbral de métrica cuando dejan de llegar datos. Este control no afecta las políticas de ausencia de métricas.

Enums
EVALUATION_MISSING_DATA_UNSPECIFIED Es una opción de evaluación de datos faltantes sin especificar. Equivale a EVALUATION_MISSING_DATA_NO_OP.
EVALUATION_MISSING_DATA_INACTIVE Si no hay datos para evaluar la condición, evalúala como falsa.
EVALUATION_MISSING_DATA_ACTIVE Si no hay datos para evaluar la condición, evalúala como verdadera.
EVALUATION_MISSING_DATA_NO_OP No evalúes la condición en ningún valor si no hay datos.

ConditionCombinerType

Operadores para combinar condiciones.

Enums
COMBINE_UNSPECIFIED Es un combinador no especificado.
AND Combina condiciones con el operador lógico AND. Solo se crea un incidente si se cumplen todas las condiciones de forma simultánea. Este combinador se satisface si se cumplen todas las condiciones, incluso si se cumplen en recursos completamente diferentes.
OR Combina condiciones con el operador lógico OR. Se crea un incidente si se cumple alguna de las condiciones enumeradas.
AND_WITH_MATCHING_RESOURCE Combina condiciones con el operador lógico AND, pero, a diferencia de la opción AND normal, se crea un incidente solo si se cumplen todas las condiciones de forma simultánea en al menos un recurso.

NotificationPrompt

Controla cuándo se enviarán las notificaciones.

Enums
NOTIFICATION_PROMPT_UNSPECIFIED No se especificó ninguna estrategia. Se trata como error.
OPENED Recibir notificaciones cuando se abre un incidente
CLOSED Recibir notificaciones cuando se cierre un incidente

Gravedad

Es una enumeración del nivel de gravedad posible para una política de alertas.

Enums
SEVERITY_UNSPECIFIED No se especificó la gravedad. Este es el valor predeterminado.
CRITICAL Este es el nivel de gravedad más alto. Usa esta opción si el problema podría causar daños o tiempo de inactividad significativos.
ERROR Este es el nivel de gravedad medio. Usa esta opción si el problema podría causar daños menores o tiempo de inactividad.
WARNING Este es el nivel de gravedad más bajo. Usa esta opción si el problema no causa daños ni tiempo de inactividad, pero podría generar un problema en el futuro.

Anotaciones de herramientas

Sugerencia destructiva: ❌ | Sugerencia idempotente: ✅ | Sugerencia de solo lectura: ✅ | Sugerencia de mundo abierto: ❌