Risolvi i problemi relativi alle metriche basate su log

Questa pagina fornisce informazioni per la risoluzione dei problemi per scenari comuni quando si utilizzano metriche basate su log in Cloud Logging.

Impossibile visualizzare o creare metriche

Le metriche basate su log si applicano solo a un singolo progetto Google Cloud o a un bucket di Logging all'interno di un progetto Google Cloud. Non puoi creare metriche basate su log per altre risorse Google Cloud, come organizzazioni o account di fatturazione. Le metriche basate su log vengono calcolate per i log solo nel progetto Google Cloud o nel bucket in cui vengono ricevute.

Per creare metriche, devi disporre delle autorizzazioni di Identity and Access Management corrette. Per maggiori dettagli, consulta Controllo dell'accesso con IAM: metriche basate su log.

Nella metrica mancano i dati dei log

Esistono diversi possibili motivi per cui mancano dati nelle metriche basate su log:

  • Le nuove voci di log potrebbero non corrispondere al filtro della metrica. Una metrica basata su log ottiene i dati da voci di log corrispondenti ricevute dopo la creazione della metrica. Logging non esegue il backfill della metrica dalle voci di log precedenti.

  • Le nuove voci di log potrebbero non contenere il campo corretto o i dati potrebbero non essere nel formato corretto per l'estrazione in base alla metrica di distribuzione. Verifica che i nomi dei campi e le espressioni regolari siano corretti.

  • Il conteggio delle metriche potrebbe subire ritardi. Anche se in Esplora log vengono visualizzate voci di log conteggiabili, l'aggiornamento delle metriche basate su log in Cloud Monitoring potrebbe richiedere fino a 10 minuti.

  • Le voci di log visualizzate potrebbero essere conteggiate in ritardo o non essere contate perché con timestamp troppo lontani nel passato o in futuro. Se Cloud Logging riceve una voce di log più di 24 ore nelle ultime 24 ore o di 10 minuti nel futuro, la voce di log non verrà conteggiata nella metrica basata su log.

    Il numero di voci che arrivano in ritardo viene registrato per ogni log nella metrica basata su log di sistema logging.googleapis.com/logs_based_metrics_error_count.

    Esempio: una voce di log corrispondente a una metrica basata su log arriva in ritardo. timestamp: 14:30 il 20 febbraio 2020 e receivedTimestamp 14:45 il 21 febbraio 2020. Questa voce non verrà conteggiata nella metrica basata su log.

  • La metrica basata su log è stata creata dopo l'arrivo delle voci di log che la metrica potrebbe conteggiare. Le metriche basate su log valutano le voci di log così come sono archiviate nei bucket di log. Queste metriche non valutano le voci di log archiviate in Logging.

Il tipo di risorsa è "non definito" in Cloud Monitoring

Alcuni tipi di risorse monitorate di Cloud Logging non sono mappati direttamente ai tipi di risorse monitorate di Cloud Monitoring. Ad esempio, quando crei per la prima volta un criterio di avviso o un grafico da una metrica basata su log, potresti notare che il tipo di risorsa è "non definito".

Il tipo di risorsa non è definito.

Il tipo di risorsa monitorata è mappata a global o a un altro tipo di risorsa monitorata in Cloud Monitoring. Consulta la pagina relativa alle mappature per le risorse solo di Logging per determinare il tipo di risorsa monitorata che devi scegliere.

Gli incidenti non vengono creati o sono falsi positivi

Potresti riscontrare incidenti falsi positivi o situazioni in cui Monitoring non crea incidenti dalle metriche basate su log perché il periodo di allineamento per il criterio di avviso è troppo breve. Potresti riscontrare falsi positivi nei seguenti scenari:

  • Quando un criterio di avviso utilizza una logica minore di.
  • Quando un criterio di avviso è basato su una condizione percentile per una metrica di distribuzione.

Possono verificarsi incidenti falsi positivi perché le voci di log possono essere inviate a Logging in ritardo. Ad esempio, i campi di log timestamp e receiveTimestamp possono avere un delta di minuti in alcuni casi. Inoltre, quando Logging archivia i log nei bucket di log, esiste un ritardo intrinseco tra il momento in cui vengono generate le voci di log e quando Logging le riceve. Ciò significa che Logging potrebbe non avere il conteggio totale per una determinata voce di log fino a un momento successivo alla generazione delle voci di log. Ecco perché un criterio di avviso che utilizza la logica meno di o si basa su una condizione percentile per una metrica di distribuzione può produrre un avviso falso positivo: non tutte le voci di log sono ancora state prese in considerazione.

Tuttavia, le metriche basate su log sono sempre coerenti alla fine. Le metriche basate su log alla fine sono coerenti perché una voce di log che corrisponde a una metrica basata su log può essere inviata a Logging con un valore timestamp molto più vecchio o più recente del receiveTimestamp del log.

Ciò significa che la metrica basata su log può ricevere voci di log con timestamp precedenti dopo che voci di log esistenti con lo stesso timestamp sono già state ricevute da Logging. Di conseguenza, il valore della metrica deve essere aggiornato.

Affinché le notifiche siano sempre precise anche per i dati in tempo reale, i criteri di avviso per le metriche basate su log devono utilizzare condizioni con periodi di allineamento di almeno due minuti. Per le voci di log inviate a Logging con ritardi misurati in minuti, si consiglia un periodo di allineamento di dieci minuti per bilanciare tempestività e accuratezza.

La metrica ha troppe serie temporali

Il numero di serie temporali di una metrica dipende dal numero di diverse combinazioni di valori delle etichette. Il numero di serie temporali è chiamato cardinalità della metrica e non deve superare i 30.000.

Poiché è possibile generare una serie temporale per ogni combinazione di valori di etichetta, se hai una o più etichette con un elevato numero di valori, non è difficile superare le 30.000 serie temporali. Vuoi evitare le metriche ad alta cardinalità.

Con l'aumento della cardinalità di una metrica, la metrica può essere limitata e alcuni punti dati potrebbero non essere scritti nella metrica. I grafici che mostrano la metrica possono rallentare il caricamento a causa dell'elevato numero di serie temporali che il grafico deve elaborare. Potrebbero esserti addebitati costi anche per le chiamate API per eseguire query sui dati delle serie temporali. Per maggiori dettagli, consulta i costi di Cloud Monitoring.

Per evitare di creare metriche ad alta cardinalità:

  • Verifica che i campi delle etichette e le espressioni regolari dell'estrattore corrispondano a valori con cardinalità limitata.

  • Evita di estrarre messaggi che possono cambiare, senza limiti, come valori di etichetta.

  • Evita di estrarre valori numerici con cardinalità illimitata.

  • Estrai i valori solo da etichette di cardinalità nota, ad esempio i codici di stato con un insieme di valori noti.

Queste metriche basate su log di sistema possono aiutarti a misurare l'effetto dell'aggiunta o della rimozione di etichette sulla cardinalità della metrica:

Quando esamini queste metriche, puoi filtrare ulteriormente i risultati in base al nome della metrica. Per maggiori dettagli, consulta Selezionare le metriche: filtri.

Il nome della metrica non è valido

Quando crei una metrica contatore o di distribuzione, scegli un nome metrica univoco tra le metriche basate su log nel progetto Google Cloud.

Le stringhe dei nomi delle metriche non devono superare i 100 caratteri e possono includere solo i seguenti caratteri:

  • A-Z
  • a-z
  • 0-9
  • I caratteri speciali _-.,+!*',()%\/.

    La barra / indica una gerarchia di pezzi all'interno del nome della metrica e non può essere il primo carattere del nome.

I valori dell'etichetta sono troncati

I valori per le etichette definite dall'utente non devono superare i 1024 byte.

Impossibile eliminare una metrica di log personalizzata

Puoi provare a eliminare una metrica personalizzata basata su log utilizzando la console Google Cloud. La richiesta di eliminazione non va a buon fine e la finestra di dialogo di eliminazione visualizza il messaggio di errore There is an unknown error while executing this operation.

Per risolvere il problema, prova a procedere nel seguente modo:

  • Aggiorna la pagina Metriche basate su log nella console Google Cloud. Il messaggio di errore potrebbe essere visualizzato a causa di un problema di tempo interno.

  • Identifica ed elimina eventuali criteri di avviso che monitorano la metrica basata su log. Dopo aver verificato che la metrica basata su log non sia monitorata da un criterio di avviso, elimina la metrica basata su log. Le metriche basate su log monitorate da un criterio di avviso non possono essere eliminate.