Monitoraggio delle interruzioni per la smart home

1. Prima di iniziare

Come spiegato nel codelab Debug della casa intelligente, stiamo pubblicando metriche e log nei tuoi progetti per la casa intelligente. Le metriche ti aiutano a determinare dove la tua azione per la smart home ha problemi e i log sono utili per effettuare un'analisi approfondita per risolvere questi problemi.

dd44868a4ff2df6e.png

Puoi configurare gli avvisi utilizzando le metriche fornite al tuo progetto per monitorare le interruzioni in modo automatico e ricevere notifiche durante le interruzioni del servizio. Stiamo pubblicando una metrica di attendibilità per evidenziare le interruzioni del tuo progetto, che tratteremo in questo codelab insieme a tutti gli altri strumenti di avviso a tua disposizione su Google Cloud.

Prerequisiti

Cosa imparerai a fare

  • Come monitorare i problemi di prestazioni e le interruzioni del servizio nel tuo progetto.
  • Come creare un avviso basato su soglia e ricevere notifiche durante le interruzioni.
  • Come utilizzare la metrica di confidenza fornita al progetto per rilevare le interruzioni.

2. Monitoraggio del rendimento

Il monitoraggio del rendimento è fondamentale per un'integrazione efficace con l'ecosistema Google Home. Stiamo fornendo un insieme di strumenti di monitoraggio agli sviluppatori di smart home su Google Cloud. Puoi utilizzare questi strumenti per farti un'idea del rendimento del tuo progetto.

Accedere alle dashboard

Il primo passaggio per accedere ai tuoi dati è controllare le dashboard di Google Home, accedendo alla console Google Cloud e andando a Operazioni > Monitoraggio > Dashboard. Vedrai che sono disponibili diverse dashboard e che quelle per la smart home hanno un prefisso di Google Home Analytics.

317697e52ced2437.png

Abbiamo creato singole dashboard per rappresentare ogni tipo di integrazione. Le integrazioni Cloud, Local e Matter hanno una propria dashboard e i dati per i protocolli di streaming della videocamera sono forniti nella dashboard Qualità videocamera. Queste dashboard conterranno dati solo se hai un'integrazione del tipo corrispondente e un progetto funzionante che soddisfa le richieste.

Quando apri una di queste dashboard, la visualizzazione sarà la seguente:

f8bfd69286c569a4.png

Le dashboard contengono vari grafici che mostrano i dettagli delle richieste gestite dal tuo progetto. In ogni dashboard di integrazione viene visualizzato un grafico che mostra il numero totale di richieste gestite dal progetto, un grafico che mostra il tasso di successo per quel tipo di integrazione e diversi grafici che mostrano i tipi di dispositivi e le caratteristiche coinvolti.

Esistono tre grafici fondamentali per valutare il rendimento delle azioni per la smart home:

f511fafd3aaaa1eb.png

Durante le interruzioni, in genere si verificano tendenze al ribasso nella percentuale di successo e una tendenza al rialzo nel grafico di distribuzione degli errori. Monitorare la percentuale di successo dell'esecuzione consente di rilevare l'interruzione, mentre esaminare gli errori principali nella suddivisione degli errori può essere utile per il debug. Potresti anche notare una tendenza all'aumento della latenza durante le interruzioni, che puoi vedere nei grafici della latenza delle richieste.

Tieni presente che la visualizzazione predefinita con i grafici visualizzati nelle dashboard di Google Home Analytics è solo una visualizzazione che abbiamo creato per il tuo progetto utilizzando i dati delle metriche per la smart home. Puoi anche utilizzare Metrics Explorer per creare i tuoi grafici dalle stesse metriche sottostanti e salvarli nelle dashboard personalizzate.

Esplora metriche

Metrics Explorer è uno strumento per visualizzare sezioni trasversali del set di dati del progetto. Lo strumento è accessibile nella console Google Cloud andando a Operazioni > Monitoraggio > Esplora metriche.

Google Cloud fornisce molte metriche diverse, tra cui alcune non correlate alla smart home. Le metriche che forniamo per la casa intelligente sono elencate nella risorsa "actions.googleapis.com/smarthome_action/…" e possono essere facilmente cercate digitando "smarthome" nella casella di selezione delle metriche.

538d851edfd34764.png

Se cerchi "smarthome", vengono visualizzate tutte le metriche per la smart home che forniamo al tuo progetto. Puoi trovare informazioni dettagliate su ciascuna delle nostre metriche nelle pagine Monitoraggio e Registrazione della nostra documentazione.

Per quanto riguarda il monitoraggio del progetto, la metrica più semplice da utilizzare è Conteggio richieste (che è una metrica delta). Questa metrica registra una voce per ogni esecuzione di domotica avviata dagli utenti e registra campi come tipo di dispositivo, tratto, tipo di esecuzione coinvolto nell'esecuzione e il campo di stato che mostra il risultato.

Se selezioni questa metrica, viene visualizzata una schermata che mostra ogni bucket di dati simile alla seguente:

b1c18141d15a0e09.png

In sostanza, per ogni combinazione di etichette dei dati presente in questa metrica esiste un bucket che registra la variazione (delta) tra gli intervalli di tempo precedenti e attuali. È possibile raggruppare o filtrare questi bucket per ottenere la frazione di dati della visualizzazione che ti interessa. Inoltre, i dati vengono allineati in intervalli di tempo selezionati con una funzione di allineamento (DELTA, MEDIA, MEDIANA, SOMMA). A meno che non sia necessario, in genere utilizzerai l'allineamento Delta con una metrica delta.

Puoi creare la maggior parte dei grafici disponibili nelle dashboard di Google Home Analytics utilizzando Metrics Explorer e salvarli per accedervi in un secondo momento in una dashboard personalizzata. Per ottenere visualizzazioni più complesse, come un grafico di proporzione, dovrai utilizzare MQL (Monitoring Query Language).

3. Metriche di efficacia

Per monitorare il successo dell'integrazione, puoi utilizzare il tasso di successo calcolato dalla metrica Conteggio richieste come indicatore di riferimento o la confidenza del successo per un approccio più specializzato.

Tasso di successo

Il tasso di successo viene calcolato per tutte le integrazioni dividendo il numero di richieste andate a buon fine per tutte le richieste. Puoi accedervi dal grafico Tasso di successo del completamento nella dashboard di Dati di Google Home.

55ea8930fbf48d9e.png

Il grafico Tasso di successo del completamento è molto utile per monitorare il rendimento del progetto, ma non molto per creare dashboard personalizzate o configurare avvisi. Poiché il tasso di successo è dedotto dalla metrica Conteggio richieste e non è una metrica autonoma, dovrai ricrearlo utilizzando MQL (Monitoring Query Language) in Metrics Explorer per utilizzarlo con entrambe le funzionalità.

Inoltre, per monitorare le interruzioni del rendimento del tuo progetto, riteniamo che sia necessario un approccio molto più specializzato. Per questo motivo abbiamo creato la metrica di confidenza che cambia in base alla deviazione del tasso di successo dell'attuale adempimento dalle norme storiche.

Metrica di attendibilità

Le interruzioni possono essere di forme e dimensioni diverse per i progetti. Possono durare da alcune ore a pochi minuti, il che può rendere difficile la loro identificazione. Per questo motivo, abbiamo creato una metrica di confidenza nel tuo progetto, che fornisce un valore normalizzato per la previsione dell'affidabilità in base alle prestazioni passate. Puoi accedere alla metrica di confidenza cercando la casa intelligente in Metrics Explorer e selezionando Confidenza nell'esito dell'esecuzione.

ab467a1777281526.png

Quando il rendimento dell'integrazione della smart home è uguale o superiore al rendimento storico (media di 7 giorni), questa metrica restituisce il valore massimo (1,0). Quando la percentuale di successo presenta una deviazione superiore a un fattore di quattro deviazioni standard (calcolate anche su 7 giorni), questa metrica restituisce il valore minimo (0,0). Nei casi in cui le deviazioni standard sono troppo piccole (meno del 2,5%), questa metrica basa il valore 0,0 su un calo del 10% della percentuale di successo.

Per tutti i casi intermedi, questa metrica fornisce valori compresi tra 1,0 (assoluta certezza che non si è verificata alcuna interruzione) e 0,0 (massima certezza che si è verificata un'interruzione).

Pertanto, quando imposti un avviso (argomento trattato nella sezione successiva), ti consigliamo di utilizzare il valore 0,5 come soglia. Ciò corrisponderà a 2 deviazioni standard o a un calo del 5%, a seconda del valore più elevato.

4. Configurazione degli avvisi

Il passaggio successivo consiste nell'utilizzare tutto ciò che hai appreso nella sezione precedente per configurare gli avvisi nel tuo progetto.

Creazione di un criterio di avviso

Gli avvisi automatici su Google Cloud vengono impostati tramite i criteri di avviso. Puoi accedere ai criteri di avviso tramite il menu laterale, scheda Operazioni > Monitoraggio > Avvisi. Puoi creare un nuovo criterio di avviso selezionando l'opzione +CREA REGOLAMENTO, che ti reindirizzerà alla schermata di creazione del criterio di avviso:

6e417d88c2274b3d.png

La creazione di un criterio di avviso è composta da tre parti. Innanzitutto, devi determinare cosa vuoi monitorare aggiungendo una condizione. Se premi il pulsante AGGIUNGI CONDIZIONE, viene visualizzata una finestra simile a Metrics Explorer, con alcuni controlli aggiuntivi per la configurazione della condizione:

df1ccf7da741e1c7.png

Per il target, seleziona la metrica di affidabilità descritta nella sezione precedente. Assicurati che l'allineatore sia impostato su delta utilizzando questa metrica (Mostra opzioni avanzate > Allineatore). Il passaggio successivo consiste nel configurare la condizione di avviso e utilizzare le seguenti impostazioni:

4192e0f4ea00dd28.png

La condizione si attiva se: questa è la configurazione principale per determinare quando attivare gli avvisi. Se selezioni Qualsiasi violazione della serie temporale, imposteremo una soglia per la metrica e monitoreremo se il valore viene superato.

Condizione: vogliamo che l'avviso venga attivato quando il valore scende al di sotto della soglia, quindi lo imposteremo su è inferiore. Con la nostra metrica, 1,0 indica che l'integrazione funziona correttamente e 0,0 indica un'interruzione definitiva.

Soglia: abbiamo creato la metrica di confidenza per fornire i risultati migliori quando questo valore è impostato su 0,5. Se vuoi ricevere avvisi più frequenti e notifiche per incidenti meno gravi, puoi provare ad aumentare questo valore (massimo 1,0). Se vuoi ricevere meno avvisi, solo per problemi più gravi, puoi provare a diminuire questo valore (min 0,0).

Per: questa è l'impostazione per identificare la durata dell'interruzione prima che venga inviato un avviso. Ti consigliamo di mantenere questa impostazione sul valore più recente per ricevere avvisi per qualsiasi punto che supera la soglia. La nostra metrica di confidenza viene pubblicata ogni 15 minuti e tiene conto del successo medio registrato in quel periodo.

Dopo aver completato l'aggiunta di una condizione, il passaggio successivo consiste nel selezionare il canale di notifica. Il metodo di notifica più semplice è costituito dagli avvisi via email. Puoi scegliere un'email elencata nel menu a discesa Canali di notifica:

3cc10629830e7f13.png

Se selezioni l'opzione Notifica alla chiusura dell'incidente, verrà inviata un'altra notifica una volta che l'incidente sarà contrassegnato come chiuso. In questo caso, devi anche selezionare una Durata chiusura automatica incidenti, che per impostazione predefinita è pari a 7 giorni.

Il passaggio finale consiste nell'assegnare un nome all'avviso e nell'aggiungere la documentazione da includere nelle notifiche.

686fb1c537fee10.png

Ti consigliamo di fornire la documentazione, soprattutto se non sei tu a ricevere l'avviso. L'aggiunta di passaggi come dove controllare durante un incidente e come eseguire la triage e il debug può essere utile durante un'interruzione del servizio. Se necessario, puoi consultare la nostra guida alla risoluzione dei problemi.

Una volta salvato, il criterio di avviso verrà visualizzato nella sezione Norme della pagina Avvisi.

c71a001e4df035ee.png

5. Mitigazione delle interruzioni

Una volta configurati gli avvisi, riceverai una notifica durante le interruzioni dai canali di notifica che hai fornito e verrà creata una voce di incidente nella pagina Avvisi.

Ricezione di avvisi

Il canale di avviso che abbiamo fornito in questo codelab era un'email. Una volta impostata, non dovresti ricevere avvisi (non ci dovrebbero essere interruzioni del servizio), ma se ciò dovesse accadere, la notifica avrà il seguente aspetto:

43217b0a145c2cd.png

Tieni presente che la notifica di avviso fornisce il valore osservato che supera la soglia specificata, nonché un timestamp che indica quando è iniziato l'incidente.

Incidenti di monitoraggio

Quando si verificano, gli incidenti vengono conteggiati anche nella sezione degli incidenti della pagina Avvisi.

fdd883a9604ed981.png

Puoi fare clic sull'incidente specifico per visualizzare i dettagli relativi all'interruzione, ad esempio la durata o la gravità.

Ricorda che, quando ricevi avvisi, il primo passaggio migliore è esaminare le metriche, quindi cercare gli errori che contribuiscono all'interruzione nei log. Puoi ripassare come eseguire queste operazioni nel nostro codelab Debug della casa intelligente.

6. Complimenti

17d485868a6771bc.png

Complimenti! Hai imparato a configurare gli avvisi utilizzando le metriche fornite al tuo progetto per monitorare le interruzioni in modo automatico e ricevere notifiche durante le interruzioni del servizio.

Passaggi successivi

A partire da questo Codelab, prova i seguenti esercizi ed esplora risorse aggiuntive:

  • Puoi combinare ciò che hai appreso in questo codelab con altre metriche fornite al tuo progetto. Puoi visualizzare l'elenco completo delle metriche disponibili nella sezione Metriche supportate della pagina Monitoraggio.
  • Scopri altri tipi di canali di notifica per gli avvisi descritti nella pagina Opzioni di notifica della documentazione di Google Cloud.