En este documento, se explica cómo Cloud Logging procesa las entradas de registro y se describen los componentes clave del enrutamiento y el almacenamiento de Logging. El enrutamiento hace referencia al proceso que usa Cloud Logging para determinar qué hacer con una entrada de registro recién llegada. Puedes enrutar entradas de registro a destinos como los buckets de Logging, que almacenan la entrada de registro, o a Pub/Sub. Para exportar tus registros a destinos de terceros, enruta tus registros a un tema de Pub/Sub y, a continuación, autoriza al destino de terceros a suscribirse al tema de Pub/Sub.
En términos generales, así es como Cloud Logging enruta y almacena las entradas de registro:
Transferencia y enrutamiento de registros con el enrutador de registros
En las siguientes secciones, se explica cómo Logging registra los registros y se enrutan a través del enrutador de registros mediante receptores.
Enrutador de registros
Se envía una entrada de registro al recurso de Google Cloud especificado en su campo logName
durante su llamada entries.write
.
Cloud Logging recibe entradas de registro mediante la API de Cloud Logging, en la que pasa por el enrutador de registros. Los receptores del enrutador de registros comparan cada entrada de registro con el filtro de inclusión y los filtros de exclusión existentes que determinan a qué destinos, incluidos los buckets de Cloud Logging, se debe enviar la entrada de registro. Puedes usar combinaciones de receptores para enrutar los registros a varios destinos.
El enrutador de registros almacena los registros de manera temporal. Este comportamiento se almacena en búfer en caso de interrupciones y alteraciones temporales que pueden ocurrir cuando un receptor enruta los registros a un destino. El almacenamiento en búfer no protege contra errores de configuración del receptor. Si tu receptor está configurado de forma incorrecta, Logging descarta los registros, se genera un registro de error y se envía un correo electrónico que te notifica un error de configuración del receptor.
Ten en cuenta que el almacenamiento temporal del enrutador de registros es distinto del almacenamiento a largo plazo que proporcionan los buckets de Logging.
Se descartan las entradas de registro entrantes con marcas de tiempo que superan el período de retención de registros o que tienen más de 24 horas en el futuro.
Receptores
Los receptores controlan cómo Cloud Logging enruta los registros. Con los receptores, puedes enrutar algunos o todos tus registros a los destinos admitidos. Estos son algunos de los motivos por los que es posible que desees controlar la forma en que se enrutan tus registros:
- Almacenar registros que es poco probable que se lean, pero que deben retenerse con fines de cumplimiento.
- Para organizar tus registros en buckets en un formato que te resulte útil.
- Para usar herramientas de análisis de macrodatos en tus registros
- Para transmitir tus registros a otras aplicaciones, otros repositorios o a terceros Por ejemplo, si deseas exportar los registros de Google Cloud a fin de verlos en una plataforma de terceros, configura un receptor para enrutar las entradas de registro a Pub/Sub.
Los receptores pertenecen a un recurso determinado de Google Cloud: proyectos, cuentas de facturación, carpetas y organizaciones de Google Cloud. Cuando el recurso recibe una entrada de registro, enruta la entrada de registro de acuerdo con los receptores contenidos en ese recurso y, si está habilitado, cualquier receptor ancestral que pertenezca a la jerarquía de recursos. La entrada de registro se envía al destino asociado con cada receptor coincidente.
Cloud Logging proporciona dos receptores predefinidos para cada proyecto, cuenta de facturación, carpeta y organización de Google Cloud: _Required
y _Default
. Todos los registros que se generan en un recurso se procesan de forma automática a través de estos dos receptores y, luego, se almacenan en los buckets _Required
o _Default
con el nombre correspondiente.
Los receptores actúan de forma independiente entre sí. Sin importar cómo los receptores predefinidos procesen las entradas de registro, puedes crear tus propios receptores para enrutar algunos o todos tus registros a varios destinos compatibles o excluirlos para que no se almacenen en Cloud Logging.
El comportamiento de enrutamiento de cada receptor se controla mediante la configuración del filtro de inclusión y los filtros de exclusión para ese receptor. Según la configuración del receptor, cada entrada de registro que recibe Cloud Logging se encuentra en una o más de estas categorías:
Almacenada en Cloud Logging y no enrutada a otro lugar.
Almacenada en Cloud Logging y enrutada a un destino compatible.
No almacenada en Cloud Logging, pero sí enrutada a un destino compatible.
Ni almacenada en Cloud Logging ni enrutada a otro lugar.
Por lo general, creas receptores a nivel de proyecto de Google Cloud, pero si deseas combinar y enrutar registros de los recursos contenidos por una organización o carpeta de Google Cloud, puedes crear receptores agregados.
No puedes enrutar las entradas de registro que recibió Logging antes de que se creara tu receptor porque el enrutamiento ocurre a medida que los registros pasan a través de la API de Logging, y las nuevas reglas de enrutamiento solo se aplican a los registros escritos después de la creación de esas reglas. Si necesitas enrutar las entradas de registro de forma retroactiva, consulta Cómo copiar registros.
Filtros de inclusión
Si no especificas filtros, todos los receptores nuevos coinciden y se enrutan al destino del receptor. Puedes configurar el receptor para que seleccione registros específicos mediante un filtro de inclusión. También puedes configurar uno o más filtros de exclusión para excluir los registros del destino del receptor.
Cuando configuras receptores, creas filtros de inclusión mediante el lenguaje de consulta de Logging. Los receptores también pueden contener varios filtros de exclusión.
Cada entrada de registro que recibe Logging se enruta según estas reglas de filtrado:
Los filtros de exclusión del receptor anulan cualquiera de sus filtros de inclusión definidos. Si un registro coincide con cualquier filtro de exclusión del receptor, no coincide con el receptor, independientemente de los filtros de inclusión definidos. La entrada de registro no se enruta al destino de ese receptor.
Si el receptor no contiene un filtro de inclusión, sucede lo siguiente:
- Si la entrada de registro coincide con algún filtro de exclusión, no se enruta al destino del receptor.
- Si la entrada de registro no coincide con ningún filtro de exclusión, se enruta al destino del receptor. Un filtro de inclusión vacío selecciona todos los registros.
Si el receptor contiene un filtro de inclusión, sucede lo siguiente:
- Si la entrada de registro coincide con el filtro de inclusión, se enruta al destino del receptor.
- Si la entrada de registro no coincide con el filtro de inclusión, no se enruta al destino del receptor.
Filtros de exclusión
Cuando creas un receptor, puedes configurar varios filtros de exclusión. Los filtros de exclusión te permiten excluir las entradas de registro coincidentes para que no se enruten al destino del receptor o sean transferidas por Cloud Logging. Los filtros de exclusión se crean mediante el lenguaje de consulta de Logging.
Las entradas de registro se excluyen después de que la API de Logging las recibe y, por lo tanto, consumen cuota de API de entries.write
. No puedes reducir la cantidad de llamadas a la API de entries.write
si excluyes las entradas de registro.
Las entradas de registro excluidas no están disponibles en el Explorador de registros.
También se excluyen de Error Reporting las entradas de registro que no se enrutan al menos a un bucket de registro, ya sea de forma explícita con filtros de exclusión o porque no coinciden con ningún receptor con un destino de almacenamiento de Logging. Por lo tanto, estos registros no están disponibles para ayudar a solucionar fallas.
Las métricas basadas en registros definidas por el usuario se calculan a partir de entradas de registro en los registros incluidos y excluidos. Para obtener más información, consulta Supervisa tus registros.
Las entradas de registro que no se excluyen pueden generar cargos. Para obtener más información, consulta la información de precios de Cloud Logging.
Destinos admitidos
Puedes usar el enrutador de registros para enrutar ciertos registros a destinos compatibles en cualquier proyecto de Google Cloud. Logging admite los siguientes destinos de receptor:
- Buckets de registro de Cloud Logging: Proporciona almacenamiento en Cloud Logging. Un bucket de registro puede almacenar registros transferidos por varios proyectos de Google Cloud. Puedes combinar tus datos de Cloud Logging con otros datos si actualizas un bucket de registros para usar el análisis de registros y, luego, creas un conjunto de datos de BigQuery vinculado. Para obtener información sobre la visualización de los registros almacenados en buckets de registros, consulta Descripción general de consultas y vistas de registros y Visualiza registros enrutados a buckets de Cloud Logging.
- Proyectos de Google Cloud: Enruta las entradas de registro a un proyecto de Google Cloud diferente. Cuando enrutas registros a un proyecto de Google Cloud diferente, el enrutador de registros del proyecto de destino recibe los registros y los procesa. Los receptores en el proyecto de destino determinan cómo se enrutan las entradas de registro recibidas.
- Temas de Pub/Sub: Proporciona compatibilidad con integraciones de terceros, como Splunk. Las entradas de registro tienen formato JSON y, luego, se enrutan a un tema de Pub/Sub. Para obtener información sobre cómo visualizar los registros enrutados a Pub/Sub, consulta Visualiza los registros enrutados a Pub/Sub.
- Conjuntos de datos de BigQuery: proporciona almacenamiento de entradas de registro en conjuntos de datos de BigQuery. Puedes usar las capacidades de análisis de macrodatos en los registros almacenados. Para combinar tus datos de Cloud Logging con otras fuentes de datos, te recomendamos actualizar tus buckets de registros a fin de usar estadísticas de registros y, luego, crear un conjunto de datos vinculado de BigQuery. Para obtener información sobre cómo visualizar los registros enrutados a BigQuery, consulta Visualiza los registros enrutados a BigQuery.
- Buckets de Cloud Storage: Proporciona almacenamiento de datos de registro en Cloud Storage. Las entradas de registro se almacenan como archivos JSON. Para obtener información sobre cómo visualizar los registros enrutados a Cloud Storage, consulta Visualiza registros enrutados a Cloud Storage.
Para obtener más información, consulta Registros de ruta a destinos compatibles.
Almacenar, visualizar y administrar registros
En la siguiente sección, se detalla cómo se almacenan los registros en Cloud Logging y cómo puedes verlos y administrarlos.
Buckets de registros
Cloud Logging usa buckets de registro como contenedores de tus proyectos, cuentas de facturación, carpetas y organizaciones de Google Cloud para almacenar y organizar los datos de tus registros. Los registros que almacenas en Cloud Logging se indexan, se optimizan y se entregan para que puedas analizar los registros en tiempo real. Los buckets de Cloud Logging son entidades de almacenamiento diferentes a los similares de Cloud Storage.
Para cada proyecto, cuenta de facturación, carpeta y organización de Google Cloud, Logging crea de forma automática dos buckets de registro: _Required
y _Default
. Logging crea receptores de forma automática como _Required
y _Default
, que, en la configuración predeterminada, enrutan los registros a los buckets con nombre correspondientes.
Puedes inhabilitar el receptor _Default
, que enruta los registros al bucket de registros _Default
. A fin de cambiar el comportamiento de los receptores _Default
creados para cualquier proyecto o carpeta de Google Cloud nuevos creados en tu organización, puedes establecer la configuración predeterminada de tu organización.
No puedes cambiar las reglas de enrutamiento para el bucket _Required
.
Además, puedes crear buckets definidos por el usuario para cualquier proyecto de Google Cloud.
Crea receptores para enrutar todos tus registros, o solo un subconjunto, a cualquier bucket de registros. Esta flexibilidad te permite elegir el proyecto de Google Cloud en el que se almacenan tus registros y qué otros registros se almacenan con ellos.
Para obtener más información, consulta Configura buckets de registro.
Bucket de registro _Required
Cloud Logging enruta automáticamente los siguientes tipos de registros al bucket _Required
:
- Registros de auditoría de actividad del administrador
- Registros de auditoría de eventos del sistema
- Registros de Transparencia de acceso
Cloud Logging retiene los registros en el bucket _Required
durante 400 días. No puedes cambiar este período de retención.
No puedes modificar ni borrar el bucket _Required
. No puedes inhabilitar el receptor _Required
, que enruta los registros al bucket _Required
.
Ni los precios de transferencia ni los de almacenamiento se aplican a los datos de registro almacenados en el bucket de registro _Required
.
Bucket de registro _Default
El receptor _Default
enruta las entrada de registro que no son transferidas al bucket _Required
al bucket _Default
, a menos que inhabilites o modifiques el receptor _Default
. A fin de obtener instrucciones para modificar receptores, consulta Administra receptores.
Cloud Logging enruta automáticamente los siguientes tipos de registros al bucket _Default
:
Cloud Logging retiene los registros en el bucket _Default
durante 30 días, a menos que configures la retención personalizada para el bucket.
No puedes borrar el bucket _Default
.
Los precios de Cloud Logging se aplican a los datos de registro almacenados en el bucket _Default
.
Buckets de registro definidos por el usuario
También puedes crear buckets de registro definidos por el usuario en cualquier proyecto de Google Cloud. Si aplicas receptores a tus buckets de registros definidos por el usuario, puedes enrutar cualquier subconjunto de tus registros a cualquier bucket de registros, lo que te permite elegir en qué proyecto de Google Cloud se almacenan tus registros y cuáles otros se almacenan con ellos.
Por ejemplo, para cualquier registro generado en el Proyecto A, puedes configurar un receptor para que enrute ese registro a los buckets definidos por el usuario en el Proyecto A o Proyecto-B.
Los precios de Cloud Logging se aplican a los datos de registro almacenados en este bucket, sin importar el tipo de registro.
Puedes configurar la retención personalizada para el bucket.
Para obtener información sobre cómo administrar tus buckets de registros definidos por el usuario, lo que incluye borrarlos o actualizarlos, consulta Configura y administra buckets de registros.
Regionalización
Los buckets de registros son recursos regionales. La infraestructura que almacena, indexa y busca tus registros se encuentra en una ubicación geográfica específica. Google administra esa infraestructura para que tus aplicaciones estén disponibles de forma redundante en las zonas de esa región.
Cuando creas un bucket de registros o estableces una política regional a nivel de la organización, puedes elegir almacenar tus registros en cualquiera de las siguientes regiones:
América
Nombre de la región | Descripción de la región | Compatibilidad con el análisis de registros |
---|---|---|
northamerica-northeast1 |
Montreal | Sí |
northamerica-northeast2 |
Toronto | |
southamerica-east1 |
São Paulo | |
southamerica-west1 |
Santiago | |
us-central1 |
Iowa | Sí |
us-east1 |
Carolina del Sur | Sí |
us-east4 |
Virginia del Norte | |
us-east5 |
Columbus | |
us-south1 |
Dallas | |
us-west1 |
Oregón | Sí |
us-west2 |
Los Ángeles | Sí |
us-west3 |
Salt Lake City | |
us-west4 |
Las Vegas |
Asia-Pacífico
Nombre de la región | Descripción de la región | Compatibilidad con el análisis de registros |
---|---|---|
asia-east1 |
Taiwán | |
asia-east2 |
Hong Kong | |
asia-northeast1 |
Tokio | Sí |
asia-northeast2 |
Osaka | |
asia-northeast3 |
Seúl | |
asia-south1 |
Bombay | Sí |
asia-south2 |
Delhi | |
asia-southeast1 |
Singapur | |
asia-southeast2 |
Yakarta | |
australia-southeast1 |
Sídney | Sí |
australia-southeast2 |
Melbourne |
Europa
Nombre de la región | Descripción de la región | Compatibilidad con el análisis de registros |
---|---|---|
europe-central2 |
Varsovia | |
europe-north1 |
Finlandia | |
europe-southwest1 |
Madrid | |
europe-west1 |
Bélgica | Sí |
europe-west2 |
Londres | Sí |
europe-west3 |
Fráncfort | |
europe-west4 |
Países Bajos | |
europe-west6 |
Zúrich | |
europe-west8 |
Milán | |
europe-west9 |
París |
Oriente Medio
Nombre de la región | Descripción de la región | Compatibilidad con el análisis de registros |
---|---|---|
me-central1 |
Doha | |
me-west1 |
Tel Aviv |
Otra
Nombre de la región | Descripción de la región | Compatibilidad con el análisis de registros |
---|---|---|
eu |
Registros almacenados en centros de datos dentro de la Unión Europea; no hay garantías de redundancia adicionales | Sí |
us |
Registros almacenados en centros de datos dentro de los Estados Unidos; no hay garantías de redundancia adicionales | Sí |
global |
Registros almacenados en cualquier centro de datos del mundo; no hay garantías de redundancia adicionales | Sí |
Además de estas regiones, puedes establecer la ubicación en global
, lo que significa que no necesitas especificar dónde se almacenan físicamente tus registros.
Si deseas aplicar automáticamente una región de almacenamiento específica a los buckets de _Default
y _Required
creados en tu organización, puedes configurar una ubicación de recursos predeterminada.
Para obtener más información sobre la regionalidad de los datos y dónde puedes almacenar tus datos de registros, consulta Comprende las regiones de datos.
Política de la organización
Puedes crear una política de la organización para asegurarte de que tu organización satisfaga tus necesidades regulatorias y de cumplimiento. Con una política de la organización, puedes especificar en qué regiones tu organización puede crear buckets de registro nuevos. También puedes restringir la organización para que no cree buckets de registros nuevos en regiones específicas.
Cloud Logging no aplica la política de tu organización recién creada en los buckets de registros existentes; solo aplica la política en los buckets de registro nuevos.
Para obtener información sobre cómo crear una política de la organización basada en la ubicación, consulta Restringe las ubicaciones de los recursos.
Además, puedes configurar una ubicación predeterminada para los recursos a fin de elegir qué región de almacenamiento aplicar a los buckets _Default
y _Required
creados en tu organización.
Retención
Cloud Logging retiene registros según las reglas de retención que se aplican al tipo de bucket de registros en el que se conservan los registros.
Puedes configurar Cloud Logging para conservar registros entre 1 y 3,650 días. Las reglas de retención personalizadas se aplican a todos los registros en un bucket, sin importar el tipo de registro o si ese registro se copió de otra ubicación.
A fin de obtener información sobre cómo configurar reglas de retención para un bucket de registros, consulta Configura la retención personalizada.
Para obtener información sobre los períodos de retención de diferentes tipos de registros, consulta Cuotas y límites.
Vistas de registro
Las vistas de registros te permiten controlar quién tiene acceso a los registros de tus buckets.
Para cada bucket de registros, Cloud Logging crea automáticamente la vista _AllLogs
, que muestra todos los registros almacenados en ese bucket. Cloud Logging también crea una vista para el bucket _Default
llamada _Default
. La vista _Default
del bucket _Default
muestra todos los registros, excepto los registros de auditoría de acceso a los datos. Las vistas _AllLogs
y _Default
no se pueden editar y no puedes borrarlas.
Las vistas de registro personalizadas te proporcionan una forma avanzada y detallada de controlar el acceso a tus datos de registro. Por ejemplo, considera una situación en la que almacenas todos los registros de tu organización en un proyecto central de Google Cloud. Debido a que los buckets de registros pueden contener registros de varios proyectos de Google Cloud, es posible que desees controlar desde qué proyectos de Google Cloud pueden ver los diferentes usuarios. Con las vistas de registro personalizadas, puedes otorgar a un usuario acceso a los registros desde un solo proyecto de Google Cloud, mientras que a otro usuario puede acceder a los registros de todos los proyectos de Google Cloud.
Para obtener información sobre cómo configurar las vistas de registro, consulta Configura el acceso a nivel de bucket.
Usa registros en el ecosistema de Google Cloud
En la siguiente sección, se proporciona información sobre cómo usar los registros en Google Cloud en su totalidad.
Métricas basadas en registros
Las métricas basadas en registros son métricas de Cloud Monitoring que derivan del contenido de las entradas de registro. Por ejemplo, si Cloud Logging recibe una entrada de registro para un proyecto de Google Cloud que coincide con los filtros de una de las métricas del proyecto de Google Cloud, esa entrada de registro se cuenta en los datos de las métricas.
Las métricas basadas en registros interactúan con el enrutamiento de forma diferente, según si el sistema define las métricas basadas en registros o si las define el usuario. En las siguientes secciones, se describen estas diferencias.
Métricas basadas en registros y filtros de exclusión
Los filtros de exclusión del receptor se aplican a las métricas basadas en registros definidas por el sistema, que cuentan solo los registros que el proyecto de Google Cloud incluye para la transferencia.
Los filtros de exclusión de receptores no se aplican a las métricas basadas en registros definidas por el usuario. Incluso si excluyes registros para que la API de Cloud Logging no transfiera los registros, y estos no se almacenan en ningún bucket de Logging, podrías ver que se cuentan los registros en estas métricas.
Alcance de las métricas basadas en registros
Las métricas basadas en registros definidas por el sistema se aplican a nivel de proyecto de Google Cloud. El enrutador de registros calcula estas métricas y se aplican a los registros solo en el proyecto de Google Cloud en el que se reciben.
Las métricas basadas en registros definidas por el usuario pueden aplicarse a nivel de proyecto de Google Cloud o a nivel de un bucket de registros específico:
- Las métricas a nivel de proyecto se calculan como las métricas basadas en registros definidas por el sistema; estas métricas basadas en registros definidas por el usuario se aplican solo a los registros en el proyecto de Google Cloud en el que se reciben.
Las métricas centradas en el bucket se aplican a los registros en el bucket de registros en el que se reciben, independientemente del proyecto de Google Cloud en el que se originaron las entradas de registro.
Con las métricas basadas en registros con alcance de bucket, puedes crear métricas basadas en registros que puedan evaluar registros en los siguientes casos:
- Registros que se enrutan de un proyecto a un bucket de otro proyecto
- Registros que se enrutan a un bucket a través de un receptor agregado
Para obtener más información, consulta Descripción general de las métricas basadas en registros.
Busca registros en destinos compatibles
Para obtener información sobre el formato de las entradas de registro enrutadas y cómo se organizan los registros en destinos, consulta Visualiza registros en destinos de receptores.
Casos de uso habituales
A fin de abordar casos de uso comunes para enrutar y almacenar registros, consulta los siguientes instructivos y documentos:
Agrega el registro de tu organización en un bucket de registros central
Configura el multiusuario para clústeres de Google Kubernetes Engine (GKE)
Necesidades de cumplimiento
Si deseas conocer las prácticas recomendadas sobre el uso del enrutamiento para la administración de datos, consulta los siguientes documentos:
Datos de registros: una guía paso a paso para superar desafíos comunes de cumplimiento
Administración de datos: principios para proteger y administrar los registros
Control de acceso con IAM
Si quieres obtener información sobre cómo usar las funciones y los permisos de la administración de identidades y accesos (IAM) para controlar el acceso a los datos de Cloud Logging, consulta Control de acceso con IAM.
Precios
Para comprender los precios de transferencia y almacenamiento, consulta la información de precios de Cloud Logging.
Cloud Logging no cobra por el enrutamiento de registros, pero se pueden aplicar cargos de destino. Para obtener más información, revisa los detalles de precios del servicio correspondiente:
¿Qué sigue?
Para ayudarte a enrutar y almacenar datos de Cloud Logging, consulta los siguientes documentos:
Si deseas crear receptores para enrutar registros a destinos compatibles, consulta Configura receptores.
Para obtener información sobre la solución de problemas de enrutamiento y receptores, consulta Solución de problemas de enrutamiento y receptores.