QGIS не записує свої журнальні повідомлення у файл за замовчуванням.
Якщо у вас є збірка налагодження (зазвичай існують солянки), вони записуються в stdout. Це означає, що якщо запустити його в терміналі на Linux, ви побачите там повідомлення. У Windows я думаю, що є інструмент під назвою Налагодження інструментів для Windows або подібний, який може перехоплювати повідомлення.
Альтернативою є використання деяких мінімальних сценаріїв пітона. Кожне повідомлення випромінюється як сигнал Qt. Тому ми можемо підключитися до цих сигналів і записати їх у файл. Просто скопіюйте таку команду на консоль python
Для 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)
Або для 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)
При запуску цього коду буде записано вихід /tmp/qgis.log
.