Skip to content

Instantly share code, notes, and snippets.

@Hassanzadeh-sd
Created July 15, 2020 13:23
Show Gist options
  • Save Hassanzadeh-sd/d40b02975e4e0ef7f0b94333095da1af to your computer and use it in GitHub Desktop.
Save Hassanzadeh-sd/d40b02975e4e0ef7f0b94333095da1af 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