En esta página, se describe cómo habilitar y ver los registros de Cloud Logging para un trabajo.
Puedes usar los registros a fin de obtener información que sea útil para analizar tus trabajos. Por ejemplo, los registros pueden ayudarte a depurar trabajos con errores. Cuando Cloud Logging está habilitado para un trabajo, Cloud Logging genera los siguientes tipos de registros que puedes ver:
- Registros de tareas (
batch_task_logs
): Registros de cualquier dato escrito en los flujos de salida estándar (stdout) y estándar (stderr). Si deseas generar registros de tareas para tu trabajo, configúralas a fin de escribir datos para analizarlos y depurarlos en estas transmisiones. - Registros de agentes (
batch_agent_logs
): Registros de actividades del agente de servicio de Batch Batch genera de forma automática estos registros para tu trabajo.
Ten en cuenta que Cloud Logging solo genera registros después de que comienza a ejecutarse un trabajo.
Para verificar si un trabajo comenzó a ejecutarse, descríbelo y confirma que su estado sea RUNNING
o un estado posterior. Si necesitas analizar un trabajo que no generó registros, por ejemplo, porque uno falló antes del estado RUNNING
, descríbelo con la CLI de gcloud o la API de Batch y verifica el campo statusEvents
.
Antes de comenzar
- Si nunca antes usaste Batch, revisa Comienza a usar Batch y completa los requisitos previos para proyectos y usuarios.
-
Si quieres obtener los permisos que necesitas para analizar un trabajo mediante registros, pídele al administrador que te otorgue los siguientes roles de IAM:
-
Para crear un trabajo con registros habilitados, usa el Editor de trabajos por lotes (
roles/batch.jobsEditor
) en el proyecto. -
Para ver los registros, usa el Visor de registros (
roles/logging.viewer
) en el proyecto.
Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.
También puedes obtener los permisos necesarios mediante roles personalizados o cualquier otro rol predefinido.
-
Para crear un trabajo con registros habilitados, usa el Editor de trabajos por lotes (
Habilitar los registros para un trabajo
Si deseas generar registros para un trabajo, habilita Cloud Logging cuando crees el trabajo:
- Si creas un trabajo con la consola de Google Cloud, Cloud Logging siempre está habilitado.
Si creas un trabajo mediante la CLI de gcloud o la API de Batch, Cloud Logging estará inhabilitado de forma predeterminada. Para habilitar Cloud Logging, incluye la siguiente configuración para el campo
logsPolicy
mientras creas el trabajo:{ ... "logsPolicy": { "destination": "CLOUD_LOGGING" } ... }
Ver los registros de un trabajo
Puedes ver los registros de un trabajo en Cloud Logging mediante la consola de Google Cloud, gcloud CLI, la API de Logging, Go, Java o Python.
Consola
Para ver los registros de un trabajo con la consola de Google Cloud, haz lo siguiente:
En la consola de Google Cloud, ve a la página Lista de trabajos.
En la columna Nombre del trabajo, haz clic en el nombre de un trabajo. Se abrirá la página Detalles del trabajo.
Haga clic en la pestaña Eventos.
En la sección Registros, haz clic en
Cloud Logging. Se abrirá la página Explorador de registros.De forma predeterminada, el Explorador de registros muestra todos los registros de tareas de este trabajo.
Recomendado: Para filtrar qué registros se muestran, compila consultas. Por ejemplo, ingresa una consulta de registros por lotes en el campo de editor de consultas.
gcloud
Para ver los registros mediante gcloud CLI, usa el
comando gcloud logging read
:
gcloud logging read "QUERY"
En el comando anterior, QUERY
es una consulta de registros por lotes.
API
Para ver los registros con la API de Logging, usa el método entries.list
:
POST https://logging.googleapis.com/v2/entries:list
{
"resourceNames": [
"projects/PROJECT_ID"
],
"filter": "QUERY"
"orderBy": "timestamp desc"
}
Reemplaza lo siguiente:
PROJECT_ID
: Es el ID del proyecto.QUERY
: Es una consulta de registros por lotes.
Comienza a usarlo
Go
Si deseas obtener más información, consulta la documentación de referencia de la API de Go por lotes.
Java
Java
Si deseas obtener más información, consulta la documentación de referencia de la API de Java por lotes.
Python
Python
Si deseas obtener más información, consulta la documentación de referencia de la API de Python por lotes.
Escribir consultas para filtrar los registros por lotes
Puedes filtrar los registros por lotes si escribes una consulta que incluya uno o más de los siguientes parámetros de filtro y cero o más operadores booleanos (AND
, OR
y NOT
).
Para filtrar los registros de un trabajo específico, especifica el ID único (UID):
labels.job_uid=JOB_UID
En el comando anterior,
JOB_UID
es el UID del trabajo. Para obtener el UID de un trabajo, descríbelo.Para filtrar un tipo específico de registros por lotes, especifica el tipo de registro:
logName=projects/PROJECT_ID/logs/BATCH_LOG_TYPE
Reemplaza lo siguiente:
PROJECT_ID
: Es el ID del proyecto cuyos registros deseas ver.BATCH_LOG_TYPE
: Es el tipo de registros por lotes que deseas ver, ya seabatch_task_logs
para los registros de tareas obatch_agent_logs
para los registros de agentes.
¿Qué sigue?
- Obtén más información para solucionar problemas.
- Obtén más información sobre Cloud Logging.
- Borrar un trabajo