1. Zanim zaczniesz
Te ćwiczenia z programowania są przeznaczone dla partnerów i deweloperów Google Home, którzy korzystają z integracji z chmurą, aby poprawić jakość ekosystemu i wygodę użytkowników.
Czego się nauczysz
Panel Google Home Vitals jest głównym źródłem informacji dla deweloperów i partnerów, którzy chcą monitorować stan operacyjny swoich integracji z Google Home. W ekosystemie, w którym wygoda użytkowników zależy od opóźnienia i niezawodności, Google Home Vitals to portal samoobsługowy zawierający wszystkie szczegółowe analizy niezbędne do przejścia od reaktywnego rozwiązywania problemów do proaktywnego zarządzania jakością.
- Jak obliczany jest wynik jakości integracji
- Jak odczytywać i używać panelu
- Jak debugować wskaźniki niskiej jakości
Czego potrzebujesz
- Integracja z chmurą Google Home
Konfiguracja
Jak otworzyć panel Google Home Vitals:
- Otwórz Google Cloud Platform.
- Monitorowanie > Panel
- Kliknij panel „Google Home Vitals (Cloud)”.
2. Jak odczytywać panel
Obliczanie wyniku jakości – standard „dobry” a „słaby”
Panel informacyjny wyjaśnia zestawienie wyniku jakości. Wyniki jakości są przypisywane na poziomie typu urządzenia. Aby integracja z typem urządzenia została uznana za DOBRĄ, musi spełniać 4 kryteria jednocześnie:
- Globalny współczynnik powodzenia: ogólny współczynnik powodzenia wywołań od partnera do Google musi wynosić >=99,5%.
Uwaga: niespełnienie tego kryterium (>=99,5%) powoduje automatyczne przypisanie oceny SŁABY w całym projekcie, niezależnie od wydajności poszczególnych urządzeń. - Niezawodność poleceń: współczynnik powodzenia poleceń QUERY i EXECUTE musi wynosić >=99,5% w przypadku każdego typu urządzenia.
- Opóźnienie odpowiedzi: 90. percentyl opóźnienia w przypadku poleceń QUERY i EXECUTE musi wynosić <=1000 ms w przypadku każdego typu urządzenia.
- Integralność stanu: dokładność stanu musi wynosić >=99,5%.
Dlaczego te dane są ważne
- Globalny współczynnik powodzenia: wywołania od partnera do Google na poziomie integracji mierzą stan wywołań z Twojej chmury do Google. Współczynnik powodzenia >=99,5% zapewnia, że Google Home używa prawidłowych stanów urządzeń. Obejmuje to m.in. dodawanie i usuwanie urządzeń, wywoływanie automatyzacji oraz wyświetlanie zdarzeń w historii na karcie Aktywność w aplikacji Google Home.
- Niezawodność poleceń: współczynnik powodzenia poleceń QUERY i EXECUTE jest mierzony na poziomie typu urządzenia.Współczynnik powodzenia >=99,5% zapewnia, że polecenia użytkownika są wykonywane prawidłowo (tzn.unika się odpowiedzi Asystenta typu „Nie mogę się połączyć z urządzeniem” lub nieprawidłowego potwierdzenia polecenia, które nie zostało wykonane).
- Opóźnienie odpowiedzi: opóźnienia poleceń QUERY i EXECUTE są również mierzone na poziomie typu urządzenia.Opóźnienie <=1000 ms na typ urządzenia zapewnia, że użytkownik nie musi zbyt długo czekać na wykonanie żądanego działania (np. kilka sekund na wyłączenie światła).
- Integralność stanu: Dokładność stanu mierzy dokładność stanu przechowywanego w systemach Google i używanego do obsługi zapytań użytkowników. Jeśli te wartości są niskie, użytkownicy mogą widzieć nieprawidłowe wyniki dotyczące Twoich urządzeń, gdy wyświetlają ich stan lub korzystają z funkcji AI, takich jak Zapytaj Home. Automatyzacje mogą się nie uruchamiać, a wpisy w historii mogą się nie pojawiać w odpowiednim czasie na karcie Aktywność.
Jak odczytywać panel
Zacznij od sekcji Wyniki jakości, która jest głównym wskaźnikiem stanu integracji. Ocena DOBRY na poziomie urządzenia zależy od tego, czy wszystkie wskaźniki w tej sekcji spełniają kryteria powodzenia oznaczone kolorem ZIELONYM. Szczegółowe wymagania techniczne i definicje wskaźników znajdziesz w dokumentacji Centrum dla Deweloperów.
Sekcja „Wynik jakości” u góry panelu Google Home Vitals zawiera dane używane do obliczania wyniku jakości integracji.
Legenda
- ZIELONY (DOBRY): dane spełniają próg jakości.
- CZERWONY (SŁABY): dane nie spełniają progu jakości.
Przykład
W poniższym przykładzie widać, że typ urządzenia AC_UNIT spełnia kryteria jakości w sekcjach Współczynnik powodzenia poleceń QUERY i EXECUTE oraz Opóźnienie polecenia QUERY, ale nie spełnia kryteriów w sekcji Opóźnienie polecenia EXECUTE (czerwony pasek). Oznacza to, że polecenia są wykonywane z odpowiednim współczynnikiem powodzenia, ale opóźnienie polecenia EXECUTE jest o 36 ms za duże. Sekcja Stan systemu pokazuje współczynnik 98,92% w przypadku zagregowanych metod w całej integracji, co oznacza, że można go poprawić, aby zapewnić dokładność stanów urządzeń użytkowników w Google Home. Oznacza to, że 1,08% wywołań (DeleteAgentUser, Query, ReportStateAndNotification, RequestSyncDevices lub Sync) zwraca kody odpowiedzi inne niż 2xx lub 5xx (np. błędy 404). Ostatnim wskaźnikiem używanym do pomiaru jakości typu urządzenia AC_UNIT jest dokładność stanu. W tym przykładzie widzimy współczynnik powodzenia 77,43%, co oznacza, że użytkownicy prawdopodobnie widzą niedokładne wyniki dotyczące urządzeń. W przypadku tych 3 danych ogólny wynik dla typu urządzenia AC_UNIT to SŁABY i jest poniżej progu jakości.

Każde z tych obliczeń jakości odpowiada sekcji debugowania poniżej. Aby przeprowadzić dalsze debugowanie, otwórz zwinięte kroki.
Aby debugować współczynnik powodzenia i opóźnienia poleceń QUERY i EXECUTE, przejdź do sekcji „Krok 1. Sprawdź wywołania w chmurze”.
Aby debugować współczynnik powodzenia wywołań od partnera do Google, przejdź do sekcji „Krok 2. Sprawdź wywołania do Google”.
Aby debugować dokładność stanu w przypadku każdego typu urządzenia, przejdź do sekcji „Krok 3. Popraw dokładność stanu”.


3. Krok 1 debugowania: sprawdź wywołania w chmurze
Krok 1. Omówienie
Ta sekcja skupia się na wywołaniach w chmurze – danych mierzących stan komunikacji między Google a Twoim backendem w chmurze (znanych też jako dane od Google do partnera). Obejmuje to polecenia takie jak Query, Execute.
Śledzimy współczynnik powodzenia i opóźnienia poleceń QUERY i EXECUTE (które wpływają na wyniki jakości typu urządzenia).
Poniższe omówienie pokazuje zagregowany współczynnik powodzenia i błędy poleceń QUERY i EXECUTE na poziomie integracji. Kroki 1a–1d pokazują zestawienie tych danych na poziomie typu urządzenia lub cechy. 
Kroki 1a i 1b pokazują trend liczby żądań realizacji, liczby błędów w czasie i konkretnych stanów błędów.
Krok 1a. Sprawdź błędy polecenia QUERY

Krok 1b. Sprawdź błędy polecenia EXECUTE
Kroki 1c i 1d pokazują zestawienie 90. i 50. percentyla tych wskaźników na poziomie integracji i typu urządzenia.
Krok 1c. Sprawdź opóźnienie polecenia QUERY
Krok 1d. Sprawdź opóźnienie polecenia EXECUTE

4. Krok 2 debugowania: sprawdź wywołania do Google
Krok 2. Przegląd
Po debugowaniu wywołań od Google do partnera ten drugi krok obejmuje debugowanie wywołań z chmury partnera do Google. Ta sekcja obejmuje dane na poziomie integracji partnera, a nie typu urządzenia. Obejmuje to kody odpowiedzi takie jak 400 Bad Request, 404 Not Found i 429 Resource Exhausted.

Krok 2a. Debuguj problemy z limitem
Google Home ogranicza przydzielanie i wykorzystanie zasobów oraz egzekwuje odpowiednie limity na poziomie projektu. Google stosuje domyślny limit 6000 żądań na 60 sekund w przypadku łącznej liczby wywołań interfejsu API zapytań, usuwania, raportowania stanu i synchronizacji żądań asynchronicznych na poziomie integracji między chmurami.
Problemy z limitem quota mogą negatywnie wpływać na dokładność raportowania stanu, ponieważ nieudane aktualizacje stanu mogą powodować niezgodności. Poniżej znajdziesz wykresy z podziałem, które pokazują błędy raportowania stanu i synchronizacji żądań, podział liczby i błędów według metody interfejsu API oraz procent wykorzystania limitu. Jeśli te wykresy pokazują nieoczekiwany wzrost ruchu, sprawdź integrację, aby ustalić, czy zmiana powoduje wysyłanie większego ruchu do interfejsu Home Graph API.
W niektórych przypadkach, np. w przypadku naturalnego wzrostu ruchu w czasie (np. wzrost jest zgodny ze wzrostem liczby urządzeń, wprowadzeniem nowego typu urządzenia lub innym oczekiwanym wprowadzeniem), zwiększenie limitu integracji może być odpowiednie. Aby poprosić o zwiększenie limitu, wykonaj czynności opisane w dokumentacji dla deweloperów.


5. Krok 3 debugowania: popraw dokładność stanu
Krok 3. Omówienie
Po debugowaniu w krokach 1 i 2 krok 3 obejmuje dokładność raportowania stanu – stanów urządzeń przechowywanych w systemach Google, które są używane do obsługi zapytań użytkowników. Poniżej znajdziesz podział według cechy i typu urządzenia. Kroki 3a i 3b obejmują 2 typowe błędy raportowania stanu: błędy „Brakujące pole” i „Niedokładne”.

Krok 3a. Błędy „Brakujące pole”
Błędy „Brakujące pole” występują, gdy zestaw pól ładunku różni się między odpowiedzią na polecenie QUERY a żądaniem zgłoszenia stanu danego urządzenia. Zestaw pól w ładunku każdego urządzenia musi być taki sam. Może to być spowodowane tym, że logika obliczania ładunku różni się między odpowiedzią na polecenie QUERY a odpowiedzią na zgłoszenie stanu. Użyj wykresów poniżej, aby sprawdzić, które typy urządzeń i cechy mają niezgodne odpowiedzi na polecenie QUERY i zgłoszenie stanu.

Krok 3b. Błędy „Niedokładne”
Błędy „Niedokładne” występują, gdy zestaw pól ładunku jest taki sam w odpowiedzi na polecenie QUERY i żądaniu zgłoszenia stanu danego urządzenia, ale wartości stanu się różnią. Może to być spowodowane pominięciem zgłoszenia stanu lub tym, że logika obliczania stanu różni się między poleceniem QUERY a zgłoszeniem stanu. Użyj wykresów poniżej, aby sprawdzić, które typy urządzeń i cechy mają niezgodne odpowiedzi na polecenie QUERY i zgłoszenie stanu.


6. Inna dokumentacja i materiały
- Aby przesłać opinię lub zgłosić problemy z tym panelem, zgłoś problem w naszym publicznym narzędziu do rejestrowania błędów.
- Aby przesłać prośbę o odwołanie, zgłoś problem za pomocą naszego formularza odwołania dotyczącego danych jakości.
- Aby na bieżąco śledzić jakość integracji, skonfiguruj alerty Google Cloud Platform, aby otrzymywać powiadomienia, gdy dane spadną poniżej akceptowalnego progu. Dzięki temu będziesz pierwszą osobą, która dowie się o problemie.
- Więcej informacji znajdziesz w dokumentacji dla deweloperów: https://developers.home.google.com/tools/analytics/home-vitals.


