Skip to content

Registro y Diagnóstico ​

AppPorts tiene un sistema de registro integrado que registra eventos clave, operaciones de migración, información del sistema y detalles de errores durante la ejecución de la aplicación. Cuando surgen problemas, puede exportar un paquete de diagnóstico y enviarlo a los Issues del proyecto para solución de problemas.

Contenido Registrado ​

Información de Sesión de Inicio ​

La siguiente información se registra cada vez que la aplicación se inicia:

ElementoDescripción
ID de SesiónIdentificador único para esta ejecución (prefijo UUID de 8 caracteres)
ID de ProcesoIdentificador de proceso del sistema
Bundle IDIdentificador de la aplicación
Idioma de la AppCódigo de idioma actualmente seleccionado
Configuración Regional del SistemaIdentificador de configuración regional del sistema
Zona HorariaIdentificador de zona horaria actual
Lista de Idiomas PreferidosOrden de idiomas preferidos del sistema

Información de Diagnóstico del Sistema ​

ElementoDescripción
Versión de la AppNúmero de versión y número de compilación
Versión de macOSVersión del sistema y nombre comercial (ej., "macOS Sequoia 15.x")
Modelo del DispositivoModelo y nombre amigable (ej., "MacBook Pro (14-inch, M3 Pro, 2023)")
Info del ProcesadorCadena de marca, número de núcleos, número de núcleos activos
Memoria FísicaMemoria total

Información de Almacenamiento Externo ​

Registrada al seleccionar un volumen de almacenamiento externo:

ElementoDescripción
Nombre del VolumenNombre del volumen de almacenamiento
Capacidad Total / Espacio DisponibleInformación de espacio de almacenamiento
Formato del Sistema de Archivosej., APFS, HFS+, exFAT, etc.
Protocolo de InterfazUSB, Thunderbolt, NVMe/SATA
Velocidad del DispositivoInformación de tasa de transferencia
Tamaño de BloqueTamaño de bloque de almacenamiento
UUID del VolumenIdentificador único del volumen de almacenamiento

Eventos de Operación de Migración ​

Cada operación de migración genera un ID de operación único (ej., data-migrate-ABCD1234), registrando:

  • Inicio y fin de la operación
  • Progreso de cada paso (copiar, eliminar directorio original, crear enlace simbólico, rollback)
  • Capturas de estado de rutas antes y después de los pasos (existencia, permisos, tamaño, destino de symlink, bandera inmutable)
  • Detección de datos de migración residuales y recuperación automática
  • Progreso de copia de archivos, errores y reintentos

Informes de Rendimiento de Migración ​

ElementoDescripción
Nombre de la AppNombre de la aplicación migrada
Tamaño de DatosVolumen de datos migrado
DuraciónDuración de la migración (segundos)
Velocidad de TransferenciaTasa de transferencia (MB/s)
Ruta de Origen / Ruta de DestinoRutas de inicio y fin de la migración

Detalles de Error ​

Los registros de errores contienen información estructurada:

CampoDescripción
Descripción del ErrorDescripción legible del error
Tipo / Dominio / Código de ErrorInformación estructurada de NSError
Código de ErrorCódigo de error interno de AppPorts (ver tabla abajo)
Razón del FalloRazón detallada del fallo
Sugerencia de RecuperaciónSugerencia de recuperación proporcionada por el sistema
Ruta de ArchivoRuta del archivo afectado
Rutas RelacionadasRutas de apps relacionadas en la operación (relatedURLs)
Error SubyacenteError anidado registrado recursivamente

Códigos de Error ​

Código de errorSignificado
BACKUP-SIGNATURE-FAILEDFallo de la copia de seguridad de la firma
APP-MOVE-DESTINATION-CONFLICTEl destino de migración de la aplicación ya existe y no se puede confirmar que sea seguro sustituirlo
APP-RESTORE-LOCAL-CONFLICTAl devolver la aplicación al Mac se ha encontrado un elemento local del mismo nombre que no se puede sobrescribir automáticamente
DATA-MIGRATE-DESTINATION-CONFLICTEl destino de migración del directorio ya existe y los metadatos no coinciden por completo
RESIGN-FAILEDFallo al volver a firmar; la aplicación podría no superar la verificación de firma de macOS
DATA-RESIGN-FAILEDFallo al volver a firmar automáticamente después de migrar el directorio de datos
RESIGN-REFUSED-SANDBOXEDSe ha rechazado volver a firmar una aplicación aislada
RESTORE-SIGNATURE-IDENTITY-UNAVAILABLEEl certificado de firma original no está en este Mac; se ha rechazado la restauración
CONTAINER-MOUNT-*Fallo en una etapa de la migración por montaje, por ejemplo CONTAINER-MOUNT-EXTERNAL-NOT-APFS o CONTAINER-MOUNT-SWITCH-FAILED
CONTAINER-RESTORE-*Fallo en una etapa de restauración de un directorio migrado por montaje
DATA-BACKUP-SIGNATURE-FAILEDFallo de la copia de seguridad de la firma antes de migrar el directorio de datos; una restauración posterior no podrá usar la identidad original

Contexto de Operaciones de Directorio de Datos ​

Las operaciones de directorio de datos (migración, restauración, normalización, re-vinculación) incluyen automáticamente información de contexto de la app asociada en los registros:

CampoDescripción
app_nameNombre de la app asociada
app_statusEstado de la app («Enlazado», «Local», etc.)
app_is_resignedSi la app ha sido re-firmada
app_bundle_idBundle ID de la app (leído de la ruta real)
app_real_pathRuta real externa de la app

Resumen de Operación ​

Cada operación de migración genera un OperationSummaryRecord, reteniendo los 100 registros más recientes:

CampoDescripción
operationIDIdentificador único de la operación
categoryCategoría de la operación (app_move, data-migrate, file-copy, etc.)
resultResultado (success, failed, rolled_back, success_with_warning)
errorCodeCódigo de error (si existe)
startedAt / endedAtHora de inicio y fin
durationMsDuración (milisegundos)

Configuración del Registro ​

Ubicación de Almacenamiento ​

Ruta predeterminada del registro:

text
~/Library/Application Support/AppPorts/AppPorts_Log.txt

Se puede personalizar mediante:

  • Barra de menú → Registros → Establecer ubicación del registro...
  • Configuración → Configuración de registro → ruta personalizada

Formato del Registro ​

text
[2026-05-08 09:30:00] [INFO] [session:a1b2c3d4] [pid:12345] 应用启动
[2026-05-08 09:30:01] [DIAG] [session:a1b2c3d4] [pid:12345]   app_version: 1.6.1 (123)
[2026-05-08 09:30:05] [PERF] [session:a1b2c3d4] [pid:12345]   迁移完成: 2.3 GB, 45.2 MB/s, 52.1s

Niveles de Registro ​

NivelDescripción
INFOInformación general
ERRORInformación de errores (con detalles de error estructurados)
DIAGInformación de diagnóstico del sistema
DISKInformación de volúmenes de almacenamiento externo
PERFInforme de rendimiento de migración
TRACEEstado de rutas de bajo nivel y monitoreo de carpetas
DEBUGInformación de depuración (cálculo de tamaño, verificación de directorios anidados)
WARNAdvertencias (datos de migración residuales, modo de recuperación)

Rotación de Registros ​

  • Tamaño máximo predeterminado: 2 MB (configurable: 1 MB, 5 MB, 10 MB, 50 MB, 100 MB)
  • Auto-truncamiento al exceder: Descarta la mitad más antigua de las líneas, mantiene la mitad más nueva

Exportar paquete de diagnóstico ​

Cuando surgen problemas que requieren retroalimentación, por favor exporte un paquete de diagnóstico y adjúntelo al Issue.

Métodos de Exportación ​

Método 1: Barra de Menú

  1. Haga clic en Barra de menú → Registros → Exportar paquete de diagnóstico
  2. Elija la ubicación de guardado
  3. El sistema genera automáticamente un archivo .zip y lo abre en Finder

Método 2: Página de Configuración

  1. Abra AppPorts → Configuración (esquina superior derecha)
  2. Encuentre la sección "Configuración de registro"
  3. Haga clic en el botón "Exportar paquete de diagnóstico"
  4. Elija la ubicación de guardado

Contenido del Paquete de Diagnóstico ​

El AppPorts-Diagnostic-<日期时间>.zip exportado contiene:

ArchivoFormatoDescripción
diagnostic-summary.jsonJSONMetadatos (ID de sesión, versión, configuración regional, zona horaria, etc.)
diagnostic-summary.txtTexto planoResumen de diagnóstico legible
recent-operations.jsonJSONLos 100 registros de operaciones más recientes
recent-failures.jsonJSONLas 20 operaciones fallidas/con advertencia más recientes
AppPorts_Log.share-safe.txtTexto planoRegistro completo (anonimizado)

Protección de Privacidad ​

Los archivos de registro en el paquete de diagnóstico están anonimizados:

Contenido OriginalReemplazado Con
Ruta del directorio home del usuario (ej., /Users/john)/Users/<redacted-user>
Nombre del volumen de almacenamiento externo (ej., /Volumes/MyDrive)/Volumes/<redacted-volume>
Ruta completa de $HOME~

Enviar Issues ​

Después de obtener el paquete de diagnóstico, siga estos pasos para enviar:

  1. Visite la página de Issues del proyecto
  2. Haga clic en "New Issue", seleccione la plantilla de reporte de Bug
  3. Describa el problema y los pasos de reproducción
  4. Arrastre el archivo .zip de diagnóstico al área de adjuntos para subir
  5. Envíe el Issue

💡 Mejorar la Eficiencia de Retroalimentación

Enviar Issues con paquetes de diagnóstico puede acelerar significativamente la resolución de problemas. El paquete de diagnóstico contiene el historial completo de operaciones, detalles de errores e información del entorno del sistema, permitiendo a los desarrolladores reproducir y analizar problemas sin comunicación repetida.

最近更新