Z tego krótkiego przewodnika dowiesz się, jak skonfigurować śledzenie Firebase Genkit dla wdrożonych funkcji Genkit, aby móc zbierać i wyświetlać dane telemetryczne w czasie rzeczywistym. Dzięki monitorowaniu Firebase Genkit możesz sprawdzać, jak funkcje Genkit działają w produkcji.
Najważniejsze funkcje Genkit Monitoring w Firebase:
- Wyświetlanie danych ilościowych, takich jak opóźnienia, błędy i wykorzystanie tokenów funkcji Genkit.
- Sprawdzanie śladów, aby wyświetlić kroki, dane wejściowe i dane wyjściowe Genkit, co ułatwia debugowanie i polepsza jakość.
- Eksportowanie śladów produkcyjnych w celu przeprowadzenia oceny w Genkit.
Konfigurowanie Genkit Monitoring wymaga wykonania zadań zarówno w kodzie źródłowym, jak i w konsoli Google Cloud.
Zanim zaczniesz
Jeśli nie masz jeszcze projektu Firebase, utwórz go.
W konsoli Firebase kliknij Dodaj projekt i postępuj zgodnie z instrukcjami wyświetlanymi na ekranie. Możesz utworzyć nowy projekt lub dodać usługi Firebase do istniejącego projektu Google Cloud.
Upewnij się, że Twój projekt jest objęty abonamentem Blaze.
Genkit Monitoring korzysta z danych telemetrycznych zapisywanych w Google Cloud Logging, Metrics i Trace, które są płatnymi usługami. Aby dowiedzieć się więcej o cenach i limitach bezpłatnego poziomu, przejdź na stronę Cennik Google Cloud Observability.
Aby napisać funkcję Genkit, postępuj zgodnie z przewodnikiem na temat rozpoczynania pracy. Przygotuj kod do wdrożenia, korzystając z jednego z tych przewodników:
Krok 1. Dodawanie wtyczki Firebase
Zainstaluj wtyczkę @genkit-ai/firebase
w projekcie:
npm i –save @genkit-ai/firebase
Zaimportuj plik enableFirebaseTelemetry
do pliku konfiguracji Genkit (pliku, w którym inicjowany jest plik genkit(...)
), i nazwij go:
import { enableFirebaseTelemetry } from '@genkit-ai/firebase';
enableFirebaseTelemetry();
Krok 2. Włączanie wymaganych interfejsów API
Sprawdź, czy w projekcie GCP są włączone te interfejsy API:
Te interfejsy API powinny być widoczne w panelu interfejsów API Twojego projektu.
Krok 3. Konfigurowanie ustawień
Aby się uwierzytelnić w usługach Google Cloud Logging, Metrics i Trace, wtyczka Firebase musi używać konta usługi.
Przypisz te role do konta usługi skonfigurowanego do uruchamiania kodu w konsoli Google Cloud IAM. W przypadku Cloud Functions dla Firebase lub Cloud Run jest to zwykle domyślne konto usługi Compute.
- Monitoring Metric Writer (
roles/monitoring.metricWriter
) - Agent Cloud Trace (
roles/cloudtrace.agent
) - Zapisujący logi (
roles/logging.logWriter
)
Krok 4. (Opcjonalnie) Testowanie konfiguracji lokalnie
Przed wdrożeniem możesz uruchomić kod Genkit lokalnie, aby sprawdzić, czy dane telemetryczne są zbierane i czy można je wyświetlić w panelu Genkit Monitoring.
Aby wysyłać dane telemetryczne ze środowiska lokalnego, w kodzie Genkit ustaw wartość
forceDevExport
natrue
.Użyj konta usługi do uwierzytelniania i testowania konfiguracji.
Za pomocą narzędzia wiersza poleceń Google Cloud uwierzytelnij się za pomocą konta usługi:
gcloud auth application-default login --impersonate-service-account <SERVICE_ACCT_EMAIL>
Uruchom i wywołaj funkcję Genkit, a potem wyświetl dane na panelu Genkit Monitoring. Poczekaj maksymalnie 5 minut na zebranie pierwszych danych. Możesz skrócić ten czas, ustawiając wartość
metricExportIntervalMillis
w konfiguracji telemetrii.Jeśli dane nie pojawiają się w panelu Genkit Monitoring, zapoznaj się z instrukcjami dotyczącymi rozwiązywania problemów, aby dowiedzieć się, jak je debugować.
Krok 5. Ponownie skompiluj i wdróż kod
Aby zacząć zbierać dane, ponownie zbuduj, wdróż i uruchom funkcję Genkit. Gdy Genkit Monitoring otrzyma Twoje dane, możesz je wyświetlić w panelu Genkit Monitoring.