1. Zanim zaczniesz
Jak już wspomnieliśmy w ramach warsztatów dotyczących kodu Debugowanie inteligentnego domu, publikujemy dane i dzienniki dotyczące Twoich projektów inteligentnego domu. Dane pomagają określić, gdzie występują problemy z działaniem akcji inteligentnego domu, a dzienniki są przydatne, gdy chcesz dokładniej przyjrzeć się tym problemom.
Możesz skonfigurować alerty za pomocą danych dostarczonych do projektu, aby automatycznie monitorować przerwy w działaniu i otrzymywać powiadomienia o przerwach w działaniu usługi. Publikujemy wskaźnik wiarygodności, aby podkreślić przerwy w działaniu Twojego projektu. Omówimy je w tym CodeLab wraz z innymi narzędziami do tworzenia alertów dostępnymi w Google Cloud.
Wymagania wstępne
- Integracja z usługą Works with Smart Home.
- Ukończ ćwiczenie Debugowanie inteligentnego domu.
Czego się nauczysz
- Jak monitorować problemy z wydajnością i przerwy w działaniu projektu.
- Jak utworzyć alert oparty na progu i otrzymywać powiadomienia podczas przerw w działaniu.
- Jak wykorzystać dane dotyczące ufności udostępnione Twojemu projektowi do wykrywania przerw w działaniu.
2. Monitorowanie skuteczności
Monitorowanie wydajności ma kluczowe znaczenie dla udanej integracji z ekosystemem Google Home. Udostępniamy zestaw narzędzi monitorujących deweloperom inteligentnych urządzeń domowych w Google Cloud. Za pomocą tych narzędzi możesz sprawdzić skuteczność projektu.
Uzyskiwanie dostępu do paneli
Aby uzyskać dostęp do swoich danych, najpierw sprawdź panele Google Home. Aby to zrobić, zaloguj się w konsoli Google Cloud i kliknij Operacje > Monitorowanie > Panele. Zobaczysz, że jest dostępnych kilka paneli, a panele dotyczące inteligentnego domu mają prefiks Google Home Analytics.
Utworzyliśmy osobne panele na potrzeby każdego typu integracji. Integracje z chmurą, lokalnie i Matter mają własne panele, a dane dotyczące protokołów przesyłania strumieniowego kamery są dostępne w panelu jakości kamery. Te panele będą zawierać dane tylko wtedy, gdy masz integrację odpowiedniego typu i działający projekt, który spełnia żądania.
Gdy otworzysz jedną z tych tablic, zobaczysz widok podobny do tego:
Panele zawierają różne wykresy, które pokazują szczegóły żądań obsługiwanych przez Twój projekt. W każdym panelu integracji znajdziesz wykres pokazujący łączną liczbę żądań obsługiwanych przez projekt, wykres pokazujący współczynnik sukcesu danego typu integracji oraz kilka wykresów przedstawiających zaangażowane typy i cechy urządzeń.
Do oceny skuteczności działań w ramach inteligentnego domu służą 3 kody:
Podczas przerw w działaniu usługi zwykle widać spadek wartości procentowej powodzenia i wzrost wartości na wykresie podziału błędów. Monitorowanie procenta pomyślnych uruchomień pomaga wykryć przerwy w działaniu, a sprawdzanie najczęstszych błędów w podziałce błędów może ułatwić debugowanie. Podczas przerw w działaniu usługi możesz też zauważyć wzrost opóźnień, co widać na wykresach opóźnień żądań.
Pamiętaj, że domyślny widok z wykresami, który widzisz w panelach Google Home Analytics, to tylko widok utworzony dla Twojego projektu na podstawie danych z inteligentnego domu. Za pomocą narzędzia Metrics Explorer możesz też tworzyć własne wykresy na podstawie tych samych danych i zapisywać je w panelach niestandardowych.
Eksplorator danych
Eksplorator danych to narzędzie do wizualizacji przekrojów zbioru danych projektu. W konsoli Google Cloud możesz otworzyć to narzędzie, klikając Operacje > Monitorowanie > Eksplorator danych.
Google Cloud udostępnia wiele różnych danych domyślnych, w tym niektóre niemające związku z inteligentnym domem. Dane, które udostępniamy na potrzeby inteligentnego domu, są wymienione w zasobach „actions.googleapis.com/smarthome_action/…”. Aby je łatwo znaleźć, wpisz „smarthome” w polu wyboru danych.
Wyszukiwanie hasła „inteligentny dom” spowoduje wyświetlenie wszystkich danych dotyczących inteligentnego domu, które udostępniamy w Twoim projekcie. Szczegółowe informacje o poszczególnych danych znajdziesz na stronach Monitorowanie i Rejestrowanie w naszej dokumentacji.
Jeśli chodzi o monitorowanie projektu, najprostszym wskaźnikiem do śledzenia jest Liczba żądań (który jest danymi delta). Te dane rejestrują wpisy dotyczące każdego wykonania inicjowanego przez użytkowników sterowania inteligentnym domem. Rejestrują one pola takie jak typ urządzenia, cecha, typ wykonania i pole stanu, które pokazuje wynik.
Po wybraniu tych danych pojawi się ekran z każdą grupą danych podobny do tego:
Zasadniczo w przypadku każdej kombinacji etykiet danych w tych danych istnieje zasobnik, który rejestruje zmianę (różnicę) między poprzednim a bieżącym przedziałem czasowym. Możesz grupować te zbiory lub je odfiltrowywać, aby uzyskać odpowiedni widok danych. Ponadto dane są wyrównywane w wybranych przedziałach czasu za pomocą funkcji wyrównywania (DELTA, MEAN, MEDIAN, SUM). O ile nie jest to wymagane, zwykle używasz wyrównania Delta z danymi delta.
Za pomocą narzędzia Metrics Explorer możesz tworzyć większość wykresów dostępnych w panelach Google Home Analytics. Możesz je zapisywać, aby później uzyskać do nich dostęp w panelu informacyjnym niestandardowym. Aby uzyskać bardziej złożone widoki, np. wykres współczynnika, musisz użyć języka MQL (Monitoring Query Language).
3. Miernik sukcesu
Aby śledzić skuteczność integracji, możesz użyć wskaźnika skuteczności obliczanego na podstawie danych o liczbie żądań jako wskaźnika bazowego lub wskaźnika wiarygodności skuteczności w celu zastosowania bardziej specjalistycznego podejścia.
Sukces Stawka
Wskaźnik sukcesu jest obliczany dla wszystkich integracji przez podzielenie liczby udanych żądań przez wszystkie żądania. Znajdziesz go na wykresie „Współczynnik sukcesu realizacji” w panelu informacyjnym Google Home.
Wykres skuteczności realizacji jest bardzo przydatny do monitorowania skuteczności projektu, ale nie jest zbyt przydatny podczas tworzenia niestandardowych paneli ani konfigurowania alertów. Współczynnik skuteczności jest wyprowadzony z danych o liczbie żądań, a nie z samych danych, więc aby użyć go z każdą z tych funkcji, musisz go utworzyć ponownie za pomocą języka MQL (Monitoring Query Language) w narzędziu Metrics Explorer.
Ponadto do śledzenia przerw w działaniu Twojego projektu potrzebne jest bardziej specjalistyczne podejście. Dlatego utworzyliśmy wskaźnik ufności, który zmienia się w zależności od tego, jak bardzo Twój bieżący wskaźnik skuteczności realizacji odbiega od historycznych norm.
Dane o pewności
Obrazy mogą występować w różnych kształtach i rozmiarach w ramach projektów. Mogą trwać od kilku godzin do kilku minut, co może utrudniać ich identyfikację. W tym celu utworzyliśmy w Twoim projekcie Dane o zaufaniu, które zawierają znormalizowaną wartość przewidującą niezawodność na podstawie wcześniejszych wyników. Aby uzyskać dostęp do danych o ufności, wyszukaj w nawigatorze danych smarthome, a potem wybierz Udane wykonanie.
Gdy integracja z urządzeniami inteligentnego domu osiąga skuteczność na poziomie historycznej skuteczności (średnia z 7 dni) lub wyższą, ten rodzaj danych zwraca maksymalną wartość (1,0). Jeśli odchylenie procentowe skuteczności przekracza 4 wartości standardowe (również obliczone w ciągu 7 dni), dane te zwracają wartość minimalną (0,0). W przypadkach, gdy odchylenia standardowe są zbyt małe (mniejsze niż 2,5%), wartość 0,0 jest określana na podstawie 10-procentowego spadku skuteczności.
W pozostałych przypadkach wskaźnik ten przyjmuje wartości z zakresu od 1,0 (całkowite przekonanie, że nie ma przerwy w działaniu) do 0,0 (maksymalne przekonanie, że wystąpiła przerwa w działaniu).
Dlatego podczas ustawiania alertu (omówionego w następnej sekcji) zalecamy ustawienie wartości progowej równej 0,5. Odpowiada to 2 odchyleniom standardowym lub spadkowi o 5%, zależnie od tego, która wartość jest wyższa.
4. Konfigurowanie alertów
Następnym krokiem jest skonfigurowanie alertów w projekcie, korzystając z informacji z poprzedniej sekcji.
Tworzenie zasad tworzenia alertów
Automatyczne tworzenie alertów w Google Cloud jest konfigurowane za pomocą zasad dotyczących alertów. Zasady alertów są dostępne w menu bocznym na karcie Operacje > Monitorowanie > Alerty. Nową zasadę tworzenia alertów możesz utworzyć, klikając opcję +UTWÓRZ ZASADY. Otworzy się ekran tworzenia zasad tworzenia alertów:
Utworzenie zasad tworzenia alertów składa się z 3 etapów. Najpierw musisz określić, co chcesz śledzić, dodając warunek. Po naciśnięciu przycisku DODAJ WARUNEK pojawi się okno podobne do Eksploratora danych, z dodatkowymi opcjami konfiguracji warunku:
Jako wartość docelową wybierz wskaźnik ufności, o którym mowa była w poprzedniej sekcji. Upewnij się, że aligner jest ustawiony na deltę za pomocą tych danych (Pokaż opcje zaawansowane > Aligner). Kolejnym krokiem jest skonfigurowanie warunków alertu i użycie tych ustawień:
Warunek aktywuje się, jeśli – ta główna konfiguracja określa, kiedy mają być uruchamiane alerty. Wybranie opcji Wszystkie naruszenia w dowolnym ciągu czasowym będzie odpowiednie, ponieważ ustawimy próg dla danych i będziemy sprawdzać, czy ta wartość zostanie przekroczona.
Warunek – chcemy, aby alert był wywoływany, gdy wartość spadnie poniżej progu, dlatego ustawimy go na jest poniżej. W przypadku tej miary wartość 1,0 oznacza, że integracja działa prawidłowo, a wartość 0,0 oznacza całkowite przerwanie działania.
Próg – utworzyliśmy wskaźnik ufności, aby zapewnić najlepsze wyniki, gdy ta wartość jest ustawiona na 0,5. Jeśli chcesz otrzymywać częstsze alerty i powiadomienia o mniej istotnych zdarzeniach, możesz zwiększyć tę wartość (maksymalnie do 1,0). Jeśli chcesz otrzymywać mniej alertów, tylko w przypadku poważniejszych problemów, możesz zmniejszyć tę wartość (min.0,0).
For (Na czas) – to ustawienie określa, jak długo przerwa w działaniu usługi może trwać, zanim otrzymasz o niej powiadomienie. Zalecamy pozostawienie tego ustawienia na najnowszej wartości, aby otrzymywać alerty o każdym przekroczeniu progu. Nasze dane dotyczące ufności są publikowane co 15 minut i odnoszą się do średniego powodzenia w tym okresie.
Po dodaniu warunku następnym krokiem jest wybranie kanału powiadomień. Najprostszą metodą powiadomienia są alerty e-mailowe. Możesz wybrać e-maila z listy w menu Kanały powiadomień:
Jeśli zaznaczysz opcję Powiadamiaj przy zamknięciu incydentu, po oznaczeniu incydentu jako zamkniętego zostanie wysłane kolejne powiadomienie. W takim przypadku musisz też wybrać czas trwania automatycznego zamknięcia incydentu, który domyślnie wynosi 7 dni.
Ostatnim krokiem jest nadanie alertowi nazwy i dodanie dokumentów, które mają być dołączane do powiadomień.
Przesłanie dokumentacji jest zalecane, zwłaszcza jeśli nie jesteś osobą, która otrzyma alert. Dodanie informacji o tym, gdzie należy sprawdzić problem podczas incydentu oraz jak go zdiagnozować i debugować, może być pomocne w przypadku przerwy w działaniu. W razie potrzeby możesz skorzystać z naszego przewodnika po rozwiązywaniu problemów.
Po zapisaniu zasada tworzenia alertów będzie widoczna w sekcji Zasady na stronie Alerty.
5. Zapobieganie przerwom w działaniu
Po skonfigurowaniu alertów będziesz otrzymywać powiadomienia o przerwach w działaniu usługi za pomocą podanych przez Ciebie kanałów powiadomień. Na stronie Alerty zostanie też utworzony wpis o incydencie.
Otrzymywanie alertów
W tym CodeLab kanałem powiadamiania był e-mail. Mam nadzieję, że nie będziesz otrzymywać żadnych alertów (nie będzie żadnych przerw w działaniu), ale jeśli tak się stanie, powiadomienie będzie wyglądać tak:
Zwróć uwagę, że powiadomienie o wystąpieniu alertu zawiera obserwowaną wartość, która przekroczyła określony przez Ciebie próg, oraz sygnaturę czasową z datą i godziną rozpoczęcia incydentu.
Incydenty monitorowania
W miarę ich występowania będą one też zliczane w sekcji Incydenty na stronie Alerty.
Możesz kliknąć konkretny incydent, aby wyświetlić szczegóły dotyczące przerwy w działaniu usługi, takie jak czas jej trwania lub stopień poważnośc.
Pamiętaj, że gdy otrzymujesz alerty, najlepiej najpierw sprawdzić dane, a potem w logach poszukać błędów, które spowodowały przerwę w działaniu usługi. W tym celu możesz skorzystać z ćwiczenia z programowania Debugowanie inteligentnego domu.
6. Gratulacje
Gratulacje! Udało Ci się skonfigurować alerty za pomocą danych dostarczonych do projektu, aby automatycznie monitorować przerwy w działaniu i otrzymywać powiadomienia o przerwach w działaniu usługi.
Dalsze kroki
Na podstawie tego ćwiczenia z programowania wykonaj te ćwiczenia i zapoznaj się z dodatkowymi materiałami:
- Możesz połączyć to, czego się nauczyłeś/nauczyłaś w tym laboratorium kodu, z innymi danymi dostarczonymi do projektu. Pełną listę dostępnych danych znajdziesz w sekcji Obsługiwane dane na stronie Monitorowanie.
- Zapoznaj się z innymi typami kanałów powiadomień o alertach, które są opisane na stronie Opcje powiadomień w dokumentacji Google Cloud.