Visualiza los registros exportados a Cloud Storage

Puedes ver y recuperar entradas de registro enrutadas desde Cloud Logging a buckets de Cloud Storage para respaldar auditorías de seguridad, archivado de cumplimiento o análisis externos. Las entradas de registro se guardan en buckets de Cloud Storage en lotes por hora y, por lo general, aparecen entre 2 y 3 horas después de la exportación.

Los receptores de registros no pueden enrutar entradas de registro a buckets de Cloud Storage configurados para Rapid Storage.

Antes de comenzar

Para obtener un análisis conceptual de los receptores, consulta Descripción general de los modelos de enrutamiento y almacenamiento: Receptores.

Para obtener instrucciones sobre cómo enrutar tus registros, consulta Enruta registros a destinos compatibles.

Ver registros

Para ver los registros enrutados a Cloud Storage, haz lo siguiente:

  1. En la consola de Google Cloud , ve a la página Buckets:

    Ir a Buckets

    Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Cloud Storage.

  2. Selecciona el bucket de Cloud Storage que usas como destino de enrutamiento.

Organización de registros

Cuando exportas registros a un bucket de Cloud Storage, Logging escribe un conjunto de archivos en el bucket.

En el directorio, los archivos tienen una organización jerárquica según el tipo de registro y fecha. El tipo de registro, al que se hace referencia como [LOG_ID] en la referencia de LogEntry, puede ser un nombre como syslog o un nombre compuesto como appengine.googleapis.com/request_log. Si estos registros se almacenaran en un bucket llamado my-gcs-bucket, los directorios se nombrarían como en el siguiente ejemplo:

my-gcs-bucket/syslog/YYYY/MM/DD/
my-gcs-bucket/appengine.googleapis.com/request_log/YYYY/MM/DD/

Un solo bucket de Cloud Storage puede contener registros de varios tipos de recursos. El tamaño máximo de archivo es de 3.5 GiB.

Logging no garantiza que se anule la duplicación de las entradas de registro de los receptores que contienen consultas idénticas o superpuestas. Las entradas de registro de esos receptores se pueden escribir varias veces en un bucket de Cloud Storage.

Los directorios de hoja (DD/) contienen varios archivos, cada uno de los cuales contiene las entradas de registro enrutadas para un período especificado en el nombre del archivo. Los archivos están fragmentados y sus nombres terminan en un número de fragmento, Sn o An (n=0, 1, 2, …). Por ejemplo, aquí hay dos archivos que podrían almacenarse en el directorio my-gcs-bucket/syslog/2015/01/13/:

08:00:00_08:59:59_S0.json
08:00:00_08:59:59_S1.json

Estos dos archivos juntos contienen las entradas de registro syslog correspondientes a todas las instancias durante la hora que comienza a las 08:00:00 UTC y termina a las 8:59:59 UTC. Las marcas de tiempo de las entradas de registro se expresan en UTC (Horario universal coordinado).

Las entradas de registro que llegan con un receiveTimestamp dentro de la ventana alineada de 60 minutos de su timestamp se escriben en los archivos de shard principal. Por ejemplo, una entrada de registro con un timestamp de 08:00:00 y un receiveTimestamp de 08:10:00 se almacena en el archivo de fragmento principal.

Estos archivos incluyen un fragmento principal numerado en el sufijo: _Sn.json.

Las entradas de registro que llegan con un timestamp en una ventana alineada de 60 minutos diferente de su receiveTimestamp se escriben en archivos de shard de anexo. Por ejemplo, una entrada de registro con un timestamp de 08:00:00 y un receiveTimestamp de 09:10:00 se almacena en un archivo de fragmento de apéndice.

Estos archivos incluyen un fragmento de apéndice numerado con el sufijo _An:Unix_timestamp.json.

Por ejemplo, una entrada de registro que tiene un timestamp entre las 08:00:00 y las 08:59:59, pero un receiveTimestamp en una ventana alineada de 60 minutos diferente, se escribe en un archivo con el sufijo _An:Unix_timestamp.json, en el que la marca de tiempo de Unix identifica la hora en que se enrutó el archivo a Cloud Storage. Si una entrada de registro tuviera un timestamp de 08:50:00 y un receiveTimestamp de 09:10:00, y se enrutara a las 09:15:00 el 25 de marzo de 2021, el archivo de apéndice se escribiría de la siguiente manera:

08:00:00_08:59:59_A0:1616681700.json

A fin de obtener todas las entradas de registro, debes leer todos los fragmentos de cada período; en este caso, los fragmentos de archivos 0 y 1. La cantidad de fragmentos de archivo escritos puede cambiar para cada período.

Dentro de los archivos fragmentados individuales, las entradas de registro se almacenan como una lista de objetos LogEntry. Para ver un ejemplo de una entrada syslog, consulta Organización de entradas de registro.

Ten en cuenta que el orden de clasificación de las entradas de registro en los archivos no es uniforme ni está garantizado de alguna otra manera.

Limitación

El campo LogEntry.errorGroups no está disponible para este destino. Los receptores de registros enrutan las entradas de registro que se envían a tu proyecto, pero esas entradas de registro no contienen grupos de errores.

Entradas de registro tardías

Las entradas de registro se guardan en buckets de Cloud Storage en lotes por hora. Es posible que se necesiten entre 2 y 3 horas para que aparezcan las primeras entradas. Los fragmentos de los archivos de registro enrutados con el sufijo An (“Append”) contienen las entradas de registro que llegaron tarde.

Si el destino experimenta una interrupción, Cloud Logging almacena los datos en búfer hasta que la interrupción finaliza.

Si no hay registros en el destino del receptor, verifica las métricas del sistema de exportación. Las métricas del sistema de exportación indican cuántas entradas de registro se enrutan y cuántas se descartan debido a errores. Si las métricas del sistema de exportación indican que no se enrutaron entradas de registro al destino, verifica tu [filtro][export-query] para comprobar que las entradas de registro que coinciden con tu filtro hayan llegado recientemente a Logging.

En la consola de Google Cloud , ve a la página Enrutador de registros:

Ir a Enrutador de registros

Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Logging.

Entradas de registro de App Engine

App Engine combina varias entradas secundarias de tipo google.appengine.logging.v1.LogLine (también llamadas AppLog o AppLogLine) en una entrada de registro principal de tipo google.appengine.logging.v1.RequestLog para la solicitud que causa la actividad de registro. Cada una de las líneas de registro tiene un "ID de solicitud" que identifica la entrada principal. El Explorador de registros muestra las líneas de registro con la entrada de registro de la solicitud. Logging intenta colocar todas las líneas de registro en el lote con la solicitud original, incluso si sus marcas de tiempo las colocaran en el siguiente lote. Si no es posible, es posible que falten algunas líneas de registro en la entrada de registro de la solicitud y que haya líneas de registro "huérfanas" sin una solicitud en el siguiente lote. Si esta posibilidad te parece importante, prepárate para volver a conectar las partes de la solicitud cuando proceses los registros.

Soluciona problemas

Si parece que faltan registros en el destino del receptor o sospechas que el receptor no enruta los registros de forma correcta, consulta Soluciona problemas de enrutamiento de registros.