Skip to content

Instantly share code, notes, and snippets.

@imenattatra
Forked from goutomroy/query_debugger.py
Created September 14, 2020 05:01
Show Gist options
  • Save imenattatra/6f40efadd6d54fa9c65a7ada980714b7 to your computer and use it in GitHub Desktop.
Save imenattatra/6f40efadd6d54fa9c65a7ada980714b7 to your computer and use it in GitHub Desktop.
from django.db import connection, reset_queries
import time
import functools
def query_debugger(func):
@functools.wraps(func)
def inner_func(*args, **kwargs):
reset_queries()
start_queries = len(connection.queries)
start = time.perf_counter()
result = func(*args, **kwargs)
end = time.perf_counter()
end_queries = len(connection.queries)
print(f"Function : {func.__name__}")
print(f"Number of Queries : {end_queries - start_queries}")
print(f"Finished in : {(end - start):.2f}s")
return result
return inner_func
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment