MCP Tools Reference: monitoring.googleapis.com

Strumento: get_alert_policy

Utilizza questo strumento come principale per ottenere informazioni su una specifica criterio di avviso. I criteri di avviso definiscono le condizioni in base alle quali vuoi ricevere una notifica in caso di problemi con i tuoi servizi. Ciò è utile per comprendere i dettagli di una configurazione di avviso specifica.

Il seguente esempio mostra come utilizzare curl per richiamare lo strumento MCP get_alert_policy.

Curl Request
                  
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
}'
                

Schema di input

Il protocollo per la richiesta GetAlertPolicy.

GetAlertPolicyRequest

Rappresentazione JSON
{
  "name": string
}
Campi
name

string

Obbligatorio. La criterio di avviso da recuperare. Il formato è:

projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]

Schema di output

Una descrizione delle condizioni in cui un aspetto del sistema è considerato "non integro" e dei modi per comunicare questo stato a persone o servizi. Per una panoramica dei criteri di avviso, consulta la pagina Introduzione agli avvisi.

AlertPolicy

Rappresentazione 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)
}
Campi
name

string

Identificatore. Obbligatorio se la policy esiste. Il nome della risorsa per questo criterio. Il formato è:

projects/[PROJECT_ID_OR_NUMBER]/alertPolicies/[ALERT_POLICY_ID]

[ALERT_POLICY_ID] viene assegnato da Cloud Monitoring al momento della creazione del criterio. Quando chiami il metodo alertPolicies.create, non includere il campo name nel criterio di avviso passato come parte della richiesta.

displayName

string

Un nome breve o una frase utilizzati per identificare il criterio in dashboard, notifiche e incidenti. Per evitare confusione, non utilizzare lo stesso nome visualizzato per più criteri nello stesso progetto. Il nome è limitato a 512 caratteri Unicode.

La convenzione per display_name di una PrometheusQueryLanguageCondition è "{nome gruppo di regole}/{nome avviso}", dove {nome gruppo di regole} e {nome avviso} devono essere presi dal file di configurazione Prometheus corrispondente. Questa convenzione non viene applicata. In ogni caso, display_name non è una chiave univoca di AlertPolicy.

documentation

object (Documentation)

Documentazione inclusa nelle notifiche e negli incidenti relativi a questa norma. La best practice prevede che la documentazione includa informazioni per aiutare i risponditori a comprendere, mitigare, riassegnare e correggere i problemi sottostanti rilevati dalla criterio di avviso. I canali di notifica con capacità limitata potrebbero non mostrare questa documentazione.

userLabels

map (key: string, value: string)

Dati chiave/valore forniti dall'utente da utilizzare per organizzare e identificare gli oggetti AlertPolicy.

Il campo può contenere fino a 64 voci. Ogni chiave e valore è limitato a 63 caratteri Unicode o 128 byte, a seconda di quale sia il limite inferiore. Le etichette e i valori possono contenere solo lettere minuscole, numeri, trattini bassi e trattini. Le chiavi devono iniziare con una lettera.

Tieni presente che Prometheus {alert name} è un nome di etichetta Prometheus valido, mentre Prometheus {rule group} è una stringa UTF-8 senza limitazioni. Ciò significa che non possono essere archiviati così come sono nelle etichette utente, perché potrebbero contenere caratteri non consentiti nei valori delle etichette utente.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

conditions[]

object (Condition)

Un elenco di condizioni per la policy. Le condizioni vengono combinate con AND o OR in base al campo combiner. Se le condizioni combinate restituiscono il valore true, viene creato un incidente. Un criterio può avere da una a sei condizioni. Se è presente condition_time_series_query_language, deve essere l'unico condition. Se è presente condition_monitoring_query_language, deve essere l'unico condition.

combiner

enum (ConditionCombinerType)

Come combinare i risultati di più condizioni per determinare se deve essere aperto un incidente. Se è presente condition_time_series_query_language, questo valore deve essere COMBINE_UNSPECIFIED.

enabled

boolean

Indica se il criterio è attivato. In scrittura, l'interpretazione predefinita se non impostata è che il criterio è abilitato. In lettura, i client non devono fare alcuna ipotesi sullo stato se non è stato compilato. Il campo deve essere sempre compilato nelle operazioni List e Get, a meno che non sia stata specificata una proiezione del campo che lo rimuove.

validity

object (Status)

Descrizione in sola lettura del motivo per cui la criterio di avviso non è valida. Questo campo viene impostato solo quando la criterio di avviso non è valida. Una criterio di avviso non valida non genererà incidenti.

notificationChannels[]

string

Identifica i canali di notifica a cui devono essere inviate le notifiche quando vengono aperti o chiusi incidenti o quando si verificano nuove violazioni in un incidente già aperto. Ogni elemento di questo array corrisponde al campo name di ciascuno degli oggetti NotificationChannel restituiti dal metodo ListNotificationChannels. Il formato delle voci in questo campo è:

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

object (MutationRecord)

Un record di sola lettura della creazione della criterio di avviso. Se fornito in una chiamata per la creazione o l'aggiornamento, questo campo verrà ignorato.

mutationRecord

object (MutationRecord)

Un record di sola lettura della modifica più recente apportata al criterio di avviso. Se fornito in una chiamata per la creazione o l'aggiornamento, questo campo verrà ignorato.

alertStrategy

object (AlertStrategy)

Controllo della modalità di notifica dei canali di notifica di questo criterio di avviso.

severity

enum (Severity)

Facoltativo. La gravità di una criterio di avviso indica l'importanza degli incidenti generati da tale policy. Il livello di gravità verrà visualizzato nella pagina dei dettagli dell'incidente e nelle notifiche.

Documentazione

Rappresentazione JSON
{
  "content": string,
  "mimeType": string,
  "subject": string,
  "links": [
    {
      object (Link)
    }
  ]
}
Campi
content

string

Il corpo della documentazione, interpretato in base a mime_type. Il contenuto non può superare gli 8192 caratteri Unicode e i 10.240 byte se codificato in formato UTF-8, a seconda di quale sia il limite inferiore. Questo testo può essere basato su un modello utilizzando le variabili.

mimeType

string

Il formato del campo content. Al momento è supportato solo il valore "text/markdown". Per saperne di più, consulta la pagina Markdown.

subject

string

Facoltativo. L'oggetto della notifica. La riga dell'oggetto non può superare i 10.240 byte. Nelle notifiche generate da questa norma, i contenuti della riga dell'oggetto dopo l'espansione delle variabili verranno troncati a 255 byte o meno al più tardi al limite del carattere UTF-8. Il limite di 255 byte è consigliato in questo thread. Si tratta sia del limite imposto da alcuni prodotti di biglietteria di terze parti sia di una pratica comune definire i campi di testo nei database come VARCHAR(255).

I contenuti dell'oggetto possono essere creati utilizzando variabili. Se questo campo è mancante o vuoto, verrà generata una riga dell'oggetto predefinita.

links[]

object (Link)

Facoltativo. Link a contenuti come playbook, repository e altre risorse. Questo campo può contenere fino a tre voci.

Rappresentazione JSON
{
  "displayName": string,
  "url": string
}
Campi
displayName

string

Un nome visualizzato breve per il link. Il nome visualizzato non deve essere vuoto o superare i 63 caratteri. Esempio: "playbook".

url

string

L'URL di una pagina web. Un URL può essere creato come modello utilizzando variabili nel percorso o nei parametri di ricerca. La lunghezza totale di un URL non deve superare i 2083 caratteri prima e dopo l'espansione delle variabili. Esempio: "https://my_domain.com/playbook?name=${resource.name}"

UserLabelsEntry

Rappresentazione JSON
{
  "key": string,
  "value": string
}
Campi
key

string

value

string

Condizione

Rappresentazione 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.
}
Campi
name

string

Obbligatorio se la condizione esiste. Il nome della risorsa univoco per questa condizione. Il formato è:

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

[CONDITION_ID] viene assegnato da Cloud Monitoring quando la condizione viene creata nell'ambito di un criterio di avviso nuovo o aggiornato.

Quando chiami il metodo alertPolicies.create, non includere il campo name nelle condizioni della criterio di avviso richiesta. Cloud Monitoring crea gli identificatori delle condizioni e li include nella nuova policy.

Quando chiami il metodo alertPolicies.update per aggiornare una policy, l'inclusione di una condizione name comporta l'aggiornamento della condizione esistente. Le condizioni senza nome vengono aggiunte alle norme aggiornate. Le condizioni esistenti vengono eliminate se non vengono aggiornate.

La best practice consiste nel conservare [CONDITION_ID] se apporti solo piccole modifiche, ad esempio alle soglie, alle durate o ai valori di attivazione delle condizioni. In caso contrario, considera la modifica come una nuova condizione e consenti l'eliminazione della condizione esistente.

displayName

string

Un nome breve o una frase utilizzati per identificare la condizione in dashboard, notifiche e incidenti. Per evitare confusione, non utilizzare lo stesso nome visualizzato per più condizioni nella stessa norma.

Campo unione condition. Verrà specificato solo uno dei seguenti tipi di condizione. condition può essere solo uno dei seguenti tipi:
conditionThreshold

object (MetricThreshold)

Una condizione che confronta una serie temporale con una soglia.

conditionAbsent

object (MetricAbsence)

Una condizione che verifica che una serie temporale continui a ricevere nuovi punti dati.

conditionMatchedLog

object (LogMatch)

Una condizione che verifica la presenza di messaggi di log che corrispondono a determinati vincoli. Se impostata, non possono essere presenti altre condizioni.

conditionMonitoringQueryLanguage

object (MonitoringQueryLanguageCondition)

Una condizione che utilizza Monitoring Query Language per definire gli avvisi.

conditionPrometheusQueryLanguage

object (PrometheusQueryLanguageCondition)

Una condizione che utilizza il linguaggio di query Prometheus per definire gli avvisi.

conditionSql

object (SqlCondition)

Una condizione che valuta periodicamente il risultato di una query SQL.

MetricThreshold

Rappresentazione 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)
}
Campi
filter

string

Obbligatorio. Un filtro che identifica le serie temporali da confrontare con la soglia.

Il filtro è simile a quello specificato nella richiesta ListTimeSeries (questa chiamata è utile per verificare le serie temporali che verranno recuperate / elaborate). Il filtro deve specificare il tipo di metrica e il tipo di risorsa. Se vuoi, puoi specificare le etichette delle risorse e delle metriche. Questo campo non deve superare i 2048 caratteri Unicode di lunghezza.

aggregations[]

object (Aggregation)

Specifica l'allineamento dei punti dati nelle singole serie temporali, nonché la modalità di combinazione delle serie temporali recuperate (ad esempio quando si aggregano più stream su ogni risorsa in un unico stream per ogni risorsa o quando si aggregano stream in tutti i membri di un gruppo di risorse). Più aggregazioni vengono applicate nell'ordine specificato.

Questo campo è simile a quello della richiesta ListTimeSeries. Ti consigliamo di utilizzare il metodo ListTimeSeries per eseguire il debug di questo campo.

denominatorFilter

string

Un filtro che identifica una serie temporale da utilizzare come denominatore di un rapporto che verrà confrontato con la soglia. Se viene specificato un denominator_filter, la serie temporale specificata dal campo filter verrà utilizzata come numeratore.

Il filtro deve specificare il tipo di metrica e, facoltativamente, può contenere limitazioni per il tipo di risorsa, le etichette delle risorse e le etichette delle metriche. Questo campo non può superare i 2048 caratteri Unicode di lunghezza.

denominatorAggregations[]

object (Aggregation)

Specifica l'allineamento dei punti dati nelle singole serie temporali selezionate da denominatorFilter, nonché la modalità di combinazione delle serie temporali recuperate (ad esempio quando si aggregano più stream su ogni risorsa in un unico stream per ogni risorsa o quando si aggregano stream in tutti i membri di un gruppo di risorse).

Quando si calcolano i rapporti, i campi aggregations e denominator_aggregations devono utilizzare lo stesso periodo di allineamento e produrre serie temporali con la stessa periodicità ed etichette.

forecastOptions

object (ForecastOptions)

Quando questo campo è presente, la condizione MetricThreshold prevede se la serie temporale violerà la soglia entro il periodo forecast_horizon. Quando questo campo non è impostato, MetricThreshold verifica il valore corrente della serie temporale rispetto alla soglia.

comparison

enum (ComparisonType)

Il confronto da applicare tra le serie temporali (indicate da filter e aggregation) e la soglia (indicata da threshold_value). Il confronto viene applicato a ogni serie temporale, con la serie temporale sul lato sinistro e la soglia sul lato destro.

Al momento sono supportati solo COMPARISON_LT e COMPARISON_GT.

thresholdValue

number

Un valore con cui confrontare la serie temporale.

duration

string (Duration format)

Obbligatorio. Il periodo di tempo in cui una serie temporale deve violare la soglia per essere considerata non riuscita. Al momento sono supportati solo i valori che sono multipli di un minuto, ad esempio 0, 60, 120 o 300 secondi. Se viene fornito un valore non valido, verrà restituito un errore. Quando scegli una durata, è utile tenere presente la frequenza dei dati delle serie temporali sottostanti (che potrebbe essere influenzata anche da eventuali allineamenti specificati nel campo aggregations); una durata adeguata è sufficientemente lunga da evitare che un singolo outlier generi avvisi spuri, ma sufficientemente breve da rilevare e segnalare rapidamente gli stati non integri.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

trigger

object (Trigger)

Il numero/la percentuale di serie temporali per cui il confronto deve essere valido affinché la condizione venga attivata. Se non specificata, la condizione viene attivata se il confronto è true per una qualsiasi delle serie temporali identificate da filter e aggregations o dal rapporto, se sono specificati denominator_filter e denominator_aggregations.

evaluationMissingData

enum (EvaluationMissingData)

Un controllo delle condizioni che determina come vengono valutate le condizioni di soglia delle metriche quando i dati smettono di arrivare. Per utilizzare questo controllo, il valore del campo duration deve essere maggiore o uguale a 60 secondi.

Aggregazione

Rappresentazione JSON
{
  "alignmentPeriod": string,
  "perSeriesAligner": enum (Aligner),
  "crossSeriesReducer": enum (Reducer),
  "groupByFields": [
    string
  ]
}
Campi
alignmentPeriod

string (Duration format)

alignment_period specifica un intervallo di tempo, in secondi, utilizzato per dividere i dati in tutti i time series in blocchi di tempo coerenti. Questa operazione verrà eseguita prima che l'allineatore per serie possa essere applicato ai dati.

Il valore deve essere di almeno 60 secondi. Se viene specificato un allineatore per serie diverso da ALIGN_NONE, questo campo è obbligatorio o viene restituito un errore. Se non viene specificato alcun allineatore per serie o se viene specificato l'allineatore ALIGN_NONE, questo campo viene ignorato.

Il valore massimo di alignment_period è 104 settimane (2 anni) per i grafici e 90.000 secondi (25 ore) per i criteri di avviso.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

perSeriesAligner

enum (Aligner)

Un Aligner descrive come allineare temporalmente i punti dati di una singola serie temporale. Ad eccezione di ALIGN_NONE, tutti gli allineamenti raggruppano matematicamente tutti i punti dati di un alignment_period, generando un singolo punto dati per ogni alignment_period con timestamp finale alla fine del periodo.

Non tutte le operazioni di allineamento possono essere applicate a tutte le serie temporali. Le scelte valide dipendono da metric_kind e value_type della serie temporale originale. L'allineamento può modificare il metric_kind o il value_type della serie temporale.

Per eseguire la riduzione tra serie temporali, i dati delle serie temporali devono essere allineati. Se cross_series_reducer è specificato, allora per_series_aligner deve essere specificato e non uguale a ALIGN_NONE e alignment_period deve essere specificato; in caso contrario, viene restituito un errore.

crossSeriesReducer

enum (Reducer)

L'operazione di riduzione da utilizzare per combinare le serie temporali in un'unica serie temporale, in cui il valore di ogni punto dati della serie risultante è una funzione di tutti i valori già allineati nelle serie temporali di input.

Non tutte le operazioni di riduzione possono essere applicate a tutte le serie temporali. Le scelte valide dipendono da metric_kind e value_type della serie temporale originale. La riduzione può generare una serie temporale con un metric_kind o un value_type diverso rispetto alla serie temporale di input.

Per eseguire la riduzione delle serie temporali incrociate, i dati delle serie temporali devono prima essere allineati (vedi per_series_aligner). Se cross_series_reducer è specificato, anche per_series_aligner deve essere specificato e non deve essere ALIGN_NONE. È necessario specificare anche un alignment_period, altrimenti viene restituito un errore.

groupByFields[]

string

Il set di campi da conservare quando viene specificato cross_series_reducer. group_by_fields determina in che modo le serie temporali vengono partizionate in sottoinsiemi prima di applicare l'operazione di aggregazione. Ogni sottoinsieme contiene serie temporali con lo stesso valore per ciascuno dei campi di raggruppamento. Ogni singola serie temporale è membro di un solo sottoinsieme. Il cross_series_reducer viene applicato a ogni sottoinsieme di serie temporali. Non è possibile ridurre i costi per diversi tipi di risorse, pertanto questo campo contiene implicitamente resource.type. I campi non specificati in group_by_fields vengono aggregati. Se group_by_fields non è specificato e tutte le serie temporali hanno lo stesso tipo di risorsa, le serie temporali vengono aggregate in un'unica serie temporale di output. Se cross_series_reducer non è definito, questo campo viene ignorato.

Durata

Rappresentazione JSON
{
  "seconds": string,
  "nanos": integer
}
Campi
seconds

string (int64 format)

Secondi firmati dell'intervallo di tempo. Deve essere compreso tra -315.576.000.000 e +315.576.000.000 inclusi. Nota: questi limiti vengono calcolati in base a: 60 sec/min * 60 min/ora * 24 ore/giorno * 365,25 giorni/anno * 10.000 anni

nanos

integer

Frazioni di secondo con segno con risoluzione in nanosecondi dell'intervallo di tempo. Le durate inferiori a un secondo sono rappresentate con un campo seconds pari a 0 e un campo nanos positivo o negativo. Per durate di un secondo o più, un valore diverso da zero per il campo nanos deve avere lo stesso segno del campo seconds. Deve essere compreso tra -999.999.999 e +999.999.999 inclusi.

ForecastOptions

Rappresentazione JSON
{
  "forecastHorizon": string
}
Campi
forecastHorizon

string (Duration format)

Obbligatorio. Il periodo di tempo futuro per prevedere se una serie temporale violerà la soglia. Se il valore previsto viola la soglia e la violazione viene osservata in tutte le previsioni effettuate per il duration configurato, la serie temporale viene considerata non riuscita. L'orizzonte di previsione può variare da 1 a 60 ore.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

Trigger

Rappresentazione 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.
}
Campi
Campo unione type. Un tipo di attivatore. type può essere solo uno dei seguenti tipi:
count

integer

Il numero assoluto di serie temporali che devono non superare il predicato affinché la condizione venga attivata.

percent

number

La percentuale di serie temporali che non devono soddisfare il predicato affinché la condizione venga attivata.

MetricAbsence

Rappresentazione JSON
{
  "filter": string,
  "aggregations": [
    {
      object (Aggregation)
    }
  ],
  "duration": string,
  "trigger": {
    object (Trigger)
  }
}
Campi
filter

string

Obbligatorio. Un filtro che identifica le serie temporali da confrontare con la soglia.

Il filtro è simile a quello specificato nella richiesta ListTimeSeries (questa chiamata è utile per verificare le serie temporali che verranno recuperate / elaborate). Il filtro deve specificare il tipo di metrica e il tipo di risorsa. Se vuoi, puoi specificare le etichette delle risorse e delle metriche. Questo campo non deve superare i 2048 caratteri Unicode di lunghezza.

aggregations[]

object (Aggregation)

Specifica l'allineamento dei punti dati nelle singole serie temporali, nonché la modalità di combinazione delle serie temporali recuperate (ad esempio quando si aggregano più stream su ogni risorsa in un unico stream per ogni risorsa o quando si aggregano stream in tutti i membri di un gruppo di risorse). Più aggregazioni vengono applicate nell'ordine specificato.

Questo campo è simile a quello della richiesta ListTimeSeries. Ti consigliamo di utilizzare il metodo ListTimeSeries per eseguire il debug di questo campo.

duration

string (Duration format)

Obbligatorio. Il periodo di tempo durante il quale una serie temporale deve non segnalare nuovi dati per essere considerata in errore. Il valore minimo di questo campo è 120 secondi. Sono supportati valori più grandi che sono multipli di un minuto, ad esempio 240 o 300 secondi. Se viene fornito un valore non valido, verrà restituito un errore.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

trigger

object (Trigger)

Il numero/la percentuale di serie temporali per cui il confronto deve essere valido affinché la condizione venga attivata. Se non specificata, la condizione verrà attivata se il confronto è vero per una qualsiasi delle serie temporali identificate da filter e aggregations.

LogMatch

Rappresentazione JSON
{
  "filter": string,
  "labelExtractors": {
    string: string,
    ...
  }
}
Campi
filter

string

Obbligatorio. Un filtro basato sui log. Per informazioni su come deve essere costruito questo filtro, consulta Query avanzate dei log.

labelExtractors

map (key: string, value: string)

Facoltativo. Una mappa da una chiave di etichetta a un'espressione di estrazione, che viene utilizzata per estrarre il valore di questa chiave di etichetta. Ogni voce di questa mappa è una specifica per l'estrazione dei dati dalle voci di log che corrispondono a filter. Ai fini dell'attivazione delle notifiche, ogni combinazione di valori estratti viene trattata come una regola separata. Le chiavi delle etichette e i valori corrispondenti possono essere utilizzati nelle notifiche generate da questa condizione.

Per la sintassi e gli esempi, consulta la documentazione sulle metrica basata su log valueExtractors.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

LabelExtractorsEntry

Rappresentazione JSON
{
  "key": string,
  "value": string
}
Campi
key

string

value

string

MonitoringQueryLanguageCondition

Rappresentazione JSON
{
  "query": string,
  "duration": string,
  "trigger": {
    object (Trigger)
  },
  "evaluationMissingData": enum (EvaluationMissingData)
}
Campi
query

string

Query Monitoring Query Language che restituisce un flusso booleano.

duration

string (Duration format)

Facoltativo. Il periodo di tempo in cui una serie temporale deve violare la soglia per essere considerata non riuscita. Al momento sono supportati solo i valori che sono multipli di un minuto, ad esempio 0, 60, 120 o 300 secondi. Se viene fornito un valore non valido, verrà restituito un errore. Quando scegli una durata, è utile tenere presente la frequenza dei dati delle serie temporali sottostanti (che potrebbe essere influenzata anche da eventuali allineamenti specificati nel campo aggregations); una durata adeguata è sufficientemente lunga da evitare che un singolo outlier generi avvisi spuri, ma sufficientemente breve da rilevare e segnalare rapidamente gli stati non integri. Il valore predefinito è zero.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

trigger

object (Trigger)

Il numero/la percentuale di serie temporali per cui il confronto deve essere valido affinché la condizione venga attivata. Se non specificata, la condizione viene attivata se il confronto è true per una qualsiasi delle serie temporali identificate da filter e aggregations o dal rapporto, se sono specificati denominator_filter e denominator_aggregations.

evaluationMissingData

enum (EvaluationMissingData)

Un controllo delle condizioni che determina come vengono valutate le condizioni di soglia delle metriche quando i dati smettono di arrivare.

PrometheusQueryLanguageCondition

Rappresentazione JSON
{
  "query": string,
  "duration": string,
  "evaluationInterval": string,
  "labels": {
    string: string,
    ...
  },
  "ruleGroup": string,
  "alertRule": string,
  "disableMetricValidation": boolean
}
Campi
query

string

Obbligatorio. L'espressione PromQL da valutare. A ogni ciclo di valutazione, questa espressione viene valutata all'ora corrente e tutte le serie temporali risultanti diventano avvisi in attesa/attivi. Questo campo non deve essere vuoto.

duration

string (Duration format)

Facoltativo. Gli avvisi vengono considerati attivati dopo che la loro espressione PromQL è stata valutata come "true" per il periodo di tempo specificato. Gli avvisi la cui espressione PromQL non è stata valutata come "true" per un periodo di tempo sufficiente sono considerati in attesa. Deve essere una durata non negativa o non essere presente. Questo campo è facoltativo. Il valore predefinito è zero.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

evaluationInterval

string (Duration format)

Facoltativo. La frequenza con cui deve essere valutata questa regola. Deve essere un multiplo positivo di 30 secondi o non essere presente. Questo campo è facoltativo. Il valore predefinito è 30 secondi. Se questa PrometheusQueryLanguageCondition è stata generata da una regola di avviso di Prometheus, questo valore deve essere preso dal gruppo di regole contenitore.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

labels

map (key: string, value: string)

Facoltativo. Etichette da aggiungere o sovrascrivere nel risultato della query PromQL. I nomi delle etichette devono essere validi. I valori delle etichette possono essere creati come modelli utilizzando le variabili. Gli unici nomi di variabili disponibili sono i nomi delle etichette nel risultato PromQL, inclusi "__name__" e "value". "labels" può essere vuoto.

Un oggetto contenente un elenco di coppie "key": value. Esempio: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

ruleGroup

string

Facoltativo. Il nome del gruppo di regole di questo avviso nel file di configurazione Prometheus corrispondente.

Alcuni strumenti esterni potrebbero richiedere che questo campo venga compilato correttamente per fare riferimento al file di configurazione Prometheus originale. Il nome del gruppo di regole e il nome dell'avviso sono necessari per aggiornare le AlertPolicies pertinenti nel caso in cui la definizione del gruppo di regole cambi in futuro.

Questo campo è facoltativo. Se questo campo non è vuoto, deve contenere una stringa UTF-8 valida. Questo campo non può superare i 2048 caratteri Unicode di lunghezza.

alertRule

string

Facoltativo. Il nome della regola di avviso di questo avviso nel file di configurazione di Prometheus corrispondente.

Alcuni strumenti esterni potrebbero richiedere che questo campo venga compilato correttamente per fare riferimento al file di configurazione Prometheus originale. Il nome del gruppo di regole e il nome dell'avviso sono necessari per aggiornare le AlertPolicies pertinenti nel caso in cui la definizione del gruppo di regole cambi in futuro.

Questo campo è facoltativo. Se questo campo non è vuoto, deve essere un nome di etichetta Prometheus valido. Questo campo non può superare i 2048 caratteri Unicode di lunghezza.

disableMetricValidation

boolean

Facoltativo. Indica se disattivare la convalida dell'esistenza della metrica per questa condizione.

Ciò consente di definire criteri di avviso per metriche che non esistono ancora, migliorando i flussi di lavoro avanzati dei clienti, ad esempio la configurazione di criteri di avviso utilizzando Terraform.

Gli utenti con il ruolo monitoring.alertPolicyViewer possono visualizzare il nome della metrica inesistente nella condizione della criterio di avviso.

LabelsEntry

Rappresentazione JSON
{
  "key": string,
  "value": string
}
Campi
key

string

value

string

SqlCondition

Rappresentazione 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.
}
Campi
query

string

Obbligatorio. La query SQL di analisi dei log da eseguire, come stringa. La query deve rispettare la forma richiesta. In particolare, la query non deve tentare di filtrare l'input in base all'ora. Verrà applicato automaticamente un filtro all'input in modo che la query riceva tutte le righe ricevute dall'ultima esecuzione.

Ad esempio, la seguente query estrae tutte le voci di log contenenti una richiesta HTTP:

SELECT
  timestamp, log_name, severity, http_request, resource, labels
FROM
  my-project.global._Default._AllLogs
WHERE
  http_request IS NOT NULL
Campo unione schedule. La pianificazione indica la frequenza con cui deve essere eseguita la query. schedule può essere solo uno dei seguenti tipi:
minutes

object (Minutes)

Pianifica l'esecuzione della query ogni tot minuti.

hourly

object (Hourly)

Pianifica l'esecuzione della query ogni tot ore.

daily

object (Daily)

Pianifica l'esecuzione della query ogni tot giorni.

Campo unione evaluate. Il test da eseguire sul set di risultati SQL. evaluate può essere solo uno dei seguenti tipi:
rowCountTest

object (RowCountTest)

Verifica il conteggio delle righe rispetto a una soglia.

booleanTest

object (BooleanTest)

Testa il valore booleano nella colonna indicata.

Minuti

Rappresentazione JSON
{
  "periodicity": integer
}
Campi
periodicity

integer

Obbligatorio. Numero di minuti tra le corse. L'intervallo deve essere maggiore o uguale a 5 minuti e minore o uguale a 1440 minuti.

Ogni ora

Rappresentazione 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.
}
Campi
periodicity

integer

Obbligatorio. Il numero di ore tra le corse. Deve essere maggiore o uguale a 1 ora e minore o uguale a 48 ore.

Campo unione _minute_offset.

_minute_offset può essere solo uno dei seguenti tipi:

minuteOffset

integer

Facoltativo. Il numero di minuti dopo l'ora (in UTC) per eseguire la query. Deve essere maggiore o uguale a 0 minuti e minore o uguale a 59 minuti. Se non viene specificato, viene utilizzato un offset arbitrario.

Ogni giorno

Rappresentazione JSON
{
  "periodicity": integer,
  "executionTime": {
    object (TimeOfDay)
  }
}
Campi
periodicity

integer

Obbligatorio. Il numero di giorni tra le corse. Deve essere maggiore o uguale a 1 giorno e minore o uguale a 31 giorni.

executionTime

object (TimeOfDay)

Facoltativo. L'ora del giorno (in UTC) in cui deve essere eseguita la query. Se non viene specificato, il server sceglie un orario arbitrario del giorno ed esegue la query alla stessa ora ogni giorno.

TimeOfDay

Rappresentazione JSON
{
  "hours": integer,
  "minutes": integer,
  "seconds": integer,
  "nanos": integer
}
Campi
hours

integer

Ore di un giorno nel formato 24 ore. Deve essere maggiore o uguale a 0 e in genere deve essere minore o uguale a 23. Un'API può scegliere di consentire il valore "24:00:00" per scenari come l'orario di chiusura dell'attività.

minutes

integer

Minuti di un'ora. Deve essere maggiore o uguale a 0 e minore o uguale a 59.

seconds

integer

Secondi di un minuto. Deve essere maggiore o uguale a 0 e in genere minore o uguale a 59. Un'API potrebbe consentire il valore 60 se consente i secondi intercalari.

nanos

integer

Frazioni di secondi, in nanosecondi. Deve essere maggiore o uguale a 0 e minore o uguale a 999.999.999.

RowCountTest

Rappresentazione JSON
{
  "comparison": enum (ComparisonType),
  "threshold": string
}
Campi
comparison

enum (ComparisonType)

Obbligatorio. Il confronto da applicare tra il numero di righe restituite dalla query e la soglia.

threshold

string (int64 format)

Obbligatorio. Il valore con cui confrontare il conteggio delle righe.

BooleanTest

Rappresentazione JSON
{
  "column": string
}
Campi
column

string

Obbligatorio. Il nome della colonna contenente il valore booleano. Se il valore in una riga è NULL, la riga viene ignorata.

BoolValue

Rappresentazione JSON
{
  "value": boolean
}
Campi
value

boolean

Il valore booleano.

Stato

Rappresentazione JSON
{
  "code": integer,
  "message": string,
  "details": [
    {
      "@type": string,
      field1: ...,
      ...
    }
  ]
}
Campi
code

integer

Il codice di stato, che deve essere un valore enum di google.rpc.Code.

message

string

Un messaggio di errore rivolto agli sviluppatori, che deve essere in inglese. Qualsiasi messaggio di errore rivolto agli utenti deve essere localizzato e inviato nel campo google.rpc.Status.details o localizzato dal client.

details[]

object

Un elenco di messaggi contenenti i dettagli dell'errore. Esiste un insieme comune di tipi di messaggi da utilizzare per le API.

Un oggetto contenente campi di tipo arbitrario. Un campo aggiuntivo "@type" contenente un URI che identifica il tipo. Esempio: { "id": 1234, "@type": "types.example.com/standard/id" }.

Qualsiasi

Rappresentazione JSON
{
  "typeUrl": string,
  "value": string
}
Campi
typeUrl

string

Identifica il tipo di messaggio Protobuf serializzato con un riferimento URI costituito da un prefisso che termina con una barra e il nome del tipo completo.

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

Questa stringa deve contenere almeno un carattere / e il contenuto dopo l'ultimo / deve essere il nome completo del tipo in forma canonica, senza un punto iniziale. Non scrivere uno schema su questi riferimenti URI in modo che i client non tentino di contattarli.

Il prefisso è arbitrario e le implementazioni di Protobuf devono semplicemente rimuovere tutto fino all'ultimo / incluso per identificare il tipo. type.googleapis.com/ è un prefisso predefinito comune richiesto da alcune implementazioni legacy. Questo prefisso non indica l'origine del tipo e non è previsto che gli URI che lo contengono rispondano a richieste.

Tutte le stringhe URL di tipo devono essere riferimenti URI validi con l'ulteriore limitazione (per il formato di testo) che il contenuto del riferimento deve essere costituito solo da caratteri alfanumerici, sequenze di escape codificate in percentuale e caratteri del seguente insieme (senza includere gli apici inversi esterni): /-.~_!$&()*+,;=. Nonostante consentiamo le codifiche in percentuale, le implementazioni non devono eseguirne l'escape per evitare confusione con i parser esistenti. Ad esempio, type.googleapis.com%2FFoo deve essere rifiutato.

Nella progettazione originale di Any, è stata presa in considerazione la possibilità di avviare un servizio di risoluzione dei tipi in questi URL di tipo, ma Protobuf non ne ha mai implementato uno e considera il contatto con questi URL problematico e un potenziale problema di sicurezza. Non tentare di contattare gli URL di tipo.

value

string (bytes format)

Contiene una serializzazione Protobuf del tipo descritto da type_url.

Una stringa con codifica in base64.

MutationRecord

Rappresentazione JSON
{
  "mutateTime": string,
  "mutatedBy": string
}
Campi
mutateTime

string (Timestamp format)

Quando è stata eseguita la modifica.

Utilizza RFC 3339, in cui l'output generato è sempre con normalizzazione Z e utilizza 0, 3, 6 o 9 cifre frazionarie. Sono accettati anche offset diversi da "Z". Esempi: "2014-10-02T15:01:23Z", "2014-10-02T15:01:23.045123456Z" o "2014-10-02T15:01:23+05:30".

mutatedBy

string

L'indirizzo email dell'utente che apporta la modifica.

Timestamp

Rappresentazione JSON
{
  "seconds": string,
  "nanos": integer
}
Campi
seconds

string (int64 format)

Rappresenta i secondi del tempo UTC a partire dall'epoca Unix 1970-01-01T00:00:00Z. Deve essere compreso tra -62135596800 e 253402300799 inclusi (corrispondenti a 0001-01-01T00:00:00Z e 9999-12-31T23:59:59Z).

nanos

integer

Frazioni di secondo non negative con risoluzione in nanosecondi. Questo campo è la porzione di nanosecondi della durata, non un'alternativa ai secondi. I valori negativi dei secondi con frazioni devono comunque avere valori di nanosecondi non negativi che vengono conteggiati in avanti nel tempo. Deve essere compreso tra 0 e 999.999.999 inclusi.

AlertStrategy

Rappresentazione JSON
{
  "notificationRateLimit": {
    object (NotificationRateLimit)
  },
  "notificationPrompts": [
    enum (NotificationPrompt)
  ],
  "autoClose": string,
  "notificationChannelStrategy": [
    {
      object (NotificationChannelStrategy)
    }
  ]
}
Campi
notificationRateLimit

object (NotificationRateLimit)

Obbligatorio per i criteri di avviso basati su log, ovvero i criteri con una condizione LogMatch.

Questo limite non viene implementato per le policy di avviso che non hanno una condizione LogMatch.

notificationPrompts[]

enum (NotificationPrompt)

Per le policy di avviso basate su log, il prompt di notifica è sempre [OPENED]. Per i criteri di avviso non basati su log, i prompt di notifica possono essere [OPENED] o [OPENED, CLOSED].

autoClose

string (Duration format)

Se una criterio di avviso attiva non ha dati per questo periodo di tempo, tutti gli incidenti aperti verranno chiusi

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

notificationChannelStrategy[]

object (NotificationChannelStrategy)

Controlla come verranno inviate le notifiche, canale per canale.

NotificationRateLimit

Rappresentazione JSON
{
  "period": string
}
Campi
period

string (Duration format)

Non più di una notifica per period.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

NotificationChannelStrategy

Rappresentazione JSON
{
  "notificationChannelNames": [
    string
  ],
  "renotifyInterval": string
}
Campi
notificationChannelNames[]

string

Il nome completo della risorsa REST per i canali di notifica a cui si applicano queste impostazioni. Ciascuno di questi corrisponde al campo nome di uno degli oggetti NotificationChannel a cui viene fatto riferimento nel campo notification_channels di questo AlertPolicy. Il formato è:

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

string (Duration format)

La frequenza con cui inviare notifiche di promemoria per gli incidenti aperti. Il valore deve essere compreso tra 30 minuti e 24 ore.

Una durata in secondi con un massimo di nove cifre frazionarie, che termina con "s". Esempio: "3.5s".

Allineatore

Aligner specifica l'operazione che verrà applicata ai punti dati in ogni periodo di allineamento di una serie temporale. Ad eccezione di ALIGN_NONE, che specifica che non deve essere applicata alcuna operazione, ogni operazione di allineamento sostituisce l'insieme di valori dei dati in ogni periodo di allineamento con un singolo valore: il risultato dell'applicazione dell'operazione ai valori dei dati. Una serie temporale allineata ha un singolo valore di dati alla fine di ogni alignment_period.

Un'operazione di allineamento può modificare anche il tipo di dati dei valori. Ad esempio, se applichi un'operazione di conteggio ai valori booleani, i dati value_type nella serie temporale originale sono BOOLEAN, ma value_type nel risultato allineato è INT64.

Enum
ALIGN_NONE Nessun allineamento. Vengono restituiti i dati non elaborati. Non valido se viene richiesta una riduzione tra serie. Il value_type del risultato è uguale al value_type dell'input.
ALIGN_DELTA

Allinea e converti in DELTA. L'output è delta = y1 - y0.

Questo allineamento è valido per le metriche CUMULATIVE e DELTA. Se il periodo di allineamento selezionato genera periodi senza dati, il valore allineato per questo periodo viene creato tramite interpolazione. Il value_type del risultato allineato è uguale al value_type dell'input.

ALIGN_RATE

Allinea e converti in una frequenza. Il risultato viene calcolato come rate = (y1 - y0)/(t1 - t0) o "variazione nel tempo". Considera questo allineatore come la pendenza della linea che passa per il valore all'inizio e alla fine di alignment_period.

Questo allineatore è valido per le metriche CUMULATIVE e DELTA con valori numerici. Se il periodo di allineamento selezionato genera periodi senza dati, il valore allineato per questo periodo viene creato tramite interpolazione. L'output è una metrica GAUGE con value_type DOUBLE.

Se per "tasso" intendi "variazione percentuale", utilizza invece l'allineatore ALIGN_PERCENT_CHANGE.

ALIGN_INTERPOLATE Allinea per interpolazione tra punti adiacenti intorno al confine del periodo allineamento. Questo allineatore è valido per GAUGE metriche con valori numerici. Il value_type del risultato allineato è uguale al value_type dell'input.
ALIGN_NEXT_OLDER Allinea spostando il punto dati più recente prima della fine del periodo di allineamento al confine della fine del periodo di allineamento. Questo allineatore è valido per GAUGE metriche. Il value_type del risultato allineato è uguale al value_type dell'input.
ALIGN_MIN Allinea le serie temporali restituendo il valore minimo in ogni periodo allineamento. Questo allineatore è valido per le metriche GAUGE e DELTA con valori numerici. Il value_type del risultato allineato è uguale al value_type dell'input.
ALIGN_MAX Allinea le serie temporali restituendo il valore massimo in ogni periodo allineamento. Questo allineatore è valido per le metriche GAUGE e DELTA con valori numerici. Il value_type del risultato allineato è uguale al value_type dell'input.
ALIGN_MEAN Allinea la serie temporale restituendo il valore medio in ogni periodo allineamento. Questo allineatore è valido per le metriche GAUGE e DELTA con valori numerici. Il value_type del risultato allineato è DOUBLE.
ALIGN_COUNT Allinea la serie temporale restituendo il numero di valori in ogni periodo allineamento. Questo allineatore è valido per le metriche GAUGE e DELTA con valori numerici o booleani. Il value_type del risultato allineato è INT64.
ALIGN_SUM Allinea la serie temporale restituendo la somma dei valori in ogni periodo allineamento. Questo allineatore è valido per le metriche GAUGE e DELTA con valori numerici e di distribuzione. Il value_type del risultato allineato è uguale al value_type dell'input.
ALIGN_STDDEV Allinea la serie temporale restituendo la deviazione standard dei valori in ogni periodo allineamento. Questo allineatore è valido per le metriche GAUGE e DELTA con valori numerici. Il value_type dell'output è DOUBLE.
ALIGN_COUNT_TRUE Allinea la serie temporale restituendo il numero di valori True in ogni periodo allineamento. Questo allineatore è valido per GAUGE metriche con valori booleani. Il value_type dell'output è INT64.
ALIGN_COUNT_FALSE Allinea la serie temporale restituendo il numero di valori False in ogni periodo allineamento. Questo allineatore è valido per GAUGE metriche con valori booleani. Il value_type dell'output è INT64.
ALIGN_FRACTION_TRUE Allinea la serie temporale restituendo il rapporto tra il numero di valori True e il numero totale di valori in ogni periodo allineamento. Questo allineatore è valido per GAUGE metriche con valori booleani. Il valore di output è compreso nell'intervallo [0,0, 1,0] e ha value_type DOUBLE.
ALIGN_PERCENTILE_99 Allinea le serie temporali utilizzando l'aggregazione percentile. Il punto dati risultante in ogni periodo di allineamento è il 99° percentile di tutti i punti dati del periodo. Questo allineatore è valido per le metriche GAUGE e DELTA con valori di distribuzione. L'output è una metrica GAUGE con value_type DOUBLE.
ALIGN_PERCENTILE_95 Allinea le serie temporali utilizzando l'aggregazione percentile. Il punto dati risultante in ogni periodo allineamento è il 95° percentile di tutti i punti dati del periodo. Questo allineatore è valido per le metriche GAUGE e DELTA con valori di distribuzione. L'output è una metrica GAUGE con value_type DOUBLE.
ALIGN_PERCENTILE_50 Allinea le serie temporali utilizzando l'aggregazione percentile. Il punto dati risultante in ogni periodo di allineamento è il 50° percentile di tutti i punti dati del periodo. Questo allineatore è valido per le metriche GAUGE e DELTA con valori di distribuzione. L'output è una metrica GAUGE con value_type DOUBLE.
ALIGN_PERCENTILE_05 Allinea le serie temporali utilizzando l'aggregazione percentile. Il punto dati risultante in ogni periodo di allineamento è il 5° percentile di tutti i punti dati del periodo. Questo allineatore è valido per le metriche GAUGE e DELTA con valori di distribuzione. L'output è una metrica GAUGE con value_type DOUBLE.
ALIGN_PERCENT_CHANGE

Allinea e converti in una variazione percentuale. Questo allineatore è valido per le metriche GAUGE e DELTA con valori numerici. Questo allineamento restituisce ((current - previous)/previous) * 100, dove il valore di previous è determinato in base a alignment_period.

Se i valori di current e previous sono entrambi 0, il valore restituito è 0. Se solo previous è 0, il valore restituito è infinito.

Prima del calcolo precedente, viene calcolata una media mobile di 10 minuti in ogni punto del periodo di allineamento per uniformare la metrica ed evitare falsi positivi dovuti a picchi di breve durata. La media mobile è applicabile solo ai dati i cui valori sono >= 0. Tutti i valori < 0 vengono trattati come un punto dati mancante e vengono ignorati. Sebbene le metriche DELTA siano accettate da questo allineamento, è necessario prestare particolare attenzione affinché i valori della metrica siano sempre positivi. L'output è una metrica GAUGE con value_type DOUBLE.

Riduttore

Un'operazione di riduzione descrive come aggregare i punti dati di più serie temporali in un'unica serie temporale, in cui il valore di ogni punto dati della serie risultante è una funzione di tutti i valori già allineati nelle serie temporali di input.

Enum
REDUCE_NONE Nessuna riduzione delle serie temporali. Viene restituito l'output di Aligner.
REDUCE_MEAN Riduce calcolando il valore medio nelle serie temporali per ogni periodo di allineamento. Questo riduttore è valido per le metriche DELTA e GAUGE con valori numerici o di distribuzione. Il value_type dell'output è DOUBLE.
REDUCE_MIN Riduzione calcolando il valore minimo nelle serie temporali per ogni periodo di allineamento. Questo riduttore è valido per le metriche DELTA e GAUGE con valori numerici. Il value_type dell'output è uguale al value_type dell'input.
REDUCE_MAX Riduzione calcolando il valore massimo nelle serie temporali per ogni periodo di allineamento. Questo riduttore è valido per le metriche DELTA e GAUGE con valori numerici. Il value_type dell'output è uguale al value_type dell'input.
REDUCE_SUM Riduce calcolando la somma delle serie temporali per ogni periodo di allineamento. Questo riduttore è valido per le metriche DELTA e GAUGE con valori numerici e di distribuzione. Il value_type dell'output è uguale al value_type dell'input.
REDUCE_STDDEV Riduce calcolando la deviazione standard tra le serie temporali per ogni periodo di allineamento. Questo riduttore è valido per le metriche DELTA e GAUGE con valori numerici o di distribuzione. Il value_type dell'output è DOUBLE.
REDUCE_COUNT Riduzione calcolando il numero di punti dati nelle serie temporali per ogni periodo di allineamento. Questo riduttore è valido per le metriche DELTA e GAUGE di value_type numeriche, booleane, di distribuzione e stringa. Il value_type dell'output è INT64.
REDUCE_COUNT_TRUE Riduzione calcolando il numero di punti dati con valore True nelle serie temporali per ogni periodo allineamento. Questo riduttore è valido per le metriche DELTA e GAUGE del valore booleano value_type. Il value_type dell'output è INT64.
REDUCE_COUNT_FALSE Riduzione calcolando il numero di punti dati con valore False nelle serie temporali per ogni periodo allineamento. Questo riduttore è valido per le metriche DELTA e GAUGE del valore booleano value_type. Il value_type dell'output è INT64.
REDUCE_FRACTION_TRUE Riduzione calcolando il rapporto tra il numero di punti dati con valore True e il numero totale di punti dati per ogni periodo allineamento. Questo riduttore è valido per le metriche DELTA e GAUGE del valore booleano value_type. Il valore di output è compreso nell'intervallo [0,0, 1,0] e ha value_type DOUBLE.
REDUCE_PERCENTILE_99 Riduzione tramite il calcolo del 99° percentile dei punti dati nelle serie temporali per ogni periodo di allineamento. Questo riduttore è valido per le metriche GAUGE e DELTA di tipo numerico e di distribuzione. Il valore dell'output è DOUBLE.
REDUCE_PERCENTILE_95 Riduzione tramite il calcolo del 95° percentile dei punti dati nelle serie temporali per ogni periodo di allineamento. Questo riduttore è valido per le metriche GAUGE e DELTA di tipo numerico e di distribuzione. Il valore dell'output è DOUBLE.
REDUCE_PERCENTILE_50 Riduzione tramite il calcolo del 50° percentile dei punti dati nelle serie temporali per ogni periodo di allineamento. Questo riduttore è valido per le metriche GAUGE e DELTA di tipo numerico e di distribuzione. Il valore dell'output è DOUBLE.
REDUCE_PERCENTILE_05 Riduzione tramite il calcolo del 5° percentile dei punti dati nelle serie temporali per ogni periodo di allineamento. Questo riduttore è valido per le metriche GAUGE e DELTA di tipo numerico e di distribuzione. Il valore dell'output è DOUBLE.

ComparisonType

Specifica una relazione di ordinamento su due argomenti, denominati left e right.

Enum
COMPARISON_UNSPECIFIED Non è specificata alcuna relazione di ordinamento.
COMPARISON_GT True se l'argomento a sinistra è maggiore di quello a destra.
COMPARISON_GE Vero se l'argomento a sinistra è maggiore o uguale a quello a destra.
COMPARISON_LT Vero se l'argomento a sinistra è minore di quello a destra.
COMPARISON_LE Vero se l'argomento a sinistra è minore o uguale a quello a destra.
COMPARISON_EQ True se l'argomento a sinistra è uguale a quello a destra.
COMPARISON_NE True se l'argomento a sinistra non è uguale a quello a destra.

EvaluationMissingData

Un controllo delle condizioni che determina come vengono valutate le condizioni di soglia delle metriche quando i dati smettono di arrivare. Questo controllo non influisce sui criteri di assenza di metriche.

Enum
EVALUATION_MISSING_DATA_UNSPECIFIED Un'opzione di dati mancanti per la valutazione non specificata. Equivalente a EVALUATION_MISSING_DATA_NO_OP.
EVALUATION_MISSING_DATA_INACTIVE Se non ci sono dati per valutare la condizione, valuta la condizione come false.
EVALUATION_MISSING_DATA_ACTIVE Se non sono presenti dati per valutare la condizione, valuta la condizione come true.
EVALUATION_MISSING_DATA_NO_OP Non valutare la condizione in base a un valore se non sono presenti dati.

ConditionCombinerType

Operatori per combinare le condizioni.

Enum
COMBINE_UNSPECIFIED Un combinatore non specificato.
AND Combina le condizioni utilizzando l'operatore logico AND. Un incidente viene creato solo se tutte le condizioni sono soddisfatte contemporaneamente. Questo combinatore è soddisfatto se tutte le condizioni sono soddisfatte, anche se lo sono su risorse completamente diverse.
OR Combina le condizioni utilizzando l'operatore logico OR. Viene creato un incidente se è soddisfatta una delle condizioni elencate.
AND_WITH_MATCHING_RESOURCE Combina le condizioni utilizzando l'operatore logico AND, ma a differenza della normale opzione AND, viene creato un incidente solo se tutte le condizioni vengono soddisfatte contemporaneamente su almeno una risorsa.

NotificationPrompt

Controlla quando verranno inviate le notifiche.

Enum
NOTIFICATION_PROMPT_UNSPECIFIED Nessuna strategia specificata. Trattato come errore.
OPENED Invia una notifica all'apertura di un incidente.
CLOSED Invia una notifica quando un incidente viene chiuso.

Gravità

Un'enumerazione del possibile livello di gravità per una criterio di avviso.

Enum
SEVERITY_UNSPECIFIED Non è specificata alcuna gravità. Questo è il valore predefinito.
CRITICAL Questo è il livello di gravità più alto. Utilizza questa opzione se il problema potrebbe causare danni o tempi di inattività significativi.
ERROR Questo è il livello di gravità medio. Utilizza questa opzione se il problema potrebbe causare danni minori o tempi di inattività.
WARNING Questo è il livello di gravità più basso. Utilizza questo livello se il problema non causa danni o tempi di inattività, ma potrebbe potenzialmente portare a un problema in futuro.

Annotazioni dello strumento

Suggerimento distruttivo: ❌ | Suggerimento idempotente: ✅ | Suggerimento di sola lettura: ✅ | Suggerimento di mondo aperto: ❌