Question
· Jun 9, 2023

Is there a way to retrieve a list of all globals that have been read/written in a given context (eg: CSP request) or time period ?

Hello,

I would like to get a list of all globals that have been read or written during a given context. In Portal, there are counters in dashboard that give the number of read/write to globals in general.

What I am looking for : 

- some handler (eg: like $ZTRAP) that will be called everytime something is read/written to a global.

- to activate a "global log mode" in Portal that will dump some information to a file (like ^ISCSOAP for SOAP requests).

I understand this is something that can considerably slow down IRIS, but it's intended to be used only for debbuging and under no load.

As last resort, I could dump all globals (using ^$GLOBAL) and count the number of nodes inside, thern compare it after doing some operation (eg: a CSP request). That might work but this is time consuming and inefficient.

Product version: IRIS 2021.1
$ZV: IRIS for Windows (x86-64) 2021.1 (Build 215) Wed Jun 9 2021 09:56:33 EDT
Discussion (2)1
Log in or sign up to continue

If not disabled all global SET and KILL and also transactions are documented in JOURNAL
there are also related search utilities available in %SYS
there is no equivalent feature for Global READ.

if you just look for the fact that there was a SET or KILL at object level
DSTIME could be an option see example: 
https://community.intersystems.com/post/synchronize-data-dstime
it is easier to handle than JOURNAL