Observabilité de la validation du numéro de téléphone Firebase

Firebase PNV s'intègre à Cloud Monitoring et Cloud Logging.

Google Cloud Monitoring

Firebase PNV exporte une seule métrique, fpnv.googleapis.com/verification_count, avec les libellés method, outcome et sms_region :

Type de métrique Étape de lancement(Niveaux de la hiérarchie des ressources)
Nom à afficher
Genre, type, unité
Ressources surveillées
Description
Libellés
fpnv.googleapis.com/verification_count BÊTA(projet)
Firebase Phone Number Verification Métriques
DELTAINT641
fpnv.googleapis.com/App
Nombre de tentatives de validation du numéro de téléphone.
method : Méthode de validation utilisée. Toujours API.
outcome : Résultat de la tentative de validation (SUCCESS, FAILURE, QUOTA_EXCEEDED, BACKEND_ERROR).
sms_region : Région d'origine de la demande.

Google Cloud Logging

Vous pouvez utiliser Cloud Logging pour obtenir plus d'informations sur une demande de validation de numéro de téléphone spécifique. Chaque tentative de validation d'un numéro de téléphone génère une entrée de journal structurée :

ID du journal : fpnv.googleapis.com/verifications

{
  "resource": {
    "type": "fpnv.googleapis.com/App",
    "labels": [
      "resource_container": /* Your Firebase / Google Cloud project ID: "project/your-project-id" */,
      "app_id": /* The ID of a Firebase app within your project  */
    ]
  },
  "severity": /* DEBUG (for successful verification) or WARNING (for failed verification) */,
  "jsonPayload": {
    "method": /* The method used for the verification attempt: METHOD_UNSPECIFIED, API */,
    "outcome": /* The final outcome of the verification attempt: OUTCOME_UNSPECIFIED, SUCCESS, FAILURE, QUOTA_EXCEEDED, BACKEND_ERROR, DEVICE_INTEGRITY_FAILURE */,
    "nonce": /* Unique ID for the verification attempt, provided to the SDK by the client if using API verification. */,
    "response_code": /* The HTTP response code returned to the client, if the interaction was over HTTP. */,
    "sms_region_code": /* The region from which the request originated. */,
    "error_code": /* A specific error code from the underlying verification service or provider, if available. */,
    "error_message": /* A message describing why the verification failed, if applicable. */
  }
}

Par exemple, pour trouver tous les journaux des tentatives de validation basées sur l'API qui proviennent d'une application spécifique et qui ont échoué pour une raison quelconque :

log_id("fpnv.googleapis.com/verifications") AND
resource.type="fpnv.googleapis.com/App" AND
resource.labels.app_id="Your Firebase app ID" AND
severity>=WARNING AND
jsonPayload.method:"API"