Nie widzę śladów ani danych w monitorowaniu Genkit w Firebase
- Upewnij się, że w podstawowym projekcie GCP są włączone te interfejsy API:
- Sprawdź, czy do konta usługi, które uruchamia Twój kod (lub do konta usługi skonfigurowanego w ramach opcji wtyczki) w Cloud IAM zostały zastosowane te role.
- Monitoring Metric Writer (
roles/monitoring.metricWriter
) - Agent Cloud Trace (
roles/cloudtrace.agent
) - Zapisujący logi (
roles/logging.logWriter
)
- Monitoring Metric Writer (
Sprawdź, czy w logach aplikacji nie ma błędów zapisywanych w Cloud Logging, Cloud Trace lub Cloud Monitoring. W infrastrukturze GCP, takiej jak Firebase Functions czy Cloud Run, nawet wtedy, gdy konfiguracja telemetrii jest nieprawidłowa, logi do
stdout/stderr
są automatycznie przetwarzane przez agenta Cloud Logging, co umożliwia diagnozowanie problemów w konsoli Cloud Logging.Debugowanie lokalnie:
Włącz eksportowanie wersji deweloperskiej:
enableFirebaseTelemetry({ forceDevExport: true });
Aby przetestować swoje osobiste dane logowania, użyj interfejsu wiersza poleceń gcloud do uwierzytelnienia się w Google Cloud. Może to pomóc w diagnozowaniu włączonych i wyłączonych interfejsów API, ale nie testuje logowania domyślnego aplikacji uwierzytelniania gcloud.
Możesz też przejąć tożsamość konta usługi, aby przetestować dostęp w środowisku produkcyjnym. Aby udawać konta usługi, musisz mieć na swoim koncie użytkownika rolę uprawnień
roles/iam. serviceAccountTokenCreator
:gcloud auth application-default login --impersonate-service-account <SERVICE_ACCT_EMAIL>
Więcej informacji znajdziesz w dokumentacji ADC.
niezawodność przesyłania danych telemetrycznych w Firebase Functions / Cloud Run.
Gdy Genkit jest hostowany w Google Cloud Run (w tym w Cloud Functions dla Firebase), przesyłanie danych telemetrycznych może być mniej niezawodne, ponieważ kontener przechodzi w stan cyklu życia „nieaktywny”. Jeśli większa niezawodność jest dla Ciebie ważna, rozważ zmianę alokacji procesora na alokację zawsze w konsoli Google Cloud.