Наблюдаемость проверки номера телефона Firebase

Firebase PNV интегрируется как с Cloud Monitoring, так и с Cloud Logging.

Мониторинг облака Google

Firebase PNV экспортирует одну метрику, fpnv.googleapis.com/verification_count , с метками method , outcome и sms_region :

Тип метрики Этап запуска (Уровни иерархии ресурсов)
Отображаемое имя
Вид, Тип, Единица измерения
Контролируемые ресурсы
Описание
Этикетки
fpnv.googleapis.com/verification_count BETA (проект)
Метрики Firebase Phone Number Verification
DELTA , INT64 , 1
fpnv.googleapis.com/App
Количество попыток проверки номера телефона.
method : Используемый метод проверки. Всегда API .
outcome : Результат попытки проверки ( SUCCESS , FAILURE , QUOTA_EXCEEDED , BACKEND_ERROR ).
sms_region : Регион, из которого поступил запрос.

Ведение журналов в облаке Google

Вы можете использовать облачное ведение журнала, чтобы получить дополнительную информацию о конкретном запросе на проверку номера телефона. Каждая попытка проверки номера телефона создаёт структурированную запись в журнале:

Идентификатор журнала: 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. */
  }
}

Например, чтобы найти все журналы попыток проверки на основе API, которые были инициированы определенным приложением и по какой-либо причине завершились неудачей:

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"