From f315c634177ead209832a6db4f20bc7032c9149b Mon Sep 17 00:00:00 2001 From: StudentMAGe <43290436+StudentMAGe@users.noreply.github.com> Date: Tue, 12 Mar 2019 03:12:47 +0300 Subject: [PATCH 1/3] tracefoo v1 - not working --- tracefoo_mag.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) create mode 100644 tracefoo_mag.py diff --git a/tracefoo_mag.py b/tracefoo_mag.py new file mode 100644 index 0000000..03853d3 --- /dev/null +++ b/tracefoo_mag.py @@ -0,0 +1,15 @@ +import sys + + +def tracefoo(userfunc): + global nameofuserfunc + nameofuserfunc = userfunc.__name__ + sys.settrace(tracefunc) + + +def tracefunc(frame, event, arg): + if event == "return" and frame.f_code.co_name == nameofuserfunc: + print(event, "function:", frame.f_code.co_name, ", local vars:", list(frame.f_locals.keys()), + ", globals:", frame.f_globals) + return tracefunc + From 0d502e20fedd03c24c71c3c1ae47551431e62651 Mon Sep 17 00:00:00 2001 From: StudentMAGe <43290436+StudentMAGe@users.noreply.github.com> Date: Tue, 12 Mar 2019 03:14:05 +0300 Subject: [PATCH 2/3] Update tracefoo_mag.py --- tracefoo_mag.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tracefoo_mag.py b/tracefoo_mag.py index 03853d3..1861389 100644 --- a/tracefoo_mag.py +++ b/tracefoo_mag.py @@ -9,7 +9,6 @@ def tracefoo(userfunc): def tracefunc(frame, event, arg): if event == "return" and frame.f_code.co_name == nameofuserfunc: - print(event, "function:", frame.f_code.co_name, ", local vars:", list(frame.f_locals.keys()), - ", globals:", frame.f_globals) + print("function:", frame.f_code.co_name, ", local vars:", list(frame.f_locals.keys())) return tracefunc From a4c1628f70200cde9f04ca3a480f2bb809b5f91d Mon Sep 17 00:00:00 2001 From: StudentMAGe <43290436+StudentMAGe@users.noreply.github.com> Date: Tue, 12 Mar 2019 11:17:25 +0300 Subject: [PATCH 3/3] Update tracefoo.py - NOW WORKING!!! --- tracefoo_mag.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tracefoo_mag.py b/tracefoo_mag.py index 1861389..22d5dbc 100644 --- a/tracefoo_mag.py +++ b/tracefoo_mag.py @@ -10,5 +10,5 @@ def tracefoo(userfunc): def tracefunc(frame, event, arg): if event == "return" and frame.f_code.co_name == nameofuserfunc: print("function:", frame.f_code.co_name, ", local vars:", list(frame.f_locals.keys())) - return tracefunc + return tracefunc