Question Adel Elsayed · Apr 3, 2021

Could I trace what scripts (classes, routines,..) are called in a process?

for debugging purposes of complex applications.

Comments

Adel Elsayed  Apr 11, 2021 to Robert Cemper

in case of deployed code, where i can't embed into the code, how could we trace?

0
Robert Cemper  Apr 11, 2021 to Adel Elsayed

nowhere.  It's the purpose of deployed code not to be hacked nor debugged

0
Rich Taylor · May 26, 2021

You could try %SYS.MONLBL.  This is intended as a performance trace, but it MAY work for this purpose too.  You would have your application running in one session and get the the process is for that session.  Open a new session and run %SYS.MONLBL.  Choose the options to monitor ALL routines and the specific process id (PID) where you are running your application.  Go back to the application session and perform the function you want to trace.  Immediately go back to %SYS.MONLBL and generate the report before doing anything else in the application.

NOTE: This might not work with deployed code and even if it does will likely not provide any details of the deployed programs.  Hopefully it will at least show an entry for the deployed routine so you can see what is being called.

Good luck

https://docs.intersystems.com/irislatest/csp/docbook/DocBook.UI.Page.cl…

0
George James · May 26, 2021

Adel

Do you need something more than simply attaching a debugger to the process and stepping through the code?

With the Serenji debugger you have precise control over stepping into or over blocks of code and you can mask out library code that you already know about (or don't want to know about).

0