QGIS no escribe sus mensajes de registro en un archivo por defecto.
Si tienes una compilación de depuración (los nightlies normalmente lo son) se escriben en stdout. Eso significa que si lo ejecutas en un terminal en linux verás los mensajes allí. En Windows creo que hay una herramienta llamada Debugging Tools for Windows o similar que puede interceptar los mensajes.
Una alternativa es utilizar algunos scripts mínimos de python. Cada mensaje se emite como una señal Qt. Por lo tanto, podemos conectarnos a estas señales y escribirlas en un archivo. Simplemente copie el siguiente comando en su consola de python
Para QGIS 3:
filename = '/tmp/qgis.log'
def write_log_message(message, tag, level):
with open(filename, 'a') as logfile:
logfile.write('{tag}({level}): {message}'.format(tag=tag, level=level, message=message))
QgsApplication.messageLog().messageReceived.connect(write_log_message)
O para QGIS 2:
filename = '/tmp/qgis.log'
def write_log_message(message, tag, level):
with open(filename, 'a') as logfile:
logfile.write('{tag}({level}): {message}'.format(tag=tag, level=level, message=message))
QgsMessageLog.instance().messageReceived.connect(write_log_message)
Al ejecutar este código, la salida se escribirá en /tmp/qgis.log
.