query debugger
query_debugger
def query_debugger(func):
import time
import functools
from django.db import connection, reset_queries
@functools.wraps(func)
def wrapper(*args, **kwargs):
reset_queries()
number_of_start_queries = len(connection.queries)
start = time.perf_counter()
result = func(*args, **kwargs)
end = time.perf_counter()
number_of_end_queries = len(connection.queries)
print(f"-------------------------------------------------------------------")
print(f"Function : {func.__name__}")
print(f"Number of Queries : {number_of_end_queries-number_of_start_queries}")
print(f"Finished in : {(end - start):.2f}s")
print(f"-------------------------------------------------------------------")
return result
return wrapper
Logging
LOGGING = {
'disable_existing_loggers': False,
'version': 1,
'formatters': {
'verbose': {
'format': '{asctime} {levelname} {message}',
'style': '{'
},
},
'handlers': {
'console': {
'class' : 'logging.StreamHandler',
'formatter' : 'verbose',
'level' : 'DEBUG',
},
'file': {
'level' : 'DEBUG',
'class' : 'logging.FileHandler',
'formatter' : 'verbose',
'filename' : 'debug.log',
},
},
'loggers': {
'django.db.backends': {
'handlers' : ['console','file'],
'level' : 'DEBUG',
'propagate': False,
},
},
}
와 성보님 포스트가 검색이 되네요 역시..