Registro y diagnóstico
Última actualización: 14/10/2026QV2QS escribe registros de diagnóstico estructurados durante cada ejecución. El sistema de registro cuenta con dos niveles: un registro persistente del sistema que perdura entre ejecuciones y un registro estructurado por ejecución que se incluye con el resultado de la conversión.
Registro del sistema
QV2QS mantiene un archivo de registro rotativo en una ubicación fija en el disco. El registro del sistema se inicia cuando se inicia el ejecutable y registra eventos a nivel de aplicación independientemente de cualquier proyecto o lote.
Ubicación: %LOCALAPPDATA%\QV2QS\qv2qs.log
El registro del sistema utiliza un controlador de archivos rotativo con la siguiente configuración.
| Configuración | Valor |
|---|---|
| Tamaño máximo de archivo | 25 MB |
| Archivos de copia de seguridad conservados | 3 |
| Patrón de archivo | qv2qs.log, qv2qs.log.1, qv2qs.log.2, qv2qs.log.3 |
Cuando el archivo de registro activo alcanza los 25 MB, QV2QS rota el archivo y crea un nuevo archivo de registro. Se conservan las tres copias de seguridad más recientes. Las copias de seguridad más antiguas se eliminan automáticamente.
Registro estructurado por ejecución
Cada ejecución de conversión genera un archivo de registro independiente que contiene eventos detallados de esa ejecución. El archivo se llama qv2qs_run_<version>_<timestamp>.log y está escrito en formato de valores separados por tabulaciones (TSV) con una columna de datos JSON.
Ubicación predeterminada: %LOCALAPPDATA%\QV2QS\logs\
En el modo de proyecto único, QV2QS traslada el archivo de registro a la subcarpeta logs/ de la carpeta de salida del proyecto (por ejemplo, <outputDir>/Sales/logs/) después de que se inicialice la carpeta de salida. El archivo de registro se incluye en la salida de la conversión.
En el modo por lotes, los registros por proyecto se escriben en la subcarpeta logs/ dentro de la carpeta de salida de cada proyecto.
Formato de archivo de registro
Cada archivo de registro comienza con una fila de encabezado TSV:
ts_utc level version run_id logger event message data
| Columna | Descripción |
|---|---|
ts_utc
|
Marca de tiempo ISO 8601 en UTC con precisión de milisegundos |
level
|
Nivel de registro: DEBUG, INFO, WARNING, ERROR o CRITICAL |
version
|
Versión de QV2QS |
run_id
|
Identificador único de ejecución con el formato YYYYMMDD-HHMMSS-<hex> |
logger
|
Nombre del registrador (normalmente qv2qs) |
event
|
Cadena de tipo de evento (por ejemplo, startup, conversion_complete, batch_local_complete) |
message
|
Descripción legible por humanos |
data
|
Objeto JSON con pares clave-valor contextuales |
Colisiones de marcas de tiempo
Si dos ejecuciones se inician en el mismo segundo y generan la misma marca de tiempo, QV2QS añade _2, _3 o números posteriores al nombre del archivo para evitar que se sobrescriba.
Qué registro revisar
QV2QS escribe en dos registros independientes en distintas fases de una ejecución. El registro del sistema siempre está disponible. El registro por ejecución solo se crea una vez completada la inicialización del arranque.
| Escenario | Registro que comprobar primero | Por qué |
|---|---|---|
| El proceso se bloquea o finaliza inmediatamente | Registro del sistema | El registro por ejecución aún no se ha creado |
| La generación de PRJ falla antes de que comience la conversión | Registro del sistema | Los eventos PRJ se registran antes de que se inicialice el directorio de salida |
| Una ejecución por lotes muestra archivos con errores sin detalles | Registro del sistema | Los errores a nivel de lote (ausencia de QlikView Desktop, fallos de requisitos previos) se registran en el registro del sistema |
| La conversión produce un resultado inesperado | Registro por ejecución en el directorio de salida | Las decisiones de conversión a nivel de objeto y las advertencias se registran en el registro de cada ejecución |
| El despliegue en la nube falla | Registro por ejecución en el directorio de salida | Las llamadas a la API, los errores de autenticación y el progreso de la subida se registran en el registro de cada ejecución. |
El registro del sistema y el registro por ejecución registran los mismos eventos durante el periodo de solapamiento cuando ambos están activos. El registro del sistema comienza con el lanzamiento del proceso. El registro de cada ejecución comienza después de que se analicen los argumentos de la línea de comandos y se cree el directorio de salida. Si se produce un error antes de que se cree el registro por ejecución, solo el registro del sistema contiene información de diagnóstico.
Niveles de registro
Hay cinco niveles de registro disponibles, enumerados de mayor a menor nivel de detalle.
| Nivel | Descripción |
|---|---|
DEBUG
|
Información de diagnóstico detallada para solucionar problemas |
INFO
|
Mensajes operativos generales (predeterminado) |
WARNING
|
Condiciones inesperadas que no impiden la conversión |
ERROR
|
Fallos que afectan a objetos u operaciones individuales |
CRITICAL
|
Fallos graves que detienen la ejecución |
Establezca el nivel de registro con --logLevel o con la variable de entorno QV2QS_LOG_LEVEL. El indicador de la CLI tiene prioridad cuando ambos están establecidos.
Establezca --logLevel DEBUG para capturar la salida más detallada. Las entradas de nivel de depuración incluyen decisiones de conversión, llamadas a la API en la nube, modificaciones de scripts y detalles del procesamiento de objetos.
Para habilitar el registro de depuración sin modificar la línea de comandos, establezca la variable de entorno antes de ejecutar QV2QS:
set QV2QS_LOG_LEVEL=DEBUG
QV2QS.exe --prjPath ./MyApp-prj --outputDir ./output --qvw MyApp.qvw --unbuildOnly
Limpieza de registros
Los archivos de registro se acumulan entre ejecuciones en el directorio de registro persistente. Utilice --cleanLogs para eliminar los archivos de registro con más de 30 días de antigüedad al inicio de una ejecución. La limpieza solo se aplica al directorio de registros persistente; los registros por proyecto en los directorios de salida no se ven afectados.
Enmascaramiento de secretos
Las entradas de registro enmascaran automáticamente los valores confidenciales. Las claves de API, los tokens, las contraseñas y los secretos de cliente se enmascaran para mostrar únicamente los últimos cuatro caracteres. Los argumentos de la línea de comandos que contienen secretos también se enmascaran cuando se registran.
Registro del motor de QlikView Desktop
Cuando la generación de PRJ está habilitada, QV2QS registra qué motor de QlikView Desktop se utiliza para cada archivo. El evento de registro prj_generate_start registra si está activo el motor portátil integrado o una versión instalada en el sistema, e incluye la versión de archivo del ejecutable integrado cuando está disponible.
Una vez establecida la conexión con QlikView Desktop, el evento prj_qv_ready registra la versión de QlikView notificada por el motor en ejecución (por ejemplo, 12.100.20100.0). Cuando se utiliza el motor integrado, el campo exe_file_version registra la versión del archivo leída del ejecutable.
En el modo por lotes, el evento de registro prj_batch_prereq registra la selección del motor y la versión integrada para todo el lote antes de que se procese ningún archivo. Si no está disponible ni un motor integrado ni una instalación del sistema, el error se registra como prj_batch_no_qv en el registro del sistema.
Establezca --logLevel DEBUG para capturar los pasos detallados de resolución del motor, incluidas las rutas de archivo comprobadas durante la detección del motor.
Salida por consola frente a registro en archivo
La salida por consola y el registro en archivo son sistemas independientes.
| Aspecto | Consola | Registro de archivo |
|---|---|---|
| Formato | Texto con formato con colores e indicadores giratorios opcionales | TSV estructurado con datos JSON |
| Controlado por | --console pretty\|plain\|silent\|ui
|
--logLevel, --logDir |
| Contenido | Progreso y resultados orientados al usuario | Eventos de diagnóstico completos |
| Enmascaramiento de secretos | No aplicable | Aplicado automáticamente |
La salida de la consola no aparece en los archivos de registro. El indicador --console silent suprime la salida por consola sin afectar al registro en archivo.
Argumentos de la CLI
| Argumento | Descripción | Predeterminado |
|---|---|---|
--logLevel LEVEL
|
Nivel de detalle del registro: DEBUG, INFO, WARNING, ERROR, CRITICAL |
INFO
|
--logDir FOLDER
|
Sobrescribir la carpeta de salida de registros por ejecución. Las rutas relativas se resuelven desde el directorio de trabajo actual, no desde el directorio de salida. No afecta al registro persistente del sistema en %LOCALAPPDATA%. |
%LOCALAPPDATA%\QV2QS\logs\ (proyecto único) o <outputDir>/logs/ (por lotes) |
--cleanLogs
|
Eliminar los archivos de registro con más de 30 días de antigüedad antes de la ejecución | Desactivado |