Visualizar registros de errores en Cloud Logging

En esta página, se explica cómo ver registros en Google Cloud's operations suite para tipos de solicitudes compatibles.

Logging

Los errores activados en cada una de las siguientes solicitudes se registran en Cloud Logging.

Los errores también se registran si un mensaje de Pub/Sub no se puede publicar en Pub/Sub. Consulta Solución de problemas de notificaciones de Pub/Sub para obtener más información.

El registro es automático y no es necesario habilitarlo. Si deseas inhabilitar Cloud Logging para uno o todos los recursos supervisados, consulta Exclusiones de registros.

Ver registros

Para ver todos los registros, ve al visor de registros. Para ver los registros de las operaciones con un estado de error, haz clic en el ícono de más información para la operación en la pestaña OPERACIONES en el navegador de atención médica y, luego, haz clic en Ver detalles en Stackdriver.

Filtra los registros

Puedes filtrar registros por tipo de tienda (tienda de DICOM o FHIR), región y conjunto de datos.

Por ejemplo, para ver los registros de almacenes de FHIR, haz clic en Almacén de FHIR de Healthcare en la primera lista en Filtrar por búsqueda de texto o etiqueta. También puedes buscar por tipo de recurso. Por ejemplo, si buscas healthcare_dicom_store, se muestran todos los registros generados para las operaciones con resource.type establecido en healthcare_dicom_store.

La codificación UTF-8 se aplica a los campos de registro. Los caracteres que no son UTF-8 se reemplazan por signos de interrogación.

Para obtener información detallada sobre el visor de registros, consulta Visualiza los registros.

Usa Cloud Logging para buscar eventos de errores

También puedes usar Cloud Logging para encontrar el registro de auditoría de un evento que genera un error. Para encontrar un evento de error en los registros de auditoría, haz lo siguiente:

  1. Busca en Cloud Logging la operación que causó.

  2. Con los detalles del registro de la operación, vuelve a ejecutar el comando específico.

  3. Visualiza los registros de auditoría del evento correspondiente. Para obtener más información sobre los registros de auditoría, consulta Visualiza los registros de auditoría de Cloud.

¿Qué se registra?

Las entradas de registro de la API de Cloud Healthcare contienen los siguientes tipos de información para depurar solicitudes:

  • Información general, como gravedad, ID del proyecto, número de proyecto y marca de tiempo
  • jsonPayload contiene el cuerpo real de la entrada. Este campo contiene el código de error, el mensaje de error y el nombre del archivo de origen cuya importación activó el error.
  • operation contiene el tipo y el ID de la operación que produjo el error.
  • resource contiene la ubicación, el conjunto de datos y el almacén de DICOM o FHIR involucrado en el error.

Si la cantidad de errores supera un límite, aparece una cantidad limitada de errores en Cloud Logging. El límite se calcula de forma dinámica según el tamaño de la entrada.

Dónde se almacenan los registros

El Google Cloud's operations suite no es un producto regionalizado. Los registros escritos en Google Cloud's operations suite podrían almacenarse en una región diferente de los almacenes DICOM y FHIR.

Entrada de registro de importación de DICOM de muestra

En la siguiente entrada de registro de muestra, se observa un error empty DICOM instance found que se produjo cuando se intentó importar gs://DICOM_FILENAME.dcm a projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/dicomStores/DICOM_STORE_ID.

 jsonPayload: {
  @type:  "type.googleapis.com/google.cloud.healthcare.logging.ImportDicomLogEntry"
  error: {
   code:  3
   message:  "empty DICOM instance found"
  }
  source:  "gs://DICOM_FILENAME.dcm"
 }
 logName:  "projects/PROJECT_ID/logs/healthcare.googleapis.com%2Foperations"
 operation: {
  id:  "PROJECT_ID"
  producer:  "import_dicom"
 }
 receiveTimestamp:  "TIMESTAMP"
 resource: {
  labels: {
   dataset_id:  "DATASET_ID"
   dicom_store_id:  "DICOM_STORE_ID"
   location:  "LOCATION"
   project_id:  "PROJECT_ID"
  }
  type:  "healthcare_dicom_store"
 }
 severity:  "ERROR"
 timestamp:  "TIMESTAMP"

Entrada de registro de importación de FHIR de muestra

En la siguiente entrada de registro de muestra, se observa un error cannot import resource que se produjo cuando se intentó importar gs://FHIR_FILENAME.ndjson a projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/fhirStore/FHIR_STORE_ID.

 jsonPayload: {
  @type:  "type.googleapis.com/google.cloud.healthcare.logging.ImportFhirLogEntry"
  error: {
   code:  3
   message:  "cannot import resource Patient/PATIENT_ID, conflicting resource already exists"
  }
  source:  "gs://FHIR_FILENAME.ndjson"
 }
 logName:  "projects/PROJECT_ID/logs/healthcare.googleapis.com%2Foperations"
 operation: {
  id:  "PROJECT_ID"
  producer:  "import_fhir"
 }
 receiveTimestamp:  "TIMESTAMP"
 resource: {
  labels: {
   dataset_id:  "DATASET_ID"
   fhir_store_id:  "FHIR_STORE_ID"
   location:  "LOCATION"
   project_id:  "PROJECT_ID"
  }
  type:  "healthcare_fhir_store"
 }
 severity:  "ERROR"
 timestamp:  "TIMESTAMP"

Entrada de registro de desidentificación de DICOM de muestra

En la siguiente entrada de registro de muestra, se observa un error cannot de-identify dicom instance que ocurrió cuando se desidentificaba la instancia de DICOM INSTANCE_ID en el conjunto de datos projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID.

 jsonPayload: {
  @type:  "type.googleapis.com/google.cloud.healthcare.logging.DeidentifyLogEntry"
  error: {
   code:  2
   message:  "Failed to process instance INSTANCE_ID"
  }
  resourceName:  "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID"
 }
 logName:  "projects/PROJECT_ID/logs/healthcare.googleapis.com%2Fdeidentify_dataset"
 operation: {
  id:  "projects/PROJECT_ID/locations/LOCATION/datasets/DATASET_ID/operations/OPERATION_ID"
  producer:  "healthcare.googleapis.com/DeidentifyDataset"
 }
 receiveTimestamp:  "TIMESTAMP"
 resource: {
  labels: {
   dataset_id:  "DATASET_ID"
   location:  "LOCATION"
   project_id:  "PROJECT_ID"
  }
  type:  "healthcare_dataset"
 }
 severity:  "ERROR"
 timestamp:  "TIMESTAMP"

Qué sigue