En este documento, se explica cómo crear y administrar receptores, que enrutan las entradas de registro que se originan en un proyecto de Google Cloud en destinos compatibles.
Cuando el destino de un receptor no es un bucket de registros en el proyecto de Google Cloud en la que se origina una entrada de registro, se requiere una cuenta de servicio. Cloud Logging crea y administra automáticamente esta cuenta de servicio. pero deberás modificar los permisos otorgados al cuenta de servicio. Puedes crear y administrar una cuenta de servicio que usan los receptores en varios proyectos. Para obtener más información, consulta Configura receptores de registros con cuentas de servicio administradas por el usuario.
Descripción general
Los receptores determinan cómo Cloud Logging las entradas de registro de rutas. Con los receptores, puedes enrutar algunos o todos tus las entradas de registro a los siguientes destinos:
Bucket de Cloud Logging: Proporciona almacenamiento en Cloud Logging. Un bucket de registros puede almacenar entradas de registro recibidos por varios proyectos de Google Cloud. El bucket de registros puede estar en el mismo proyecto en el que se originan las entradas de registro. en un proyecto diferente. Para obtener más información sobre cómo ver las entradas de registro almacenadas en buckets de registros, consulta Descripción general de consulta y visualización de registros y Ver los registros enrutados a los buckets de Cloud Logging.
Puedes combinar tus Actualiza un bucket de registros para usar Cloud Logging con otros datos Análisis de registros y, luego, crear un conjunto de datos vinculado, que es un conjunto de datos conjunto de datos que se puede consultar con BigQuery Studio y Looker Studio páginas.
Conjunto de datos de BigQuery: Proporciona almacenamiento de entradas de registro en un conjunto de datos de BigQuery que admite escritura. El conjunto de datos de BigQuery Puede estar en el mismo proyecto en el que se originan las entradas de registro o en un en un proyecto final. Puedes usar las capacidades de análisis de macrodatos en las entradas de registro almacenadas. Para obtener información sobre cómo ver las entradas de registro enrutadas a BigQuery, consulta Visualiza los registros enrutados a BigQuery.
- Bucket de Cloud Storage: Proporciona almacenamiento de entradas de registro en Cloud Storage. El bucket de Cloud Storage puede estar en el mismo proyecto en el que las entradas de registro se originan o en un proyecto diferente. Las entradas de registro se almacenan como archivos JSON. Para obtener información sobre cómo ver las entradas de registro enrutadas a Cloud Storage, consulta Visualiza los registros enrutados a Cloud Storage.
Tema de Pub/Sub: Proporciona compatibilidad con integraciones de terceros. Las entradas de registro se formatean en JSON y, luego, se enrutan a Pub/Sub en este tema. El tema puede estar en el mismo proyecto en el que las entradas de registro se originan o en un proyecto diferente. Para obtener información sobre cómo ver las entradas de registro enrutadas a Pub/Sub, consulta Visualiza los registros enrutados a Pub/Sub.
Proyecto de Google Cloud: Enruta las entradas de registro a otro proyecto de Google Cloud. En esta configuración, los receptores del proyecto de destino procesan las entradas de registro.
Los receptores pertenecen a un recurso determinado de Google Cloud: un proyecto de Google Cloud, una cuenta de facturación, una carpeta o una organización. Cuando el recurso recibe un entrada de registro, cada receptor en el recurso procesa la entrada de registro. Cuando un elemento entrada de registro coincide con los filtros del receptor, entonces la entrada de registro enrutado al destino del receptor.
Normalmente, los receptores solo enrutan las entradas de registro que se originan en un recurso. Sin embargo, para las carpetas y organizaciones, puedes crear receptores agregados, qué enrutan las entradas de registro de la carpeta u organización y el recursos contiene. En este documento, no se analiza receptores agregados. Para obtener más información, consulta Recopila y enruta registros a nivel de la organización a destinos compatibles.
Para crear y administrar receptores, puedes usar la consola de Google Cloud, la API de Cloud Logging y Google Cloud CLI. Te recomendamos lo siguiente: usa la consola de Google Cloud:
- La página Enrutador de registros enumera todos los receptores y brinda opciones para administrar los receptores.
- Cuando creas un receptor, puedes obtener una vista previa de las entradas de registro que coinciden los filtros del receptor.
- Puedes configurar los destinos de los receptores cuando creas uno.
- Ya completaste algunos pasos de autorización.
Antes de comenzar
En las instrucciones de este documento, se describe cómo crear y administrar receptores en el Nivel de proyecto de Google Cloud. Puedes usar el mismo procedimiento para crear un receptor que enrute las entradas de registro que se originan en una organización, una carpeta cuenta de facturación de Google Cloud.
Para comenzar, haz lo siguiente:
-
Enable the Cloud Logging API.
Asegúrate de que tu proyecto de Google Cloud contenga entradas de registro que puedes ver en el Explorador de registros.
-
A fin de obtener los permisos que necesitas para crear, modificar o borrar un receptor, solicita a tu administrador que te otorgue el Es la función de IAM de Escritor de configuración de registros (
roles/logging.configWriter
) en tu proyecto. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso a proyectos, carpetas y organizaciones.También puedes obtener los permisos necesarios mediante roles personalizados o cualquier otro rol predefinido.
Para obtener información sobre cómo otorgar roles de IAM, consulta la guía de control de acceso de Logging.
Tienes un recurso en un destino admitido o tienes la capacidad de crear uno.
Para enrutar entradas de registro a un destino, el destino debe existir antes de crear el receptor. Puedes crear el destino en cualquier proyecto de Google Cloud en cualquier organización.
Antes de crear un receptor, revisa las limitaciones que se aplican al de destino del receptor. Para obtener más información, consulta la Limitaciones de destino de este documento.
Crea un receptor
A continuación, se indican las instrucciones para crear un receptor en un proyecto de Google Cloud. Puedes usar el mismo procedimiento para enrutar las entradas de registro que se originan una organización, carpeta o cuenta de facturación:
- Puedes crear hasta 200 receptores por cada proyecto de Google Cloud.
- No incluyas información sensible en los filtros de receptores. Los filtros de receptores se tratan como datos del servicio.
- Los receptores nuevos a los buckets de Cloud Storage pueden tardar varias horas en empezar a enrutar entradas de registro. Los receptores de Cloud Storage se procesan cada hora, mientras que y otros tipos de destino se procesan en tiempo real.
Los receptores no pueden enrutar entradas de registro a conjuntos de datos vinculados de BigQuery que son de solo lectura. Si quieres enrutar entradas de registro en BigQuery, el conjunto de datos de destino debe tener habilitada la escritura.
Los receptores no definen el esquema para los conjuntos de datos de BigQuery. En cambio, la primera entrada de registro que recibe BigQuery determina la para la tabla de destino. Para obtener más información, consulta Esquema de BigQuery para registros enrutados.
Para obtener información sobre cómo ver las entradas de registro en el destino de un receptor, ver Visualiza los registros enrutados a los buckets de Cloud Logging.
Para ver la cantidad y el volumen de entradas de registro que se enrutan, consulta la Métricas de
logging.googleapis.com/exports/
.El Explorador de registros agrega implícitamente el restricción conjuntiva,
AND
, entre las sentencias que se muestran en el panel de consultas. Por ejemplo, si la línea uno esresource.type = "gce_instance"
y la línea dos esseverity >= "ERROR"
, la consulta seresource.type = "gce_instance" AND severity >= "ERROR"
Si quieres usar una consulta que muestra el Explorador de registros en otro contexto, por ejemplo, para el filtro de inclusión o exclusión de un receptor, debes modificar la consulta y agregar las restricciones conjuntivas. Para obtener más información, consulta la Lenguaje de consulta de Logging.
Para crear un receptor, haz lo siguiente:
Console
-
En la consola de Google Cloud, ve a la página Enrutador de registros:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Logging.
Selecciona el proyecto de Google Cloud en el que se encuentran las entradas de registro que deseas enrutar.
Por ejemplo, si quieres enrutar tus entradas de registro de acceso a los datos desde el proyecto llamado
Project-A
a un bucket de registros en el proyecto llamadoProject-B
y, luego, seleccionaProject-A
.Selecciona Crear receptor.
En el panel Detalles del receptor, ingresa los siguientes detalles:
Nombre del receptor: proporciona un identificador para el receptor. ten en cuenta que, después de crear el receptor, no puedes cambiarle el nombre, pero puedes borrarlo crear un receptor nuevo.
Descripción del receptor (opcional): Describe el propósito o el caso de uso del el fregadero.
En el panel Destino del receptor, selecciona el servicio del receptor y mediante el menú Selecciona el servicio del receptor. Realiza una de las siguientes acciones: lo siguiente:
Para enrutar entradas de registro a un servicio que se encuentra en proyecto de Google Cloud, selecciona una de las siguientes opciones:
- Bucket de Cloud Logging: Selecciona o crea un Bucket de Logging.
- Conjunto de datos de BigQuery: selecciona o crea el elemento que admite escritura. para recibir las entradas de registro enrutadas. También tienes la opción para usar tablas particionadas.
- Bucket de Cloud Storage: selecciona o crea bucket de Cloud Storage para recibir las entradas de registro enrutadas.
- Tema de Pub/Sub: selecciona o crea el tema para recibir las entradas de registro enrutadas.
- Splunk: Selecciona el tema de Pub/Sub para tu Splunk servicio.
Para enrutar entradas de registro a un proyecto de Google Cloud diferente, Selecciona Proyecto de Google Cloud y, luego, ingresa el nombre completamente calificado para el destino. Para obtener más información sobre la sintaxis, consulta la Formatos de las rutas de destino.
Para enrutar entradas de registro a un servicio que se encuentra en un proyecto de Google Cloud, haz lo siguiente:
- Selecciona Otro recurso.
- Ingresa el nombre completamente calificado para el destino. Información sobre la sintaxis, consulta la Formatos de las rutas de destino.
Especifica las entradas de registro que se incluirán:
Ve al panel Elige registros para incluirlos en el receptor.
En el campo Crea un filtro de inclusión, ingresa una expresión de filtro. que coincida con las entradas de registro que deseas incluir. Para obtener más información la sintaxis para escribir filtros, consulta Lenguaje de consulta de Logging.
Si no estableces un filtro, todas las entradas de registro del recurso seleccionado se enrutan al destino.
Por ejemplo, para enrutar todas las entradas del registro de acceso a los datos a un de registro, puedes usar el siguiente filtro:
log_id("cloudaudit.googleapis.com/data_access") OR log_id("externalaudit.googleapis.com/data_access")
La longitud de un filtro no puede superar los 20,000 caracteres.
Para verificar que ingresaste el filtro correcto, selecciona Obtener vista previa de los registros. El Explorador de registros se abre en una pestaña nueva con el filtro prepropagado.
(Opcional) Configura un filtro de exclusión para eliminar algunos de los entradas de registro incluidas:
Ve al panel Elige registros para filtrar fuera del receptor.
En el campo Nombre del filtro de exclusión, ingresa un nombre.
En el campo Crear un filtro de exclusión, ingresa un expresión de filtro que coincide con las entradas de registro que quieres excluir. También puedes usar Función
sample
para seleccionar una parte de las entradas de registro que deseas excluir.
Puedes crear hasta 50 filtros de exclusión por receptor. Ten en cuenta que la longitud del filtro no puede exceder 20,000 caracteres.
Selecciona Crear receptor.
Otorga a la cuenta de servicio del receptor el permiso para escribir entradas de registro hacia el destino del receptor. Para obtener más información, consulta Configura permisos de destino.
API
Para crear un receptor de registros en tu proyecto de Google Cloud, usa
projects.sinks.create
en la API de Logging En laLogSink
proporciona los valores requeridos adecuados en la solicitud del método cuerpo:name
: Es un identificador para el receptor. Ten en cuenta que, después de crear no puedes cambiarle el nombre, pero puedes borrarlo y crear receptor nuevo.destination
: Es el servicio y el destino en los que deseas que se realice tu y las entradas de registro enrutadas. Para enrutar entradas de registro a un proyecto diferente, o a un destino que está en otro proyecto, configura el campodestination
con el la ruta de acceso correspondiente, como se describe Formatos de las rutas de destino.Por ejemplo, si el destino del receptor es un tema,
destination
tendrá el siguiente aspecto:pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID
En el objeto
LogSink
, proporciona los atributos opcionales información:filter
: Establece elfilter
. para que coincida con las entradas de registro que quieres incluir en tu receptor. Si no estableces un filtro, todas las entradas de registro de tu proyecto de Google Cloud están se enrutan al destino. Ten en cuenta que la longitud de un filtro supera los 20,000 caracteres.exclusions
: establece este campo para que coincida con las entradas de registro que deseas. para excluir de tu receptor. También puedes usar Funciónsample
para seleccionar una parte de las entradas de registro que deseas excluir. Puedes crear hasta 50 filtros de exclusión por receptor.description
: establece este campo para describir el propósito o el caso de uso para el fregadero.
Llama a
projects.sinks.create
para crear el receptor.Si la respuesta de la API contiene una clave JSON etiquetada como
"writerIdentity"
, Luego, otorga a la cuenta de servicio del receptor el permiso para escribir en el destino del receptor. Para obtener más información, consulta Configura permisos de destino.No necesitas configurar permisos de destino cuando la respuesta de la API este elemento no contiene una clave JSON etiquetada como
"writerIdentity"
.
Para obtener más información sobre la creación de receptores con el
La API de Logging, consulta la referencia de LogSink
.
gcloud
Para crear un receptor, haz lo siguiente:
Ejecuta el siguiente comando
gcloud logging sinks create
:gcloud logging sinks create SINK_NAME SINK_DESTINATION
Antes de ejecutar el comando, realiza los siguientes reemplazos:
- SINK_NAME: Es el nombre del receptor de registros. No puedes cambiar el nombre de un receptor después de crearlo.
SINK_DESTINATION: El servicio o proyecto al que deseas enrutar tus entradas de registro. Establecer SINK_DESTINATION con la ruta adecuada, como se describe en Formatos de las rutas de destino.
Por ejemplo, si el destino del receptor es un , SINK_DESTINATION se ve de la siguiente manera:
pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID
También puedes proporcionar las siguientes opciones:
--log-filter
: Usa esta opción para establecer un filtro que coincide con las entradas de registro que quieres incluir en tu receptor. Si no proporcionan un valor para el filtro de inclusión, este filtro coincide con todas las entradas de registro.--exclusion
: utiliza esta opción para establecer un filtro de exclusión para las entradas de registro en las que quieres excluir tu receptor del enrutamiento. También puedes usar Funciónsample
para seleccionar una parte de las entradas de registro que deseas excluir. Esta opción puede repetirse; puedes crear hasta 50 filtros de exclusión por receptor.--description
: Usa esta opción para describir el propósito o el caso de uso. para el fregadero.
Por ejemplo, para crear un receptor a un bucket de Logging, tu comando podría verse de la siguiente manera:
gcloud logging sinks create my-sink logging.googleapis.com/projects/myproject123/locations/global/buckets/my-bucket \ --log-filter='logName="projects/myproject123/logs/matched"' --description="My first sink"
Para obtener más información sobre la creación de receptores con el Google Cloud CLI, consulta la Referencia de
gcloud logging sinks
.Si la respuesta del comando contiene una clave JSON etiquetada como
"writerIdentity"
, Luego, otorga a la cuenta de servicio del receptor el permiso para escribir en el destino del receptor. Para obtener más información, consulta Configura permisos de destino.No necesitas configurar permisos de destino cuando la respuesta este elemento no contiene una clave JSON etiquetada como
"writerIdentity"
.
Si recibes notificaciones de error, consulta Soluciona problemas de enrutamiento y receptores.
Formatos de rutas de destino
Si enrutas las entradas de registro a un servicio de otro proyecto, debes proporcionarle al receptor el nombre completamente calificado del servicio De forma similar, si enrutas entradas de registro a un proyecto de Google Cloud diferente, debes proporciona al receptor el nombre completamente calificado del proyecto de destino:
Bucket de registros de Cloud Logging:
logging.googleapis.com/projects/DESTINATION_PROJECT_ID/locations/LOCATION/buckets/BUCKET_NAME
Otro proyecto de Google Cloud:
logging.googleapis.com/projects/DESTINATION_PROJECT_ID
Conjunto de datos de BigQuery:
bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID
Cloud Storage:
storage.googleapis.com/BUCKET_NAME
Tema de Pub/Sub:
pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID
Administra los receptores
Después de crear los receptores, puedes realizar las siguientes acciones en ellos. Cualquier cambio realizado en un receptor puede tardar unos minutos en aplicarse:
- Ver detalles
- Actualizar
Inhabilitar
- No puedes inhabilitar el receptor
_Required
. - Puedes inhabilitar el receptor
_Default
para evitar que enrute las entradas de registro a el bucket de Logging_Default
- Si quieres inhabilitar el receptor
_Default
para cualquier Los proyectos o carpetas de Google Cloud creados en tu organización considera configurar configuración predeterminada de recursos.
- No puedes inhabilitar el receptor
Borrar
- No puedes borrar los receptores
_Default
ni_Required
. - Cuando borras un receptor, ya no enruta entradas de registro.
- Si el receptor tiene una cuenta de servicio dedicada, borrar esa receptor también borra la cuenta de servicio. Receptores creados antes del El 22 de mayo de 2023 tienes cuentas de servicio dedicadas. Se crearon los receptores a partir del 22 de mayo de 2023 tengan una cuenta de servicio compartida. Borrar el receptor no borra la cuenta de servicio compartida.
- No puedes borrar los receptores
Solución de problemas de fallas
- Visualiza el volumen de registros y las tasas de error
A continuación, se indican las instrucciones para administrar un receptor en un proyecto de Google Cloud. En lugar de un proyecto de Google Cloud, puedes especificar una cuenta de facturación, organización o carpeta:
Console
-
En la consola de Google Cloud, ve a la página Enrutador de registros:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Logging.
En la barra de herramientas, selecciona el recurso que contiene tu receptor. El recurso puede ser un proyecto, una carpeta, una organización o una cuenta de facturación.
En la página Enrutador de registros, se muestran los receptores del recurso seleccionado. Cada fila de la tabla contiene información sobre las propiedades de un receptor:
- Enabled: Indica si el estado del receptor está habilitado o inhabilitado.
- Tipo: el servicio de destino del receptor. por ejemplo,
Cloud Logging bucket
- Nombre: el identificador del receptor, tal como se proporcionó cuando se creó el receptor.
por ejemplo,
_Default
. - Descripción: la descripción del receptor, como se proporcionó cuando se crear.
- Destino: nombre completo del destino al que se envió el registro enrutado se envían las entradas correspondientes.
- Creado: La fecha y hora en que se creó el receptor.
- Última actualización: La fecha y hora en que se editó el receptor por última vez.
Para cada fila de la tabla, el menú more_vert Más acciones proporciona las siguientes opciones:
- Ver detalles del receptor: Muestra el nombre, la descripción, servicio de destino, destino y filtros de inclusión y exclusión. Si seleccionas Editar, se abre el panel Editar receptor.
- Editar receptor: Abre un panel de Editar receptor en el que puedes actualizar los parámetros del receptor.
- Inhabilitar receptor: Te permite inhabilitar el receptor y detener las entradas de registro de enrutamiento. al de destino del receptor. Para obtener más información sobre cómo inhabilitar receptores, consulta Deja de almacenar registros en buckets de registros.
- Habilitar receptor: Te permite habilitar un receptor inhabilitado y reiniciar el enrutamiento las entradas de registro al destino del receptor.
- Borrar receptor: Te permite borrar el receptor y detener el enrutamiento de entradas de registro a el destino del receptor.
- Solucionar problemas del receptor: Se abre el Explorador de registros, donde puedes solucionar problemas. errores con el receptor.
- Ver las tasas de error y el volumen de registro del receptor: Se abre el Explorador de métricas. en la que puedes ver y analizar los datos del receptor.
Para ordenar la tabla por una columna, selecciona el nombre de la columna.
API
Para ver los receptores de tu proyecto de Google Cloud, llama a
projects.sinks.list
Para ver los detalles de un receptor, llama a
projects.sinks.get
Para actualizar un receptor, llama a
projects.sink.update
Puedes actualizar el destino, los filtros y la descripción de un receptor. Puedes inhabilitar o volver a habilitar el receptor.
Para inhabilitar un receptor, establece el campo
disabled
en el objetoLogSink
entrue
y, luego, llama aprojects.sink.update
.Para volver a habilitar el receptor, establece el campo
disabled
en el objetoLogSink
enfalse
y, luego, llama aprojects.sink.update
.Para borrar un receptor, llama a
projects.sinks.delete
Para obtener más información sobre la administración de los receptores a través del La API de Logging, consulta la referencia de
LogSink
.
gcloud
Para ver la lista de receptores de tu proyecto de Google Cloud, usa el
gcloud logging sinks list
que corresponde al método de la API de Loggingprojects.sinks.list
:gcloud logging sinks list
Para ver tu lista de receptores agregados, usa el opción adecuada para especificar el recurso que contiene el receptor. Para Por ejemplo, si creaste el receptor a nivel de la organización, usa el
--organization=ORGANIZATION_ID
para mostrar los para la organización.Para describir un receptor, usa el comando
gcloud logging sinks describe
, que corresponde al método de la API de Loggingprojects.sinks.get
:gcloud logging sinks describe SINK_NAME
Para actualizar un receptor, usa el
gcloud logging sinks update
que corresponde al método de la APIprojects.sink.update
Puedes actualizar un receptor para cambiar el destino, los filtros y descripción, o para inhabilitar o volver a habilitar el receptor:
gcloud logging sinks update SINK_NAME NEW_DESTINATION --log-filter=NEW_FILTER
Omite NEW_DESTINATION o
--log-filter
si esas partes no cambian.Por ejemplo, para actualizar el destino de tu receptor llamado
my-project-sink
a un destino de bucket nuevo de Cloud Storage llamadomy-second-gcs-bucket
, tu comando se verá de la siguiente manera:gcloud logging sinks update my-project-sink storage.googleapis.com/my-second-gcs-bucket
Para inhabilitar un receptor, usa el
gcloud logging sinks update
que corresponde al método de la APIprojects.sink.update
: Incluye la opción--disabled
:gcloud logging sinks update SINK_NAME --disabled
Para volver a habilitar el receptor, usa
gcloud logging sinks update
quita la opción--disabled
y, luego, incluye el--no-disabled
opción:gcloud logging sinks update SINK_NAME --no-disabled
Para borrar un receptor, usa el
gcloud logging sinks delete
que corresponde al método de la APIprojects.sinks.delete
:gcloud logging sinks delete SINK_NAME
Para obtener más información sobre la administración de receptores Google Cloud CLI, consulta la Referencia de
gcloud logging sinks
.
Deja de almacenar entradas de registro en buckets de registros
Puedes inhabilitar el receptor _Default
y cualquier receptor definido por el usuario. Cuando
inhabilitar un receptor, este deja de enrutar las entradas de registro a su destino.
Por ejemplo, si inhabilitas el receptor _Default
, no se ingresará ninguna entrada de registro
enrutado al bucket _Default
. El
_Default
bucket se vacía cuando todas las entradas de registro almacenadas previamente
cumpla con los bucket
período de retención.
Las siguientes instrucciones muestran cómo
inhabilitar los receptores del proyecto de Google Cloud que enrutan las entradas de registro al
_Default
buckets de registros:
Console
-
En la consola de Google Cloud, ve a la página Enrutador de registros:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Logging.
- Para encontrar todos los receptores que enrutan las entradas de registro al bucket de registros
_Default
, Filtra los receptores por destino y, luego, ingresa_Default
. En cada receptor, selecciona more_vert Menú y Luego, selecciona Inhabilitar receptor.
Los receptores ahora están inhabilitados y el proyecto de Google Cloud no las entradas de registro de ruta más largas al bucket
_Default
.
Para volver a habilitar un receptor inhabilitado y reiniciar el enrutamiento de las entradas de registro al receptor destino, haz lo siguiente:
-
En la consola de Google Cloud, ve a la página Enrutador de registros:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Logging.
- Para encontrar todos los receptores que enrutan las entradas de registro al bucket de registros
_Default
, Filtra los receptores por destino y, luego, ingresa_Default
. - En cada receptor, selecciona more_vert Menú y Luego, selecciona Habilitar receptor.
API
Para ver los receptores de tu proyecto de Google Cloud, llama al Método de la API de Logging
projects.sinks.list
Identifica los receptores que enrutan al bucket
_Default
.Por ejemplo, para inhabilitar el receptor
_Default
, establece el campodisabled
en el objetoLogSink
entrue
y, luego, llama aprojects.sink.update
.El receptor
_Default
ahora está inhabilitado. ya no enruta las entradas de registro el bucket_Default
.
Para inhabilitar los otros receptores en tu proyecto de Google Cloud que están enrutando
al bucket _Default
, repite los pasos anteriores.
Para volver a habilitar un receptor,
establece el campo disabled
en el objeto LogSink
en false
y, luego,
llama a projects.sink.update
.
gcloud
Para ver la lista de receptores de tu proyecto de Google Cloud, usa el
gcloud logging sinks list
que corresponde al método de la API de Loggingprojects.sinks.list
:gcloud logging sinks list
Identifica los receptores que enrutan al bucket de registros
_Default
. Para describir un receptor, incluso ver el nombre del destino, usa elgcloud logging sinks describe
que corresponde al método de la API de Loggingprojects.sinks.get
:gcloud logging sinks describe SINK_NAME
Ejecuta el
gcloud logging sinks update
e incluye la opción--disabled
. Por ejemplo, para inhabilitar la_Default
, usa el siguiente comando:gcloud logging sinks update _Default --disabled
El receptor
_Default
ahora está inhabilitado. ya no enruta las entradas de registro el bucket de registros_Default
Para inhabilitar los otros receptores en tu proyecto de Google Cloud que están enrutando
al bucket _Default
, repite los pasos anteriores.
Para volver a habilitar un receptor, usa el
gcloud logging sinks update
quita la opción --disabled
y, luego, incluye el --no-disabled
opción:
gcloud logging sinks update _Default --no-disabled
Configura los permisos del destino
En esta sección, se describe cómo otorgar a Logging Permisos de Identity and Access Management para escribir entradas de registro en el destino de tu receptor. Para ver la lista completa de roles y permisos de Logging, consulta Control de acceso.
Cloud Logging crea una cuenta de servicio compartida para un recurso cuando un receptor, a menos que la cuenta de servicio requerida ya exista. La cuenta de servicio puede existir porque se usa la misma cuenta para todos los receptores en el recurso subyacente. Los recursos pueden ser un proyecto de Google Cloud, una organización, una carpeta o una cuenta de facturación.
La identidad de escritor de un receptor es el identificador del servicio.
asociada con ese receptor. Todos los receptores tienen una identidad de escritor, excepto por
receptores que escriben en un bucket de registros en el mismo proyecto de Google Cloud en el que
se origina la entrada de registro. Para esta última configuración, una cuenta de servicio
no es obligatorio y, por lo tanto, el campo writer Identity del receptor
aparece como None
en la consola. El
La API y los comandos de Google Cloud CLI no informan una identidad de escritor.
Las siguientes instrucciones se aplican a proyectos, carpetas, organizaciones y cuentas de facturación:
Console
Asegúrate de tener acceso de Propietario en la Proyecto de Google Cloud que contiene el destino. Si no tienes acceso de Propietario al destino del receptor, luego pedirle a un propietario del proyecto que agregue la identidad de escritor como principal.
Para obtener la identidad de escritor del receptor (una dirección de correo electrónico) de la receptor nuevo, haz lo siguiente:
-
En la consola de Google Cloud, ve a la página Enrutador de registros:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es Logging.
- En la barra de herramientas, selecciona el proyecto que contiene el receptor.
- Selecciona more_vert Menú y, luego, Ver detalles del receptor. La identidad del escritor aparece Panel Detalles del receptor.
-
Si el valor del campo
writerIdentity
contiene una dirección de correo electrónico, y continúa con el siguiente paso. Cuando el valor esNone
, no necesitas configurar permisos de destino para el receptor.Copia la identidad de escritor del receptor en el portapapeles.
Si el destino es un servicio en un proyecto diferente o si es otro proyecto, luego, en la barra de herramientas, selecciona el proyecto de destino.
Agrega la cuenta de servicio como una principal de IAM en la proyecto de destino:
-
En la consola de Google Cloud, ve a la página IAM:
Si usas la barra de búsqueda para encontrar esta página, selecciona el resultado cuyo subtítulo es IAM y administrador.
Selecciona el proyecto de destino.
Haz clic en
Grant access.Otorga a la cuenta de servicio el rol de IAM necesario:
- Para los destinos de Cloud Storage, agrega la identidad de escritor del receptor
como principal con IAM y, luego, otorgarle el
Rol de Creador de objetos de almacenamiento
(
roles/storage.objectCreator
). - Para los destinos de BigQuery, agrega la identidad de escritor del receptor
como principal con IAM y, luego, otorgarle el
Rol de editor de datos de BigQuery
(
roles/bigquery.dataEditor
). - Para los destinos de Pub/Sub, incluido Splunk, agrega la identidad de escritor del receptor
como principal con IAM y, luego, otorgarle el
Rol de publicador de Pub/Sub
(
roles/pubsub.publisher
). - Para los destinos de bucket de Logging en diferentes
En proyectos de Google Cloud, agrega la identidad de escritor del receptor como una principal.
con IAM y, luego, otórgale los
Función de escritor de buckets de registros
(
roles/logging.bucketWriter
). - Para los destinos de los proyectos de Google Cloud, agrega
de escritor con la identidad de IAM y otorgarle
Función de escritor de registros
(
roles/logging.logWriter
). Específicamente, un principal necesitalogging.logEntries.route
.
- Para los destinos de Cloud Storage, agrega la identidad de escritor del receptor
como principal con IAM y, luego, otorgarle el
Rol de Creador de objetos de almacenamiento
(
-
API
Te recomendamos que uses la consola de Google Cloud o Google Cloud CLI para otorgar un rol a una cuenta de servicio.
gcloud
Asegúrate de tener acceso de Propietario en la Proyecto de Google Cloud que contiene el destino. Si no tienes acceso de Propietario al destino del receptor, luego pedirle a un propietario del proyecto que agregue la identidad de escritor como principal.
Obtén la cuenta de servicio del campo
writerIdentity
en tu receptor:gcloud logging sinks describe SINK_NAME
Ubica el receptor cuyos permisos deseas modificar y si el receptor los detalles contienen una línea con
writerIdentity
, luego, al siguiente paso. Si los detalles no incluyen unwriterIdentity
no necesitas configurar permisos de destino para el fregadero.La identidad de escritor de la cuenta de servicio es similar a la lo siguiente:
serviceAccount:service-123456789012@gcp-sa-logging.iam.gserviceaccount.com
Agrega la cuenta de servicio como una principal de IAM en la proyecto de destino:
Antes de usar el siguiente comando, realiza los siguientes reemplazos:
- PROJECT_ID: Es el identificador del proyecto.
- PRINCIPAL: Un identificador para la principal que deseas
a la que otorgas el rol. Los identificadores principales suelen tener el siguiente formato:
PRINCIPAL-TYPE:ID
Por ejemplo,user:my-user@example.com
. Para obtener una lista completa de los formatos que puede tenerPRINCIPAL
, consulta Identificadores principales. ROLE: Es un rol de IAM.
- Para los destinos de Cloud Storage, agrega la identidad de escritor del receptor
como principal con IAM y, luego, otorgarle el
Rol de Creador de objetos de almacenamiento
(
roles/storage.objectCreator
). - Para los destinos de BigQuery, agrega la identidad de escritor del receptor
como principal con IAM y, luego, otorgarle el
Rol de editor de datos de BigQuery
(
roles/bigquery.dataEditor
). - Para los destinos de Pub/Sub, incluido Splunk, agrega la identidad de escritor del receptor
como principal con IAM y, luego, otorgarle el
Rol de publicador de Pub/Sub
(
roles/pubsub.publisher
). - Para los destinos de bucket de Logging en diferentes
En proyectos de Google Cloud, agrega la identidad de escritor del receptor como una principal.
con IAM y, luego, otórgale los
Función de escritor de buckets de registros
(
roles/logging.bucketWriter
). - Para los destinos de los proyectos de Google Cloud, agrega
de escritor con la identidad de IAM y otorgarle
Función de escritor de registros
(
roles/logging.logWriter
). Específicamente, un principal necesitalogging.logEntries.route
.
- Para los destinos de Cloud Storage, agrega la identidad de escritor del receptor
como principal con IAM y, luego, otorgarle el
Rol de Creador de objetos de almacenamiento
(
Ejecuta el
gcloud projects add-iam-policy-binding
:gcloud projects add-iam-policy-binding PROJECT_ID --member=PRINCIPAL --role=ROLE
Limitaciones de destino
En esta sección, se describen las limitaciones específicas del destino:
- Si enrutas las entradas de registro a un bucket de registros en un proyecto de Google Cloud diferente, Error Reporting no analiza esas entradas de registro. Para obtener más información, consulta Descripción general de Error Reporting.
- Si enrutas las entradas de registro a BigQuery, el El conjunto de datos de BigQuery debe tener habilitada la escritura. No puedes enrutar las entradas de registro a los conjuntos de datos vinculados, que son de solo lectura.
Las siguientes limitaciones se aplican cuando enrutas tus entradas de registro a diferentes Proyectos de Google Cloud:
Hay un límite de un salto.
Por ejemplo, si enrutas las entradas de registro desde proyecto
A
al proyectoB
, entonces no puedes enrutar las entradas de registro desde el proyectoB
a un proyecto diferente.Los registros de auditoría no se enrutan al bucket de registros
_Required
en el destino en un proyecto final.Por ejemplo, si enrutas las entradas de registro del proyecto
A
a proyectoB
, el bucket de registros_Required
en el proyectoA
contiene los registros de auditoría del proyectoA
Los registros de auditoría del proyectoA
no enrutado al proyectoB
. Para enrutar estas entradas de registro, crea un receptor cuyo el destino es un bucket de registros.Cuando el proyecto de destino se encuentra en una organización o carpeta diferente, entonces los receptores agregados de esa carpeta u organización no enrutar la entrada de registro.
Por ejemplo, supongamos que el proyecto
A
se encuentra en la carpetaX
. Cuando una entrada de registro se origina en el proyectoA
, la entrada de registro se procesa los receptores agregados en la carpetaX
y los receptores en el proyectoA
. Ahora supongamos que el proyectoA
contiene un receptor que enruta sus entradas de registro a proyectoB
, que se encuentra en la carpetaY
. Las entradas de registro del proyectoA
pasa por los receptores del proyectoB
; Sin embargo, no pasan por los receptores agregados en la carpetaY
.
Para usar el Explorador de registros con el fin de ver las entradas de registro enrutadas a un proyecto mediante Con un receptor agregado, establece el campo Define mejor el permiso en permiso de almacenamiento. y, luego, seleccionaré una vista de registro que brinde acceso a esas entradas.
Muestras de código
Si quieres usar el código de la biblioteca cliente para configurar receptores en los idiomas que elegiste, consulta Bibliotecas cliente de Logging: Receptores de registros.
Filtra ejemplos
Estos son algunos ejemplos de filtros que resultan particularmente útiles al crear lavamanos. Para ver más ejemplos que podrían ser útiles a medida que desarrollas tu inclusión y filtros de exclusión, consulta Consultas de muestra.
Restablece el filtro de receptor _Default
Si editaste el filtro para el receptor _Default
, es posible que quieras restablecer
este receptor a su configuración original. Cuando se crea, el receptor _Default
se
configurada con el siguiente filtro de inclusión y un filtro de exclusión vacío:
NOT log_id("cloudaudit.googleapis.com/activity") AND NOT \
log_id("externalaudit.googleapis.com/activity") AND NOT \
log_id("cloudaudit.googleapis.com/system_event") AND NOT \
log_id("externalaudit.googleapis.com/system_event") AND NOT \
log_id("cloudaudit.googleapis.com/access_transparency") AND NOT \
log_id("externalaudit.googleapis.com/access_transparency")
Excluye los registros de contenedores y Pods de Google Kubernetes Engine
Excluir las entradas de registro del contenedor y el Pod de Google Kubernetes Engine para
El sistema de GKE namespaces
usa el siguiente filtro:
resource.type = ("k8s_container" OR "k8s_pod")
resource.labels.namespace_name = (
"cnrm-system" OR
"config-management-system" OR
"gatekeeper-system" OR
"gke-connect" OR
"gke-system" OR
"istio-system" OR
"knative-serving" OR
"monitoring-system" OR
"kube-system")
Excluir las entradas de registro de nodos de Google Kubernetes Engine para GKE
sistema logNames
, usa el siguiente filtro:
resource.type = "k8s_node"
logName:( "logs/container-runtime" OR
"logs/docker" OR
"logs/kube-container-runtime-monitor" OR
"logs/kube-logrotate" OR
"logs/kube-node-configuration" OR
"logs/kube-node-installation" OR
"logs/kubelet" OR
"logs/kubelet-monitor" OR
"logs/node-journal" OR
"logs/node-problem-detector")
Para ver el volumen de las entradas de registro del contenedor, los Pods y los nodos de Google Kubernetes Engine almacenados en buckets de registros, usa el Explorador de métricas:
- Visualiza el volumen de entrada de registro de nodos
- Visualiza el volumen de entrada de registro de Pods
- Visualiza el volumen de entrada de registro del contenedor
Excluye los registros de Dataflow que no son necesarios para la compatibilidad
Excluir las entradas de registro de Dataflow que no se requieren supportability, usa el siguiente filtro:
resource.type="dataflow_step"
labels."dataflow.googleapis.com/log_type"!="system" AND labels."dataflow.googleapis.com/log_type"!="supportability"
Para ver el volumen de registros de Dataflow almacenados en buckets de registros, usa el Explorador de métricas.
Compatibilidad
Aunque Cloud Logging te permite excluir entradas de registro y evitarlas se almacenen en un bucket de registros, puede considerar conservar entradas de registro que ayuden con la compatibilidad. Usar estas entradas de registro puede ayudarte a identificar y solucionar problemas en tus aplicaciones.
Por ejemplo, las entradas de registro del sistema de GKE son útiles para solucionar problemas para tus aplicaciones y clústeres de GKE generados para los eventos que ocurren en tu clúster. Estas entradas de registro pueden ayudarte determinar si el código de la aplicación o el entorno GKE clúster está causando el error de la aplicación. Registros del sistema de GKE también incluirán el registro de auditoría de Kubernetes que genera el servidor de la API de Kubernetes que incluye los cambios realizados con el comando de kubectl y Kubernetes eventos.
Para Dataflow, recomendamos que, como mínimo, escribas tu sistema
registros (labels."dataflow.googleapis.com/log_type"="system"
) y compatibilidad
registros (labels."dataflow.googleapis.com/log_type"="supportability"
) a
buckets de registros. Estos registros
son esenciales para que los desarrolladores observen
y solucionen problemas de susDataflowo
de procesamiento, y es posible que los usuarios no puedan usar
En la página Detalles del trabajo, podrás ver los registros del trabajo.
¿Qué sigue?
Si tienes problemas cuando usas receptores para enrutar entradas de registro, consulta Soluciona problemas de los registros de enrutamiento.
Para aprender a ver entradas de registro en sus destinos y cómo se formatean y organizan los registros, consulta Visualiza registros en destinos de receptores.
Para obtener más información sobre las consultas y el filtrado con el Lenguaje de consulta de Logging, consulta Lenguaje de consulta de Logging.