Escribe y consulta entradas de registro con gcloud CLI

En este documento, se presentan algunas de las funciones de Cloud Logging y se explica cómo hacer lo siguiente:

  • Escribe entradas de registro con Google Cloud CLI.
  • Enumera las entradas de registro con gcloud CLI.
  • Mostrar una lista de entradas de registro con la API de Logging
  • Ver y consultar las entradas del registro mediante el explorador de registros

Antes de comenzar

Debes tener un proyecto de Cloud de Confiance con la facturación habilitada para completar esta guía de inicio rápido. Si no tienes un proyecto de Cloud de Confiance o no tienes la facturación habilitada para tu proyecto de Cloud de Confiance , haz lo siguiente:

  1. Instala Google Cloud CLI.

  2. Configura gcloud CLI para usar tu identidad federada.

    Para obtener más información, consulta Accede a la gcloud CLI con tu identidad federada.

  3. Para inicializar gcloud CLI, ejecuta el siguiente comando:

    gcloud init
  4. Crea o selecciona un Cloud de Confiance proyecto.

    Roles necesarios para seleccionar o crear un proyecto

    • Selecciona un proyecto: Para seleccionar un proyecto, no se requiere un rol de IAM específico. Puedes seleccionar cualquier proyecto en el que se te haya otorgado un rol.
    • Crear un proyecto: Para crear un proyecto, necesitas el rol de Creador de proyectos (roles/resourcemanager.projectCreator), que contiene el permiso resourcemanager.projects.create. Obtén más información para otorgar roles.
    • Crea un proyecto de Cloud de Confiance :

      gcloud projects create PROJECT_ID

      Reemplaza PROJECT_ID por un nombre para el proyecto Cloud de Confiance que estás creando.

    • Selecciona el proyecto Cloud de Confiance que creaste:

      gcloud config set project PROJECT_ID

      Reemplaza PROJECT_ID por el nombre de tu Cloud de Confiance proyecto.

  5. Si usas un proyecto existente en esta guía, verifica que tengas los permisos necesarios para completarla. Si creaste un proyecto nuevo, ya tienes los permisos necesarios.

  6. Verifica que la facturación esté habilitada para tu proyecto de Cloud de Confiance .

Roles obligatorios

Para obtener los permisos que necesitas para crear, enumerar y borrar entradas de registro, pídele a tu administrador que te otorgue el rol de IAM Administrador de Logging (roles/logging.admin) 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 a través de roles personalizados o cualquier otro rol predefinido.

Los roles de escritor de registros (roles/logging.logWriter) y visualizador de registros (roles/logging.viewer) contienen los permisos para crear y enumerar entradas de registro. Para borrar entradas de registro, otorga el rol de administrador de Logging (roles/logging.admin), que contiene los permisos para crear, enumerar y borrar entradas de registro. Ten en cuenta que el rol de administrador de Logging (roles/logging.admin) también otorga permisos para realizar todas las acciones en Logging.

Escribe entradas de registro con gcloud CLI

Logging admite entradas de registro con datos estructurados y no estructurados. Los datos estructurados constan de una estructura de datos JSON, por ejemplo, {"weather": "partly cloudy"}. Los datos no estructurados son una string de caracteres, por ejemplo, "A simple entry".

En los próximos pasos, usarás gcloud CLI para escribir una entrada de registro con datos no estructurados y una entrada de registro con datos estructurados. La CLI de gcloud proporciona una interfaz de línea de comandos para la API de Cloud Logging.

  1. Escribe una entrada de registro con datos no estructurados en el registro my-test-log y ejecuta el comando gcloud logging write:

    gcloud logging write my-test-log "A simple entry."
    

    Cuando el comando finalice, verás el mensaje: Created log entry.

  2. Escribe una entrada de registro con datos estructurados en el registro my-test-log:

    gcloud logging write --payload-type=json my-test-log '{ "message": "My second entry", "weather": "partly cloudy"}'
    

    Cuando escribes una entrada de registro con datos estructurados, debes incluir --payload-type=json. Si omites este campo, Logging interpretará la carga útil como datos no estructurados.

Si el registro my-test-log no existe, Logging creará el registro cuando se reciba la entrada de registro.

Enumera entradas de registro con gcloud CLI

Puedes recuperar las entradas de registro de Logging y mostrarlas con gcloud CLI. Por ejemplo, para recuperar y mostrar las entradas de registro con un tipo de recurso global, ejecuta el siguiente comando:

gcloud logging read "resource.type=global"

El comando mostrará un resultado similar al siguiente:

---
insertId: jpj9zjf73t1mn
jsonPayload:
  message: My second entry
  weather: partly cloudy
logName: projects/myloggingproject/logs/my-test-log
receiveTimestamp: '2018-11-01T18:39:31.114507977Z'
resource:
  labels:
    project_id: myloggingproject
  type: global
timestamp: '2018-11-01T18:39:31.114507977Z'
---
insertId: vd4m1if7h7u1a
logName: projects/myloggingproject/logs/my-test-log
receiveTimestamp: '2018-11-01T18:39:19.718100792Z'
resource:
  labels:
    project_id: myloggingproject
  type: global
textPayload: A simple entry
timestamp: '2018-11-01T18:39:19.718100792Z'

Para obtener información sobre cómo leer registros, consulta la documentación de referencia de gcloud logging read.

Visualiza entradas de registro en el Explorador de registros

Para ver las entradas de registro en la consola de Cloud de Confiance , puedes usar el Explorador de registros. La mayoría de los proyectos de Cloud de Confiance almacenan una gran cantidad de registros. Puedes seleccionar ciertas entradas de registro escribiendo una consulta.

Para ver las entradas de registro que escribiste con el Explorador de registros, haz lo siguiente:

  1. En la consola de Cloud de Confiance , ve a la página Explorador de registros del :

    Ir al Explorador de registros

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

    Asegúrate de que tu proyecto Cloud de Confiance esté seleccionado en la barra de navegación Cloud de Confiance by S3NS. Si es necesario, usa la Cloud de Confiance lista desplegable del proyecto para seleccionar tu Cloud de Confiance proyecto.

  2. En el menú Recurso, selecciona Global.

    Si no ves la opción del menú Global, o si no ves las entradas de registro, espera unos minutos y actualiza la página. Es posible que Logging tarde unos minutos en recibir las entradas de registro.

  3. Para ver los detalles de una entrada de registro, haz clic en su menú.

    La primera entrada de registro tiene los datos almacenados en textPayload. La segunda entrada de registro contiene datos estructurados que se almacenan en jsonPayload. La carga útil estructurada contiene las claves message y weather.

Para obtener información sobre el formato de datos de las entradas de registro, consulta el tipo LogEntry.

Consulta entradas de registro en el explorador de registros

Puedes consultar entradas de registro con el editor de consultas y, con registros estructurados, por clave y valor. Por ejemplo, para mostrar todas las entradas de registro que contienen el texto simple, haz lo siguiente:

  1. En la consola de Cloud de Confiance , ve a la página Explorador de registros del :

    Ir al Explorador de registros

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

  2. En el menú Recurso, selecciona Global.

  3. En el editor de consultas, ingresa la cadena simple entre comillas. La pantalla de registros solo muestra la entrada de registro A simple entry.

  4. Después de ver el registro, quita la cadena de consulta que agregaste y haz clic en Ejecutar consulta. Ambas entradas de registro volverán a aparecer en la pantalla.

Para mostrar todas las entradas de registro con datos estructurados que tienen una clave de weather en la que el campo value contiene partly, haz lo siguiente:

  1. El editor de consultas contiene la línea resource.type="global". Ingresa el siguiente comando:

    jsonPayload.weather:partly
    
  2. Haz clic en Ejecutar consulta. El resultado es la entrada de registro única My second entry.

El Explorador de registros también ofrece consultas guardadas, sugeridas y recientes. Para obtener más información sobre las consultas, consulta Compila consultas en el Explorador de registros.

Para ver ejemplos de consultas, consulta Ejemplos de consultas con el Explorador de registros.

Soluciona problemas

  • Los errores tipográficos y los nombres de campos desconocidos hacen que los comandos de gcloud CLI se completen con mensajes de argumento no válido. Por ejemplo, si olvidas el período en resource.type, se produce el siguiente error:

     ERROR: (gcloud.logging.read) INVALID_ARGUMENT: Field not found: 'resourcetype'.
    
  • Cuando Cloud Logging no recibe los permisos de acceso necesarios, los comandos de gcloud CLI se completan con mensajes de permiso denegado. Por ejemplo, si una instancia de VM de Compute Engine está configurada con la configuración predeterminada de la API, el comando list se completa con un error de permiso denegado:

     ERROR: (gcloud.logging.read) PERMISSION_DENIED: Request had insufficient authentication scopes.
    

    Para corregir este estado, modifica los permisos de la instancia de VM de Compute Engine para otorgarle a Cloud Logging permiso de lectura, de la siguiente manera:

    1. Ve a la página Detalles de instancia de VM de tu instancia de VM. Haz clic en Detener. Esta acción podría tardar uno o dos minutos en completarse.
    2. Para modificar la configuración, haz clic en Editar.
    3. Busca el encabezado Permiso de acceso a la API de Cloud y haz clic en Detalles para mostrar la configuración de cada API. Cambia la entrada de la API de Cloud Logging a Completo. Haz clic en Guardar.
    4. Para reiniciar las instancias de VM, haz clic en Comenzar. Tras unos instantes, tu VM estará lista para que la uses.

Realiza una limpieza

Para evitar que se apliquen cargos a tu cuenta de Cloud de Confiance por los recursos que usaste en esta página, borra el proyecto de Cloud de Confiance que tiene los recursos.

  1. (Opcional) Para borrar las entradas de registro que creaste, ejecuta el siguiente comando gcloud:

    gcloud logging logs delete my-test-log
    

    Si no borras tus entradas de registro, expiran y se eliminan. Para obtener información sobre la retención, consulta Cuotas y límites.

¿Qué sigue?

  • Para obtener detalles sobre la interfaz de línea de comandos de Logging, lee las páginas de referencia del grupo de comandos gcloud logging.
  • Para obtener más información sobre la API de Logging, consulta API de Cloud Logging.
  • Para obtener detalles sobre el Explorador de registros, consulta Usa el Explorador de registros.