Monitorowanie przerw w działaniu inteligentnego domu

1. Zanim zaczniesz

Jak już wspomnieliśmy w laboratorium programistycznym 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.

dd44868a4ff2df6e.png

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

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.

Otwieranie 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”.

317697e52ced2437.png

Utworzyliśmy osobne panele, które odpowiadają poszczególnym typom 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:

f8bfd69286c569a4.png

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ą niezbędne 3 rodzaje wykresów:

f511fafd3aaaa1eb.png

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 odsetka powodzenia wykonania pomaga wykryć przerwę 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.

Metrics Explorer

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.

538d851edfd34764.png

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 w naszej dokumentacji na stronach MonitorowanieRejestrowanie.

Jeśli chodzi o monitorowanie projektu, najprostszym wskaźnikiem do śledzenia jest Liczba żądań (który jest danymi delta). Te dane rejestrują wpis dla każdego wykonania inicjowanego przez użytkowników inteligentnego domu i rejestrują 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:

b1c18141d15a0e09.png

Zasadniczo w przypadku każdej kombinacji etykiet danych obecnych 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 filtrować, 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. wykresy stosunku, musisz użyć języka zapytań MQL.

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 ufności skuteczności, który pozwala na bardziej specjalistyczne podejście.

Wskaźnik sukcesu

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 Analytics.

55ea8930fbf48d9e.png

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 dotyczących liczby żądań, a nie z samych danych, więc aby użyć go z korzyścią z każdej z tych funkcji, musisz go utworzyć ponownie za pomocą języka MQL (Monitoring Query Language) w narzędziu Metrics Explorer.

Aby śledzić przerwy 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 norm historycznych.

Wskaźnik 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 dotyczące ufności, 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.

ab467a1777281526.png

Gdy integracja z urządzeniami inteligentnego domu osiąga skuteczność na poziomie co najmniej równym skuteczności historycznej (średnia z 7 dni), ten wskaźnik zwróci wartość maksymalną (1,0). Jeśli odchylenie procenta skuteczności przekracza 4 odchylenia 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% spadku skuteczności.

W pozostałych przypadkach wskaźnik ten przyjmuje wartości 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. Spowoduje to wyświetlenie ekranu tworzenia zasad tworzenia alertów:

6e417d88c2274b3d.png

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 kilkoma dodatkowymi opcjami konfiguracji warunku:

df1ccf7da741e1c7.png

Jako wartość docelową wybierz wskaźnik ufności, który został opisany w poprzedniej sekcji. Upewnij się, że aligner jest ustawiony na deltę za pomocą tego wskaźnika (Pokaż opcje zaawansowane > Aligner). Kolejnym krokiem jest skonfigurowanie warunków alertu i użycie tych ustawień:

4192e0f4ea00dd28.png

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 metryki wartość 1,0 oznacza, że integracja działa prawidłowo, a wartość 0,0 wskazuje na całkowitą przerwę w działaniu.

Próg – wskaźnik ufności został utworzony tak, aby zapewniać najlepsze wyniki, gdy jego wartość wynosi 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 (Dla) – to ustawienie określa, jak długo przerwa w działaniu usługi może trwać, zanim zostanie wysłane 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ń:

3cc10629830e7f13.png

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ń.

686fb1c537fee10.png

Przesłanie dokumentacji jest zalecane, zwłaszcza jeśli nie jesteś osobą, która otrzyma alert. Dodanie kroków, takich jak informacje o tym, co należy sprawdzić podczas incydentu oraz jak diagnozować i debugować problemy, 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 zasad tworzenia alertów będą one widoczne w sekcji Zasady na stronie Alerty.

c71a001e4df035ee.png

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:

43217b0a145c2cd.png

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.

fdd883a9604ed981.png

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

17d485868a6771bc.png

Gratulacje! Udało Ci się skonfigurować alerty, korzystając z danych dostarczonych do projektu, aby automatycznie monitorować przerwy w działaniu i otrzymywać powiadomienia o przerwach w działaniu usługi.

Dalsze kroki

Wykorzystując to Codelab, wykonaj te ćwiczenia i pobierz dodatkowe materiały:

  • 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.