We use a vendor framework with an internal standard of writing methodEntry and methodExit log messages in every method. They took "every" a little to literally so that some recursive or commonly used methods show up thousands of times in the log, but otherwise it can be useful to turn them on now & then.
A good question is never answered. It is not a bolt to be tightened into place but a seed to be planted and to bear more seed toward the hope of greening the landscape of the idea. John Ciardi
subject: Display / System.out.println flow of programs?