Dynamic CTF on Windows: Enable Tracing Live, Configure Emitters Before the First Event
Dynamic CTF changes trace levels and component selection in an already prepared running COBOL process. Its Windows-only utility requires startup configuration through MFTRACE_CONFIG, while emitter settings can change only before the emitter writes its first event. [1] [2]
Read the full briefing
Scope: Rocket Enterprise Developer 12.0 for Eclipse (Windows), COBOL application diagnostics. The Dynamic CTF command-line utility described here is Windows-only.
Dynamic CTF lets you change tracing while a COBOL application is running: adjust trace levels, add components, or remove components from the trace. Run the utility on the same machine as the application. This supports a focused diagnostic session during execution, with one important boundary: an emitter’s configuration can change only before it has written its first qualifying event. See Dynamic Tracing.
The prerequisite is easy to overlook. The target application must already be executing with CTF enabled through MFTRACE_CONFIG. The mandatory -p argument identifies that application’s operating-system process; the utility does not simply enable CTF in an arbitrary unprepared process. Run cblctd from the Enterprise Developer command line. See Dynamic CTF Syntax Options.
Rocket documents a useful preparation sequence:
- Define the component events you want in the CTF configuration file.
- Set
mftrace.level=nonein that file to suppress component-event output initially. - Start the application with that configuration.
- Change the component trace level when tracing is needed.
For the manual’s example process, PID 4892, whose configuration defines run-time events, enable tracing with:
cblctd -Lc mf.rts:debug -p 4892Then disable that component’s tracing with:
cblctd -Lc mf.rts:none -p 4892These are the documented example commands with ordinary command-line hyphens. Rocket states that when no events are enabled, application execution has no tracing performance overhead. See Examples of Using the Dynamic CTF Command Line Utility.
The controls separate event selection from output configuration. -Ct and -Cf enable or disable component properties; -Lc sets a component’s trace level. The -f option loads dynamic CTF options from a text file, allowing the same settings to be reapplied. Emitter controls, including -Ev for an emitter property and -Dd or -Dr for default-emitter membership, have a stricter lifetime rule: they apply only before that emitter has output any events. Its output file is created at the first qualifying event, after which the emitter cannot be reconfigured. See Dynamic CTF Syntax Options.
Takeaway: Prepare CTF at startup, switch component tracing during execution, and configure each emitter before its first event fixes its configuration. See Dynamic Tracing.