Risoluzione dei problemi relativi a monitoraggi sintetici e controlli di uptime

Questo documento fornisce informazioni su come trovare i dati di log e Risolvi gli errori del monitoraggio sintetico e del controllo di uptime:

Trova i log

Questa sezione fornisce informazioni su come trovare i log per monitor sintetici e controlli di uptime:

  1. Nella console Google Cloud, vai alla pagina Esplora log:

    Vai a Esplora log

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Logging.

  2. Esegui una delle seguenti operazioni:

    • Per trovare tutti i log associati ai monitoraggi sintetici o ai controlli di uptime, query per tipo di risorsa. Puoi utilizzare il menu Risorsa oppure inserisci una query.

      Per i controlli di uptime, nel menu Risorsa, seleziona URL controllo di uptime oppure inserisci la seguente query nella query Editor e poi fai clic su Esegui query:

      resource.type="uptime_url"
      

      Per i monitoraggi sintetici, nel menu Risorsa, seleziona Revisione Cloud Run o inserisci la seguente query nella query Editor e poi fai clic su Esegui query:

      resource.type="cloud_run_revision"
      
    • I log di ricerca contenenti informazioni sulla risposta ricevuta durante l'esecuzione di un monitoraggio sintetico o di un controllo di uptime, esegui una delle seguenti:

      • Per eseguire una query utilizzando l'ID del monitoraggio sintetico o del controllo di uptime, usa il formato seguente quando inserisci l'ID nell'editor query: e poi fai clic su Esegui query.

        labels.check_id="my-check-id"
        
      • a eseguire query sui log che contengono dati di risposta per le richieste emessi da monitor sintetici e controlli di uptime, inserisci nell'editor query e poi fai clic su Esegui query.

        "UptimeCheckResult"
        

        La query precedente corrisponde a tutte le voci di log che includono la stringa "UptimeCheckResult".

      Questi log includono quanto segue:

      • L'ID del monitoraggio sintetico o del controllo di uptime, archiviato in il campo labels.check_id.

      • Per i monitor sintetici, il nome della Cloud Function, che viene archiviato nel campo resource.labels.service_name.

      • Quando vengono raccolti i dati di traccia, l'ID di una traccia associata, che viene archiviato nel campo trace.

    • Per verificare che il servizio abbia ricevuto richieste dai server Google Cloud, copia la seguente query Editor query e fai clic su Esegui query:

      "GoogleStackdriverMonitoring-UptimeChecks"
      

      Il campo protoPayload.ip contiene uno degli indirizzi utilizzati dalla i server di controllo di uptime. Per informazioni su come elencare tutti gli indirizzi IP, indirizzi, consulta Elencare gli indirizzi IP.

Risolvere i problemi relativi alle notifiche

Questa sezione descrive alcuni errori che potresti riscontrare durante la configurazione criteri di avviso e fornisce informazioni per risolverli.

Hai ricevuto una notifica e vuoi eseguire il debug dell'errore

  1. Per identificare quando è iniziato l'errore, esegui una delle seguenti operazioni:

    • Per i controlli di uptime, per determinare quando si è verificato l'errore, visualizza la pagina Dettagli uptime:

      1. Nella console Google Cloud, vai alla pagina  Controlli di uptime:

        Vai a Controlli di uptime

        Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoraggio.

      2. Trova e seleziona il controllo di uptime.

        Il grafico Controlli superati mostra la cronologia dei controlli. Per identificare quando il controllo di uptime non è riuscito per la prima volta, potrebbe essere necessario modificare l'intervallo di tempo per il grafico. Il selettore dell'intervallo di tempo che si trova nella barra degli strumenti della pagina Dettagli uptime.

    • Per i monitoraggi sintetici, per determinare quando si è verificato l'errore, visualizza la pagina Dettagli uptime:

      1. Nella console Google Cloud, vai alla Pagina Monitoraggio sintetico:

        Vai a Monitoraggio sintetico

        Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoraggio.

      2. Trova e seleziona il monitor sintetico.
  2. Per informazioni su come trovare i dati di log associati, consulta la sezione di questa pagina dal titolo Ricerca dei log.

Non ti viene comunicato che un controllo di uptime non è riuscito

Hai configurato un controllo di uptime e stai visualizzando la pagina Dettagli uptime per che controllano. Noti che il grafico Controlli superati mostra che almeno uno controllo non riuscito. Tuttavia, non hai ricevuto una notifica.

Per impostazione predefinita, il criterio di avviso è configurato per creare un incidente e inviare una notifica quando i controllori in almeno due regioni non ricevono una risposta a un controllo di uptime. Questi errori devono verificarsi contemporaneamente.

Puoi modificare la condizione del criterio di avviso in modo da ricevere una notifica quando una singola regione non riceve una risposta. Tuttavia, ti invitiamo a la configurazione predefinita, che riduce il numero di notifiche che potresti ricevere a causa di errori temporanei.

Per visualizzare o modificare un criterio di avviso, segui questi passaggi:

  1. Nella console Google Cloud, vai alla Pagina Avvisi:

    Vai ad Avvisi

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoraggio.

  2. Fai clic su Visualizza tutti i criteri nel riquadro Criteri.
  3. Trova la norma che vuoi visualizzare o modificare, quindi fai clic sul pulsante il nome del criterio.

    Puoi visualizzare e modificare le norme nella pagina Dettagli norme.

Risolvi i problemi relativi ai controlli di uptime pubblici

In questa sezione vengono descritti alcuni errori che potresti riscontrare durante l'utilizzo di uptime pubblici e fornisce informazioni per risolverli.

I tuoi controlli di uptime pubblici non vanno a buon fine

Configuri un controllo di uptime pubblico, ma ricevi un errore quando esegui il passaggio di verifica.

Di seguito sono riportate alcune possibili cause di un errore del controllo di uptime:

  • Errore di connessione - Rifiutato: se utilizzi il protocollo HTTP predefinito di connessione, verifica di aver installato un server web che in risposta a richieste HTTP. Può verificarsi un errore di connessione su una nuova istanza se non hai installato un server web; vedi il Guida rapida per Compute Engine. Se utilizzi un tipo di connessione HTTPS, potrebbe essere necessario eseguire passaggi di configurazione aggiuntivi. Per problemi di firewall, consulta Elenca gli indirizzi IP dei server per il controllo di uptime.
  • Nome o servizio non trovato: il nome host potrebbe non essere corretto.
  • 403 Accesso negato: il servizio restituisce un codice di errore all'uptime controllo. Ad esempio, la configurazione predefinita del server web restituisce questo codice in Amazon Linux, ma restituisce il codice 200 (Operazione riuscita) in alcune altre versioni di Linux. Consulta le Tutorial su LAMP per Amazon Linux o la documentazione del server web.
  • 404 Non trovato: il percorso potrebbe non essere corretto.
  • 408 Timeout richiesta o nessuna risposta: il numero di porta potrebbe essere potrebbe non essere in esecuzione, il servizio potrebbe non sono accessibili oppure il timeout potrebbe essere troppo basso. Verifica che il firewall consente il traffico dai server di uptime, vedi Elenca gli indirizzi IP dei server per il controllo di uptime. Il limite di timeout viene specificato nell'ambito del modulo Response Validation le opzioni di CPU e memoria disponibili.

Per aiutarti a risolvere i problemi relativi a controlli di uptime pubblici non riusciti, puoi configurare dei controlli di uptime per inviare emette un ping da ICMP durante la verifica. I ping possono aiutarti a distinguere tra causati, ad esempio, da problemi di connettività di rete e i timeout nella tua applicazione. Per ulteriori informazioni, vedi Utilizza ping ICMP.

Risolvi i problemi relativi ai controlli di uptime privati

In questa sezione vengono descritti alcuni errori che potresti riscontrare durante l'utilizzo controlli di uptime privati e fornisce informazioni per risolverli.

La creazione del controllo di uptime non va a buon fine

Le impostazioni del progetto Google Cloud potrebbero impedire la modifica dei ruoli assegnati all'account di servizio utilizzato dai controlli di uptime gestire le interazioni con il servizio Service Directory. In questa situazione, la creazione del controllo di uptime non va a buon fine.

Questa sezione descrive come concedere i ruoli assegnati all'account di servizio richiede:

Console Google Cloud

Quando utilizzi la console Google Cloud per creare il controllo di uptime privato, la console Google Cloud invia i comandi per concedere i ruoli di Service Directory all'account di servizio.

Per informazioni su come concedere ruoli a un account di servizio, consulta Autorizzare l'account di servizio.

API: progetto di definizione dell'ambito

La prima volta che crei un controllo di uptime privato per un Servizio Service Directory e risorse private in un singolo progetto Google Cloud, la richiesta potrebbe avere esito positivo o negativo. Il risultato dipende dal fatto che tu Aver disattivato le concessioni automatiche dei ruoli per gli account di servizio nel tuo progetto:

  • La creazione del primo controllo di uptime riesce se il tuo progetto lo consente le concessioni automatiche di ruoli per gli account di servizio. Un account di servizio è vengono creati per te a cui vengono assegnati i ruoli necessari.

  • La creazione del primo controllo di uptime non va a buon fine se il progetto non lo consente le concessioni automatiche di ruoli per gli account di servizio. Un account di servizio è ma non sono stati concessi ruoli.

Se la creazione del controllo di uptime non va a buon fine:

  1. Autorizza l'account di servizio.
  2. Attendi alcuni minuti per la propagazione delle autorizzazioni.
  3. Prova a creare di nuovo il controllo di uptime privato.

API: progetto monitorato

La prima volta che crei un controllo di uptime privato che ha come target una servizio Service Directory in un progetto monitorato in un altro progetto Google Cloud, la richiesta non va a buon fine e determina la creazione di un Account di servizio Monitoring.

La modalità di autorizzazione dell'account di servizio dipende dal numero di I progetti Google Cloud che stai utilizzando e le relative relazioni. Puoi coinvolgere fino a quattro progetti:

  • Il progetto in cui hai definito il controllo di uptime privato.
  • Il progetto monitorato in cui hai configurato Service Directory.
  • Il progetto in cui hai configurato la rete VPC.
  • Il progetto in cui vengono installate le risorse di rete, come VM o bilanciatori del carico, configurato. Questo progetto non ha ruolo nell'autorizzazione dell'account di servizio di cui parleremo qui.

Quando la creazione del primo controllo di uptime non va a buon fine:

  1. Autorizza l'account di servizio.
  2. Attendi alcuni minuti per la propagazione delle autorizzazioni.
  3. Prova a creare di nuovo il controllo di uptime privato.

Accesso negato

I controlli di uptime non superano i risultati di VPC_ACCESS_DENIED. Questo risultato significa che qualche aspetto della configurazione di rete o dell'account di servizio l'autorizzazione non è corretta.

Verifica se l'autorizzazione dell'account di servizio utilizza una definizione dell'ambito un progetto monitorato o un progetto monitorato, come descritto La creazione del controllo di uptime non va a buon fine.

Per ulteriori informazioni sull'accesso a reti private, vedi Configura il progetto di rete.

Risultati anomali di controlli di uptime privati

Utilizzi un servizio Service Directory con più VM e la configurazione del servizio contiene più endpoint. Quando arresti una delle VM, il tuo controllo di uptime continua a indicare che l'operazione è riuscita.

Quando la configurazione del servizio contiene più endpoint, uno è scelti in modo casuale. Se la VM associata all'endpoint scelto è in esecuzione, il controllo di uptime riesce anche se una delle VM non è attiva.

Intestazioni predefinite

I controlli di uptime restituiscono errori o risultati imprevisti. Questo potrebbe si verificano se hai sostituito i valori predefiniti dell'intestazione.

Quando viene inviata una richiesta per un controllo di uptime privato a un endpoint di destinazione, la richiesta include le seguenti intestazioni e valori:

Intestazione Valore
HTTP_USER_AGENT GoogleStackdriverMonitoring-UptimeChecks(https://cloud.google.com/monitoring)
HTTP_CONNECTION keep-alive
HTTP_HOST IP dell'endpoint di Service Directory
HTTP_ACCEPT_ENCODING gzip, deflate, br
CONTENT_LENGTH Calcolo basato sul tempo di attività al termine dei dati

Se tenti di eseguire l'override di questi valori, potrebbe verificarsi quanto segue:

  • Il controllo di uptime genera report sugli errori
  • I valori di override vengono eliminati e sostituiti con i valori della tabella

Nessun dato visibile

Nella dashboard dei controlli di uptime non vengono visualizzati dati quando il controllo di uptime si trova in un progetto Google Cloud diverso Service Directory.

Assicurati che il progetto Google Cloud che contiene il controllo di uptime monitora il progetto Google Cloud che contiene Service Directory.

Per ulteriori informazioni su come elencare i progetti monitorati e aggiungerne altri quelli, vedi Configura un ambito delle metriche per più progetti.

Risoluzione dei problemi dei monitoraggi sintetici

Questa sezione fornisce informazioni che possono aiutarti a risolvere i problemi i tuoi monitor sintetici.

Messaggio di errore dopo l'abilitazione delle API

Apri il flusso di creazione per un monitoraggio sintetico e ti viene chiesto di abilitarlo almeno un'API. Dopo aver abilitato le API, viene visualizzato un messaggio simile al seguente è visualizzato:

An error occurred during fetching available regions: Cloud Functions API has
not been used in project PROJECT_ID before or it is disabled.

Il messaggio di errore consiglia di verificare che l'API sia abilitata e poi ti consiglia di attendere e riprovare l'azione.

Per verificare che l'API sia abilitata, vai alla scheda API e Servizi per il tuo progetto:

Vai ad API e Servizi

Dopo aver verificato che l'API è abilitata, puoi continuare con le per creare il flusso. La condizione si risolve automaticamente dopo che l'API l'abilitazione si propaga attraverso il backend.

Le richieste HTTP in uscita non vengono rintracciate

Configura il monitoraggio sintetico per raccogliere i dati di traccia per l'output richieste HTTP. I dati di traccia mostrano solo un intervallo, simile al seguente screenshot:

Cloud Trace che mostra una sola traccia.

Per risolvere la situazione, assicurati che il tuo account di servizio dispone del ruolo di agente Cloud Trace (roles/cloudtrace.agent). È sufficiente anche il ruolo Editor (roles/editor).

Per visualizzare i ruoli concessi al tuo account di servizio:

  1. Nella console Google Cloud, vai alla pagina IAM:

    Vai a IAM

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo IAM e Console di amministrazione.

  2. Seleziona Includi concessioni dei ruoli fornite da Google.
  3. Se l'account di servizio utilizzato dal monitoraggio sintetico non è in elenco o se non dispone di un ruolo che include le autorizzazioni nel ruolo l'agente Cloud Trace (roles/cloudtrace.agent), quindi concedi questo ruolo al tuo l'account di servizio.

    Se non conosci il nome del tuo account di servizio, nella barra di navigazione seleziona Account di servizio.

Stato In corso

Nella pagina Monitor sintetici è elencato un monitor sintetico con stato In progress. Lo stato In progress indica che il monitoraggio sintetico è stato creato di recente e non ci sono dati da visualizzare, o che il deployment della funzione non è riuscito.

Per determinare se il deployment della funzione non è riuscito, prova a eseguire questi passaggi:

  • Assicurati che il nome della Cloud Function contiene un trattino basso. Se è presente un trattino basso, rimuovilo. ed eseguire nuovamente il deployment della Cloud Function.

  • Apri la pagina Dettagli del monitor sintetico del monitor sintetico.

    Se viene visualizzato il seguente messaggio, elimina il monitoraggio sintetico.

    Cloud Function not found for this Synthetic monitor. Please confirm it exists or delete this monitor.
    

    Il messaggio di errore indica che la funzione è stata eliminata e, di conseguenza, il monitoraggio sintetico non è in grado di eseguire la funzione.

  • Apri la pagina Cloud Functions per la funzione. Per aprire questa pagina Dalla pagina Dettagli monitoraggio sintetico, fai clic su Codice e poi fai clic sul nome della funzione.

    Se viene visualizzato un messaggio simile al seguente, la funzione non è riuscita. di cui eseguire il deployment.

    This function has failed to deploy and will not work correctly. Please edit and redeploy
    

    Per risolvere l'errore, esamina il codice della funzione e correggi gli errori che impediscono la creazione o il deployment della funzione.

Quando crei un monitoraggio sintetico, potrebbero essere necessari diversi minuti di cui eseguire il deployment e che deve eseguire.

Stato avviso

Monitor sintetici elenca un monitoraggio sintetico con stato Warning. Lo stato Warning indica che l'esecuzione i risultati non sono coerenti. Questo potrebbe indicare un problema di progettazione test o potrebbe indicare che ciò che viene testato ha un comportamento incoerente.

Stato di errore

Monitor sintetici elenca un monitoraggio sintetico con lo stato Failing. Per ulteriori informazioni sul motivo dell'errore, visualizza la cronologia di esecuzione più recente.

  • Se viene visualizzato il messaggio di errore Request failed with status code 429, la destinazione della richiesta HTTP ha rifiutato il comando. Per risolvere il problema in caso di errore, devi modificare la destinazione del monitoraggio sintetico.

    L'endpoint https://www.google.com rifiuta le richieste effettuate da monitor sintetici.

  • Se l'errore restituisce un tempo di esecuzione pari a 0ms, l'errore È possibile che la Cloud Function stia esaurendo la memoria. Per risolvere il problema in un errore, modifica la funzione Cloud Function e aumenta su almeno 2 GiB e imposta il campo CPU su 1.

L'eliminazione non riesce per un monitoraggio sintetico

Puoi utilizzare l'API Cloud Monitoring per eliminare un monitoraggio sintetico, ma l'API non riesce e restituisce una risposta simile alla seguente:

{
  "error": {
    "code": 400,
    "message": "Request contains an invalid argument.",
    "status": "INVALID_ARGUMENT",
    "details": [
      {
        "@type": "type.googleapis.com/google.rpc.DebugInfo",
        "detail": "[ORIGINAL ERROR] generic::invalid_argument: Cannot delete check 1228258045726183344. One or more alerting policies is using it.Delete the alerting policy with id projects/myproject/alertPolicies/16594654141392976482 and any other policies using this uptime check and try again."
      }
    ]
  }
}

Per risolvere l'errore, elimina i criteri di avviso monitorare i risultati del monitoraggio sintetico ed eliminare il monitoraggio sintetico.

Impossibile modificare la configurazione di uno strumento di verifica dei link inaccessibili

Hai creato un programma di verifica dei link inaccessibili utilizzando la console Google Cloud e vuoi per cambiare gli elementi HTML testati o se desideri modificare il timeout dell'URI, i nuovi tentativi, l'attesa del selettore e le opzioni per link. Tuttavia, quando modifichi il controllo dei link inaccessibili, la console Google Cloud vengono visualizzati i campi di configurazione.

Per risolvere l'errore:

  1. Nella console Google Cloud, vai alla Pagina Monitoraggio sintetico:

    Vai a Monitoraggio sintetico

    Se utilizzi la barra di ricerca per trovare questa pagina, seleziona il risultato con il sottotitolo Monitoraggio.

  2. Individua il monitor sintetico che vuoi modificare. fai clic su Altre opzioni, poi seleziona Modifica.
  3. Fai clic su Modifica funzione.
  4. Modifica l'oggetto options nel file index.js, poi fai clic su Applica funzione.

    Per informazioni sui campi e sulla sintassi di questo oggetto, consulta broken-links-ok/index.js.

  5. Fai clic su Salva.

Visualizza la console Google Cloud che non riesce a salvare screenshot

Hai creato uno strumento di verifica dei link inaccessibili e l'hai configurato in modo da salvare gli screenshot. Tuttavia, nella console Google Cloud viene visualizzato uno dei seguenti avvisi messaggi insieme a informazioni più dettagliate:

  • InvalidStorageLocation
  • StorageValidationError
  • BucketCreationError
  • ScreenshotFileUploadError

Per risolvere questi errori, prova a procedere nel seguente modo:

  • Se vedi il messaggio InvalidStorageLocation, verifica che esista del bucket Cloud Storage specificato nel campo denominato options.screenshot_options.storage_location.

  • Visualizza i log relativi alla tua Cloud Function. Per ulteriori informazioni, consulta Trovare i log.

  • Verifica che l'account di servizio in uso nella query La Cloud Function ha un ruolo Identity and Access Management che le consente di creare, e scrivere nei bucket Cloud Storage.