Я предполагаю, что вы пытаетесь определить, какие строки в вашем приложении отвечают за выполнение каких запросов.
Один из способов добиться этого - создать собственный обработчик, который распечатывает текущий стекв тот момент, когда Django регистрирует запрос.Это позволит вам увидеть, какая строка в вашем приложении выполняется.
Вы можете создать собственный обработчик, такой как:
import logging
import traceback
class StackInfoHandler(logging.StreamHandler):
trim = 5
def emit(self, record):
super(StackInfoHandler, self).emit(record)
stack = ''.join(
str(row) for row in traceback.format_stack()[:-self.trim]
)
self.stream.write(stack)
А затем в вашей конфигурации регистрации вы можете просто переключитьКласс обработчика для использования StackInfoHandler
:
'handlers': {
'console': {
'level': 'DEBUG',
'class': 'my.package.StackInfoHandler', # Reference the custom handler
'formatter': 'color'
},
},
Обратите внимание, что StackInfoHandler
обрезает 5 строк из стека, чтобы он не отображал кадры стека из самой структуры ведения журнала.Возможно, вам придется настроить это число (у меня 5 работает локально).