Use the
LOG-MANAGER system handle to determine where objects are created and deleted, then refer to the programs and line numbers shown in the trace log to isolate the flaw in the application logic.
To generate a trace log containing object creation and deletion information:
LOG-MANAGER:LOGGING-LEVEL = 4.
LOG-MANAGER:LOG-ENTRY-TYPES = "DynObjects.Class".
LOG-MANAGER:LOGFILE-NAME = "SomeFileNameGoesHere".
The resulting log file will contain a line for each creation and deletion.
Each line will give a program and line number where the creation/deletion took place.
The output from using
LOG-MANAGER can also be achieved using 4GLTrace and DynObjects.* client logging if a session-wide trace log is required:
prowin -clientlog SomeFileNameGoesHere -logginglevel 4 -logentrytypes DynObjects.ClassFor more detailed information on checking for memory leaks with dynamic objects please refer to the following Article: