Este tema describe las funciones y el uso de LogView V2.0 (en adelante, LogView). Puede acceder a la URL de LogView para consultar la información de los trabajos.
Descripción general
LogView se utiliza para registrar y mostrar el estado de los trabajos de MaxCompute. LogView ofrece las siguientes funciones:
Proporciona un gráfico acíclico dirigido (DAG) interactivo para mostrar la arquitectura lógica del procesamiento de trabajos. También permite consultar los operadores de un trabajo.
Permite reproducir el proceso de ejecución del trabajo.
Permite consultar el uso de memoria y la utilización de CPU mediante Fuxi Sensor.
Punto de entrada
Al enviar un trabajo de MaxCompute, se genera automáticamente una URL que comienza con https://logview.aliyun.com/logview.
Si utiliza el cliente de MaxCompute para enviar el trabajo, debe copiar la URL en la barra de direcciones de un navegador para acceder a LogView.
Si utiliza DataWorks para enviar el trabajo, puede hacer clic en la URL para ir directamente a la página de LogView.
La página de LogView se divide en tres secciones: la sección de título y funcionalidad en la parte superior (1), el panel Basic Info a la izquierda (2) y la sección de detalles del trabajo a la derecha (3, que contiene pestañas como Job Details, Result, SourceXML, SQL Script y Summary, así como el diagrama DAG de Progress Chart y la lista de Fuxi Jobs).
|
Núm. |
Sección |
|
1 |
La sección de título y funcionalidad. Para más información, consulte Title and functionality section. |
|
2 |
La sección Basic Info. Para más información, consulte Basic Info section. |
|
3 |
La sección de detalles del trabajo. Para más información, consulte Job details section. |
Sección de título y funcionalidad
Esta sección muestra el ID y el nombre del trabajo. El ID identifica de forma única un trabajo de MaxCompute y se genera al enviarlo. El nombre del trabajo solo se muestra si este se envió mediante un SDK. También puede hacer clic en los iconos a la derecha de esta sección para realizar operaciones.
|
Icono |
Descripción |
|
|
Abre el archivo Logview_detail.txt que contiene los detalles del trabajo. El archivo se guarda en su computadora. |
|
|
Regresa a la página de LogView V1.0. |
|
|
Guarda los detalles del trabajo como un archivo en su computadora. |
Sección Basic Info
Esta sección muestra la información básica de un trabajo.
|
Parámetro |
Descripción |
|
MaxCompute Service |
El endpoint de MaxCompute donde se ejecuta el trabajo. Para más información sobre endpoints, consulte Endpoints. |
|
Project |
El nombre del proyecto de MaxCompute al que pertenece el trabajo. |
|
Cloud account |
La cuenta de Alibaba Cloud utilizada para enviar el trabajo. |
|
Type |
El tipo de trabajo. Valores válidos: SQL, SQLRT, LOT, XLib, CUPID, AlgoTask y Graph. |
|
Status |
El estado del trabajo. Valores válidos:
|
|
Start Time |
La hora en que se envió el trabajo. |
|
End Time |
La hora en que finalizó el trabajo. |
|
Latency |
El periodo durante el cual se ejecutó el trabajo. |
|
Progress |
El progreso del trabajo. |
|
Priority |
La prioridad del trabajo. |
|
Queue |
La posición del trabajo en la cola del grupo de cuotas de recursos. |
Sección de detalles del trabajo
En la sección de detalles del trabajo puede consultar información detallada sobre un trabajo. Esta sección consta de las siguientes pestañas:
Detalles del trabajo
-
Gráfico de progreso
La parte superior de la pestaña Job details muestra el gráfico de progreso. Este gráfico visualiza las dependencias de subtareas en tres niveles: Fuxi job, Fuxi task y operador. También proporciona herramientas para la solución de problemas.
Núm.
Descripción
1
La navegación de migas de pan que se usa para cambiar entre trabajos de Fuxi. JOB:_SQL_0_0_0_job_0 es el nombre de un trabajo de Fuxi.
2
La herramienta para solucionar problemas. Puede usar Progress Chart, Input Heat Chart, Output Heat Chart, TaskTime Heart Chart e InstanceTime Heart Chart para la solución de problemas.
3
Puede hacer clic en el icono
para actualizar el estado del trabajo y en el icono
para acercar o alejar el gráfico de progreso. También puede hacer clic en el icono
para obtener la documentación de MaxCompute Studio y en el icono
para subir al nivel superior del trabajo. 4
La herramienta de zoom.
5
La tarea de Fuxi. Un trabajo de MaxCompute consta de uno o más trabajos de Fuxi. Cada trabajo de Fuxi consta de una o más tareas de Fuxi. Cada tarea de Fuxi consta de una o más instancias de Fuxi. Si aumenta la cantidad de datos de entrada, MaxCompute inicia más nodos para cada tarea con el fin de procesar los datos. Un nodo equivale a una instancia de Fuxi. Por ejemplo, un trabajo sencillo de MapReduce genera dos tareas de Fuxi: map task (M1) y reduce task (R2). Si una sentencia SQL es compleja, pueden generarse varias tareas de Fuxi.
Puede consultar el nombre de cada tarea de Fuxi en la página de ejecución. Por ejemplo, M1 indica una tarea de mapa. Los campos 3 y 9 en R4_3_9 indican que la tarea de mapa solo puede ejecutarse después de que M3 y C9_3 hayan finalizado. De igual manera, M2_4_9_10_16 indica que la tarea M2 solo puede ejecutarse después de que R4_3_9, C9_3, R10_1_16 y C16_1 hayan finalizado. R/W indica el número de filas que lee y escribe la tarea.
Haga clic o clic derecho en una tarea para consultar las dependencias de operadores y los gráficos de operadores de dicha tarea.
Puede consultar rápidamente las tablas de entrada y salida.
6
La reproducción de la tarea de Fuxi. Puede hacer clic en el icono
para iniciar o detener la reproducción. También puede arrastrar la barra de progreso. La hora de inicio y la hora de finalización se muestran a los lados de la barra de progreso. El tiempo de reproducción se muestra en el centro. 7
La miniatura.
NotaLa función de reproducción no aplica a las tareas de Fuxi que se encuentran en estado Running.
Un trabajo AlgoTask, como un trabajo de Platform for AI (PAI), contiene solo una tarea de Fuxi. Por lo tanto, estos trabajos no incluyen gráficos de progreso.
Para trabajos que no son SQL, solo se muestran los trabajos y las tareas de Fuxi.
Si solo existe un trabajo de Fuxi, el gráfico de progreso muestra las dependencias entre las tareas de Fuxi. Si existen varios trabajos de Fuxi, el gráfico de progreso muestra las dependencias entre dichos trabajos.
-
Estado del trabajo
La parte inferior de la pestaña Job details muestra la información detallada de ejecución del trabajo.
Núm.
Descripción
1
La pestaña Fuxi Jobs. En esta pestaña puede cambiar entre trabajos de Fuxi.
2
Los detalles sobre las tareas de Fuxi del trabajo de Fuxi. Haga clic en una tarea de Fuxi para mostrar información sobre la instancia de Fuxi de dicha tarea. De forma predeterminada, se muestra la información de la instancia de Fuxi correspondiente a la primera tarea de Fuxi del primer trabajo de Fuxi.
Para trabajos AlgoTask y CUPID, esta área incluye una columna Sensor. Puede hacer clic en el Sensor de una tarea de Fuxi para consultar la utilización de CPU y el uso de memoria de sus instancias de Fuxi. Los trabajos de Fuxi se clasifican de la siguiente manera:
-
M: Un trabajo cuyo ID comienza con M es un trabajo de escaneo de datos.
-
R: Un trabajo cuyo ID comienza con R es un trabajo Reduce.
-
J: Un trabajo cuyo ID comienza con J es un trabajo JOIN.
-
C: Un trabajo cuyo ID comienza con C indica un nodo virtual. Este nodo no implica cálculos y solo se utiliza para la selección de ramas.
Nota-
Fuxi Sensor está disponible en las regiones China (Chengdu), China (Shenzhen), China (Shanghai), China (Hangzhou), China (Zhangjiakou) y China (Beijing).
-
Una tarea de Fuxi puede reintentarse si se
interrupted. En este caso, la columna Progress muestra únicamente el progreso del intento de reintento. Por lo tanto, es posible que el trabajo general se complete correctamente mientras que el progreso de esta tarea de Fuxi no sea100%. Este comportamiento es esperado.
3
LogView agrupa las instancias según su estado. Puede hacer clic en el valor junto a Failed para consultar información sobre los nodos con errores.
4
Instancias de Fuxi.
-
Un ejemplo de ID es
M1#0_0. El primer0es el ID de incremento automático de la instancia de Fuxi. El segundo0es el conteo de reintentos de la tarea. Un valor de0indica que la tarea no se reintentó. Un valor de n indica que la tarea se reintentó n veces. -
StdOut y StdErr. Puede consultar los mensajes de salida, los mensajes de error y la información que desee mostrar. También puede descargar dicha información.
-
Debug. Permite depurar y solucionar errores.
-
Límites en el número de instancias de Fuxi.
El número de instancias de Fuxi se limita a 1 cuando la sentencia SQL utilizada cumple alguna de las siguientes condiciones:
-
Contiene una cláusula
limit. -
Utiliza una función de ventana sin una cláusula
partition by key. -
Utiliza una función de agregación sin una cláusula
group by key. -
No se incluye ninguna clave de equi-join en la sentencia SQL utilizada para realizar operaciones JOIN.
-
Contiene una cláusula
order by.
-
-
Fuxi Sensor
Fuxi Sensor proporciona una vista multidimensional de recursos de una instancia de Fuxi, lo que muestra su utilización real de CPU y uso de memoria. Esto la convierte en una herramienta valiosa para el análisis de causa raíz y el análisis del rendimiento de trabajos, por ejemplo, en los siguientes escenarios:
Analizar el uso real de memoria cuando ocurre un error de falta de memoria (OOM).
-
Consultar el siguiente uso de recursos de una instancia de Fuxi para un trabajo de aprendizaje automático:
-
Utilización de CPU
El gráfico cpu_usage tiene dos líneas. Una línea indica el número de CPUs solicitadas (cpu_plan) y la otra indica el número de CPUs utilizadas (cpu_usage). En el eje Y, 400 indica cuatro procesadores. Solo puede ajustar el número de CPUs solicitadas modificando el número de procesadores. No es posible ajustar el número de CPUs disponibles para uso.

-
Uso de memoria
El gráfico mem_usage tiene dos líneas. Una línea indica la cantidad de recursos de memoria solicitados (mem_plan) y la otra indica la cantidad de recursos de memoria utilizados (mem_usage).
El uso de memoria (mem_usage) consta de dos partes: Resident Set Size (RSS) y PageCache. RSS es la memoria asignada después de que ocurre un fallo de página debido a una llamada Malloc (mapeo que no es de archivos). Esta memoria no se puede recuperar cuando hay escasez de memoria. PageCache es la memoria que utiliza el kernel para almacenar archivos en caché, como al leer y escribir archivos de registro. Por lo general, PageCache se puede recuperar cuando hay escasez de memoria.
Detalles de memoria

Uso de RSS

Uso de PageCache

-
Result
El contenido de la pestaña Result varía según el estado del trabajo:
-
Si el trabajo se ejecuta correctamente, se muestra el resultado del trabajo.
-
Puede utilizar el siguiente comando para deshabilitar la visualización del resultado del trabajo.
setproject odps.forbid.fetch.result.by.bearertoken=true; -
Puede configurar el parámetro odps.sql.select.output.format para especificar el formato de visualización del resultado.
-- To display the result in the CSV format, set this parameter to csv. set odps.sql.select.output.format=csv; -- To display the result in the text format, set this parameter to HumanReadable. set odps.sql.select.output.format=HumanReadable;
-
Si el trabajo falla, se muestra la causa del error.
Source XML
-
XML
Los niveles del trabajo y la información relacionada con las tareas se muestran en formato XML en esta pestaña.
-
Settings
La configuración de la tarea actual se muestra en esta pestaña.
-
Command
La configuración de flags de la tarea actual se muestra en esta pestaña.
SQL script
El script SQL de la tarea actual se muestra en esta pestaña.
History
El historial de la tarea actual se muestra en esta pestaña.
SubStatusHistory
El estado de la tarea actual se muestra en esta pestaña.
Haga clic en la pestaña SubStatusHistory para consultar el historial de subestados de cada etapa de ejecución de la tarea. La tabla contiene las siguientes columnas: Code (código numérico de estado, como 1010, 1020 y 1030), Description (descripción del estado), StartTime (hora de inicio), Latency (duración) y TimeLine (barra de progreso de línea de tiempo).
|
Mensaje para código de estado |
Descripción |
|
Waiting for scheduling |
El trabajo se envió y está esperando a que el framework de MaxCompute lo programe. En la mayoría de los casos, el tiempo de espera es breve. |
|
Waiting for cluster resource |
El trabajo está esperando recursos porque el framework de MaxCompute identificó que los recursos del clúster de cómputo de Fuxi son insuficientes. |
|
Waiting for concurrent task slot |
Se activó la limitación a nivel de proyecto. Puede configurar el número de tareas SQL que se pueden enviar simultáneamente para un proyecto. |
|
Waiting for data replication |
El trabajo está esperando a que se repliquen los datos. |
|
Waiting for execution slot |
Se activó la limitación a nivel de sistema. |
|
Waiting for cleaning up of previous task attempt |
El trabajo está esperando a que finalice la operación de limpieza de tareas históricas. |
|
Waiting for execution |
El trabajo está esperando ser distribuido desde la cola del proceso principal hacia un proceso secundario. En la mayoría de los casos, el tiempo de espera es breve. |
|
Preparing for execution |
El trabajo está por distribuirse a un proceso secundario. Si el proceso secundario presenta anomalías, el tiempo de preparación puede ser prolongado. |
|
Task is executing |
El trabajo se está procesando en el framework de MaxCompute. |
|
SQLTask is initializing |
La tarea SQL se está inicializando. |
|
SQLTask is compiling query |
La tarea SQL se está compilando. |
|
SQLTask is optimizing query |
La tarea SQL está optimizando consultas. Si el plan de ejecución es complejo, el tiempo de optimización será ligeramente mayor. Si el tiempo de optimización es excesivamente largo, podría haber ocurrido un error. |
|
SQLTask is splitting data sources |
La tarea SQL está dividiendo orígenes de datos para su optimización. |
|
SQLTask is generating execution plan |
La tarea SQL está generando un plan de ejecución. Si este proceso tarda mucho tiempo, es posible que se estén leyendo datos de un número excesivo de particiones o archivos pequeños. |
|
SQLTask is submitting execution plan |
La tarea SQL está enviando el plan de ejecución. |
|
Job has been submitted |
El trabajo se envió al clúster de cómputo. |
|
Offline Job Waiting for running |
Antes de enviar el trabajo al clúster de cómputo de Fuxi, el framework de MaxCompute identificó que había recursos de cómputo disponibles para el trabajo. Sin embargo, después de enviarlo, el framework identificó que no hay recursos de cómputo disponibles en el grupo de cuotas. Como resultado, el trabajo espera recursos de cómputo. Este código de estado aparece solo una vez y no vuelve a mostrarse incluso si no hay recursos de cómputo disponibles para el trabajo. |
|
Offline Job is running |
El trabajo de Fuxi se está ejecutando. Si los recursos dejan de estar disponibles durante la ejecución, el trabajo permanece en este estado. Por ejemplo, si un trabajo de mayor prioridad toma los recursos, las instancias de Fuxi afectadas no pueden ejecutarse y su estado cambia a |
|
Offline Job is failed |
El trabajo de Fuxi falló. |
|
Offline Job is succeed |
El trabajo de Fuxi finalizó correctamente. |
|
SQLTask is updating meta information |
La tarea SQL está actualizando el estado de la información de metadatos y generando particiones dinámicas. Este proceso puede consumir bastante tiempo. |
|
SQLTask is finishing |
La tarea SQL finalizó. |
|
Online Job is cancelled by fuxi |
El trabajo en |
|
Task rerun |
El trabajo se está reintentando. Esto puede ocurrir si un trabajo en |
|
Online Job Waiting for running |
El trabajo en |
|
Online Job is running |
El trabajo en |
|
Online Job is failed |
El trabajo en |
|
Online Job is succeed |
El trabajo en |
|
Online Job is cancelled by fuxi |
El trabajo en |
|
Task key-path executing finished |
La ruta crítica del trabajo finalizó, pero no se generó información como DetailStatus. |
|
Task key-path is finished |
La ruta crítica del trabajo finalizó. |
|
Instance key-path is finished |
La ruta crítica de la instancia finalizó. |
|
Task execution is finished |
El trabajo finalizó y se generó DetailStatus. |
|
Instance execution is finished |
El trabajo finalizó. |
|
Execution failed |
El trabajo falló. |