Monitorowanie przerw w działaniu inteligentnego domu

1. Zanim zaczniesz

Zgodnie z opisem w ramach ćwiczenia z programowania Debugowanie inteligentnego domu publikujemy dane i logi w Twoich projektach związanych z inteligentnym domem. Dane pomagają określić, gdzie występuje problem z akcją inteligentnego domu, a dzienniki przydają się, gdy dokładniej analizujesz te problemy.

dd44868a4ff2df6e.png

Możesz skonfigurować alerty, korzystając z udostępnionych w projekcie wskaźników, aby w sposób automatyczny monitorować przerwy w działaniu usługi i otrzymywać powiadomienia w przypadku przerw w działaniu usługi. Publikujemy wskaźnik ufności, który pokazuje zakłócenia w Twoim projekcie. Omówimy je w tym ćwiczeniu w programie razem z innymi narzędziami do generowania alertów dostępnymi w Google Cloud Platform.

Wymagania wstępne

Czego się nauczysz

  • Jak monitorować problemy z wydajnością i przerwy w działaniu usługi w projekcie.
  • Jak utworzyć alert oparty na wartościach progowych i otrzymywać powiadomienia w trakcie zakłóceń.
  • Jak wykorzystać wskaźnik ufności udostępniany w projekcie do wykrywania przerw w działaniu usługi.

2. Monitorowanie skuteczności

Monitorowanie wydajności ma kluczowe znaczenie dla udanej integracji z ekosystemem inteligentnego domu Google. Programistom inteligentnych domów udostępniamy zestaw narzędzi do monitorowania w Google Cloud Platform. Możesz użyć tych narzędzi, aby sprawdzić wydajność projektu.

Uzyskiwanie dostępu do paneli

Pierwszym krokiem, aby uzyskać dostęp do swoich danych, jest sprawdzenie paneli Google Home. Aby to zrobić, zaloguj się w konsoli Google Cloud i kliknij Operacje > Monitorowanie > Panele. Zobaczysz, że dostępnych jest wiele paneli. Są one też oznaczone prefiksem Google Home Analytics.

317697e52ced2437.png

Utworzyliśmy osobne panele dla poszczególnych typów integracji. Integracje Cloud, Local i Matter mają własny panel, a dane o protokołach strumieniowego przesyłania danych z kamery są dostępne w panelu jakości kamery. Te panele będą zawierać dane tylko wtedy, gdy masz integrację odpowiedniego typu oraz działający projekt spełniający żądania.

Po otwarciu jednego z paneli zobaczysz widok podobny do tego:

f8bfd69286c569a4.png

Panele zawierają różne wykresy przedstawiające szczegóły żądań obsługiwanych przez Twój projekt. W każdym panelu integracji znajduje się wykres przedstawiający łączną liczbę żądań obsługiwanych przez Twój projekt, wykres przedstawiający wskaźnik sukcesu danego typu integracji oraz kilka wykresów przedstawiających typy i cechy urządzeń.

Dostępne są 3 wykresy, które są kluczowe do oceny skuteczności działań inteligentnego domu:

f511fafd3aaaa1eb.png

W trakcie przerw w działaniu usługi możesz zauważyć trendy procentowe sukcesu i trendy na wykresie z podziałem błędów. Monitorowanie odsetka powodzenia wykonania pomaga zauważyć przerwę w działaniu, a zapoznanie się z najważniejszymi błędami w zestawieniu błędów może pomóc w debugowaniu. Możesz też zauważyć wzrost czasu oczekiwania w przypadku przerw w działaniu usługi, co widać na wykresach czasu oczekiwania na żądania.

Pamiętaj, że domyślny widok z wykresami widoczny w panelach informacyjnych w Google Home Analytics to tylko widok utworzony na potrzeby Twojego projektu na podstawie danych wskaźników dotyczących inteligentnego domu. Za pomocą narzędzia Metrics Explorer możesz też tworzyć własne wykresy na podstawie tych samych danych bazowych i zapisywać je w panelach niestandardowych.

Eksplorator wskaźników

Metrics Explorer to narzędzie do wizualizacji przekrojów zbioru danych projektu. Narzędzie jest dostępne w Google Cloud Console, klikając Operacje > Monitorowanie > Metrics Explorer.

Google Cloud udostępnia gotowe do użycia wiele różnych wskaźników, w tym niektóre niezwiązane z inteligentnym domem. Wskaźniki dotyczące inteligentnego domu są wymienione w sekcji „actions.googleapis.com/smarthome_action/...” i można je łatwo wyszukać, wpisując „smarthome” w polu wyboru danych.

538d851edfd34764.png

Po wyszukaniu słowa „smarthome” wyświetlą się wszystkie wskaźniki dotyczące inteligentnego domu, które oferujemy w ramach Twojego projektu. Szczegółowe informacje o poszczególnych danych znajdziesz na stronach Monitorowanie i Logowanie w naszej dokumentacji.

W przypadku monitorowania projektu najprostszym wskaźnikiem, do którego należy się odwołać, jest wskaźnik Liczba żądań (czyli wskaźnik delta). Ten wskaźnik rejestruje wpis dla każdego uruchomienia inteligentnego domu zainicjowanego przez użytkowników i rejestruje pola takie jak typ urządzenia, cecha, typ wykonania związany z wykonaniem oraz pole stanu pokazujące wynik.

Wybór tego wskaźnika spowoduje wyświetlenie ekranu z każdym zasobnikiem danych podobnym do tego:

b1c18141d15a0e09.png

Zasadniczo dla każdej kombinacji etykiet danych obecnych w tym wskaźniku istnieje zasobnik, który rejestruje zmianę (delta) między poprzednim a bieżącym przedziałem czasu. Te zasobniki można grupować lub odfiltrowywać, aby uzyskać odpowiedni wycinek danych widoku. Dodatkowo dane są przyporządkowane do wybranych przedziałów czasu za pomocą funkcji wyrównywania (DELTA, MEAN, MEDIAN, SUMA). O ile nie jest to potrzebne, należy zazwyczaj stosować wyrównanie delta ze wskaźnikiem delta.

Większość wykresów dostępnych w panelach informacyjnych w Google Home Analytics możesz tworzyć za pomocą narzędzia Metrics Explorer, a potem zapisywać wykresy w panelu niestandardowym. Aby uzyskać bardziej złożone widoki, takie jak wykres współczynnika, musisz użyć języka MQL (Monitoring Query Language).

3. Miernik sukcesu

Jeśli chodzi o śledzenie powodzenia integracji, jako wskaźnika bazowego możesz używać wskaźnika sukcesu obliczanego na podstawie danych liczby żądań lub pewności, że to się uda w przypadku bardziej specjalistycznego podejścia.

Wskaźnik sukcesu

Wskaźnik sukcesu jest obliczany dla wszystkich integracji przez podzielenie liczby udanych żądań do wszystkich żądań. Znajdziesz go na wykresie Wskaźnik sukcesu realizacji zamówień w panelu informacyjnym Analytics na stronie głównej Google.

55ea8930fbf48d9e.png

Wykres wskaźnika sukcesu z realizacją przydaje się do monitorowania wydajności projektu, ale nie jest potrzebny podczas tworzenia niestandardowych paneli czy konfigurowania alertów. Wskaźnik sukcesu jest określany na podstawie wskaźnika liczby żądań, a nie z samego wskaźnika, więc musisz go odtworzyć za pomocą MQL (Monitoring Query Language) w narzędziu Metrics Explorer, aby używać go z dowolną z tych funkcji.

Uważamy też, że aby śledzić zakłócenia działania projektu, potrzebne jest bardziej specjalistyczne podejście. Dlatego stworzyliśmy wskaźnik ufności, który zmienia się w zależności od tego, w jakim stopniu Twój obecny wskaźnik realizacji zamówienia odbiega od historycznych norm.

Wskaźnik ufności

Przerwy w działaniu mogą mieć różne kształty i rozmiary w projektach. Mogą trwać od kilku godzin do kilku minut, co może utrudniać ich identyfikację. W tym celu utworzyliśmy w projekcie wskaźnik ufności, który zapewnia znormalizowaną wartość do prognozowania niezawodności na podstawie wcześniejszej wydajności. Aby uzyskać dostęp do danych o poziomie ufności, wyszukaj hasło Smarthome w eksploratorze danych, a potem wybierz Poziom ufności wykonania.

ab467a1777281526.png

Jeśli skuteczność integracji inteligentnego domu będzie na poziomie skuteczności historycznej lub wyższej (średnia z 7 dni), ten wskaźnik zwróci wartość maksymalną (1,0). Jeśli odsetek Twoich wyników odbiega o ponad 4 odchylenia standardowe (obliczane także przez 7 dni), ten wskaźnik zwraca wartość minimalną (0,0). Jeśli odchylenia standardowe są zbyt małe (poniżej 2,5%), ten wskaźnik ustala wartość 0,0 na poziomie 10-procentowego spadku wartości procentowej powodzenia.

We wszystkich przypadkach ten wskaźnik podaje wartości z zakresu od 1,0 (całkowicie pewnie, że nie ma przerwy w działaniu) do 0,0 (maksymalnej pewności, że wystąpiła przerwa w działaniu usługi).

Dlatego przy konfigurowaniu alertu (który przedstawimy w następnej sekcji) zalecamy ustawienie wartości progowej wartości 0,5. Odpowiada to 2 odchylkom standardowym lub spadkowi o 5%, zależnie od tego, która wartość jest wyższa.

4. Konfiguracja alertów

W następnym kroku użyj informacji z poprzedniej sekcji, aby skonfigurować alerty dotyczące projektu.

Tworzenie zasad tworzenia alertów

Automatyczne alerty w Google Cloud Platform są konfigurowane w zasadach tworzenia alertów. Zasady tworzenia alertów możesz uzyskać w bocznym menu na karcie Operacje > Monitorowanie > Alerty. Aby utworzyć nową zasadę tworzenia alertów, wybierz opcję +UTWÓRZ ZASADĘ. Otworzy się ekran tworzenia zasad tworzenia alertów:

6E417d88c2274b3d.png

Tworzenie zasad tworzenia alertów składa się z 3 etapów. Najpierw musisz określić, co chcesz śledzić, dodając warunek. Po kliknięciu przycisku DODAJ WARUNEK otworzy się okno podobne do narzędzia Metrics Explorer, ale zawiera dodatkowe opcje konfigurowania warunku:

df1ccf7da741e1c7.png

Jako wartość docelową wybierz wskaźnik ufności omówiony w poprzedniej sekcji. Upewnij się, że wyrównanie jest ustawione na delta, korzystając z tego wskaźnika (Pokaż opcje zaawansowane > Wyrównanie). Następnym krokiem jest skonfigurowanie warunku tworzenia alertów i użycie tych ustawień:

4192e0f4ea00dd28.png

Warunek jest wyzwalany, jeśli – to główna konfiguracja określająca, kiedy mają być aktywowane alerty. Wybranie opcji Dowolny ciąg czasowy narusza zadziała, ponieważ ustawimy próg dla naszych danych i będziemy monitorować, czy wartość została przekroczona.

Warunek – chcemy, aby alert był wywoływany, gdy wartość spadnie poniżej wartości progowej, więc ustawimy ją na jest poniżej. Wartość 1,0 oznacza, że integracja działa prawidłowo, a 0,0 – konkretną przerwa w działaniu usługi.

Próg – opracowaliśmy wskaźnik ufności, który zapewnia najlepsze wyniki, gdy ta wartość ma wartość 0,5. Jeśli chcesz częściej otrzymywać alerty i otrzymywać powiadomienia o mniejszej liczbie incydentów, możesz spróbować zwiększyć tę wartość (maksymalnie 1,0). Następnie, jeśli chcesz otrzymywać mniej alertów tylko w przypadku poważniejszych problemów, możesz spróbować zmniejszyć tę wartość (min.0,0).

Dla – to ustawienie określa, jak długo ma trwać przerwa w działaniu usługi, zanim otrzymasz alert. Zalecamy pozostawienie tego ustawienia na najnowszej wartości, aby otrzymywać alerty, gdy przekroczysz próg. Nasz wskaźnik ufności jest publikowany co 15 minut na podstawie średniego sukcesu w tym okresie.

Po dodaniu warunku następnym krokiem jest wybór kanału powiadomień. Najprostszą metodą powiadamiania jest alerty e-mail. Możesz wybrać adres e-mail z menu Kanały powiadomień:

3cc10629830e7f13.png

Jeśli zaznaczysz opcję Powiadom o zamknięciu incydentu, po oznaczeniu incydentu otrzymasz kolejne powiadomienie. W takim przypadku wybierz też Czas trwania automatycznego zamykania incydentu, który jest domyślnie ustawiony na 7 dni.

Na koniec nadaj alertowi nazwę i dodaj wszelkie dokumenty, które mają być dołączane do powiadomień.

686fb1c537fee10.png

Dostarczenie dokumentacji jest zalecane, zwłaszcza jeśli to nie Ty będziesz otrzymywać alert. Dodanie kroków, takich jak miejsca sprawdzania w trakcie incydentu oraz sposoby klasyfikowania i debugowania, mogą pomóc w tym czasie. W razie potrzeby możesz skorzystać z naszego przewodnika dotyczącego rozwiązywania problemów.

Po zapisaniu zasada tworzenia alertów będzie widoczna w sekcji Zasady na stronie Alerty.

c71a001e4df035ee.png

5. ograniczanie przerw w działaniu usługi

Gdy skonfigurujesz alerty, będziesz otrzymywać powiadomienia o przerwach w działaniu usługi za pomocą podanych przez Ciebie kanałów powiadomień, a na stronie Alerty pojawi się wpis o incydencie.

Otrzymywanie alertów

W ramach tych ćwiczeń z programowania zależało nam na tym, aby przesyłać powiadomienia e-mailem. Miejmy nadzieję, że po ustawieniu konfiguracji nie otrzymasz żadnych alertów (nie będzie żadnych przerw w działaniu usługi), ale powiadomienie będzie wyglądać mniej więcej tak:

43217b0a145c2cd.png

Powiadomienie zawiera informacje o zaobserwowanej wartości przekraczającej określony przez Ciebie próg, a także z sygnaturą czasową wskazującą, kiedy incydent rozpoczął się po raz pierwszy.

Monitorowanie incydentów

Zliczone incydenty będą też zliczane w sekcji incydentów na stronie Alerty.

fdd883a9604ed981.png

Możesz kliknąć dany incydent, aby wyświetlić szczegółowe informacje o przerwie, na przykład jak długo trwała lub jak bardzo była poważna.

Gdy otrzymujesz alerty, najlepszym pierwszym krokiem jest przyjrzenie się danym, a potem wyszukanie w dziennikach błędów, które przyczyniły się do awarii. Jeśli chcesz przypomnieć sobie, jak to zrobić, wykonaj nasze ćwiczenia z programowania dotyczące debugowania inteligentnego domu.

6. Gratulacje

17d485868a6771bc.png

Gratulacje! Wiesz już, jak skonfigurować alerty przy użyciu wskaźników dostarczonych w projekcie, aby automatycznie monitorować przerwy w działaniu usługi i otrzymywać powiadomienia w przypadku przerw w działaniu usługi.

Dalsze kroki

Nawiązując do tych ćwiczeń z programowania, wypróbuj te ćwiczenia i zapoznaj się z dodatkowymi materiałami:

  • Informacje uzyskane w tym ćwiczeniu z programowania możesz łączyć z innymi wskaźnikami udostępnianymi w projekcie. Pełną listę dostępnych danych znajdziesz w sekcji Obsługiwane dane na stronie Monitorowanie.
  • Poznaj inne typy kanałów powiadomień, które zostały opisane na stronie Opcje powiadomień w dokumentacji Google Cloud Platform.