Would be good if you could specify what logging is required at execution time. I'm thinking you would specify it like a start-up variable and the options would be:
Disable - No logging is done at all
Enable All - Everything is logged
Enable - Same as currently happens i.e. logging is done as specified on each stage/action
Errors Only - Stages/Actions would only log in an error scenario
Default - Use default logging setting for each stage/action, which are specified in the System Settings (i.e. you may want Start, End to be enabled, all others to be Errors only)
This would mean you wouldn't need to amend the process/objects, just to stop it logging.
We've found that having logging on makes the process run so much slower.