Tenía una qemumáquina virtual que se bloqueó varias veces porque HDD en el hipervisor no tenía espacio libre. Esto me hizo preguntarme si existe la posibilidad de configurar un registro / depuración para quemumáquinas virtuales. Traté de iniciar la máquina virtual con el -D /tmp/qemu-debug-logcomando:
qemu-system-i386 -D /tmp/qemu-debug-log -monitor pty -device e1000,netdev=tap0 -netdev tap,id=tap0 -m 512M -display vnc=:1 -drive file=FreeBSD10.2
..pero esto ni siquiera creó un /tmp/qemu-debug-logarchivo.
Además, qemuno parece escribir en el messageskernel ring buffer ( dmesg). ¿Cuáles son las mejores prácticas para habilitar el registro para qemumáquinas virtuales?

qemudirectamente y no a través de herramientas que usan,libvirtque a su vez deberían usar ellibvirtqemucontrolador.Respuestas:
qemuEl comando acepta un-dinterruptor simple que crea un archivo de registro llamado/tmp/qemu.log.Puede acceder a más opciones de registro / depuración a través de QEMU Monitor (por ejemplo
qemu -monitor stdio).fuente
Cualquier opción de registro proporcionada por QEMU tendrá un nivel demasiado bajo para lo que necesita: su problema no es que el hardware virtual se esté portando mal, solo que el software dentro de la VM necesita atención.
A este respecto, una máquina virtual no es diferente a una máquina real, y la solución es la misma. Su pregunta sugiere que la máquina virtual está ejecutando FreeBSD, por lo que debe verificar el uso
rsyslogpara enviar los registros a un servidor syslog externo (que podría ser su máquina host) a través de la conexión de red.(No estoy muy familiarizado con los BSD, por lo que no estoy 100% seguro de que
rsyslogsea la solución correcta o única aquí, pero esa palabra clave debería ayudarlo a comenzar).fuente
Si utiliza el
-d <component>parámetro al iniciar QEMU, habilitará la depuración para ese componente. Esto es útil si tiene el código fuente QEMU y desea ver los debugs detallados para un componente dado.Por ejemplo, pasar
-d cpu_resethabilitará la depuración CPU_LOG_RESET que "mostrará el estado de la CPU antes de que se reinicie la CPU". Consulte qemu / util / log.c para obtener una lista completa de las opciones de registro.De forma predeterminada, los registros se escriben en /tmp/qemu.log, pero puede especificar un archivo de registro diferente con el
-D <logfile>parámetro.fuente