WFLY-3888 enhance timer logging, show the full timer information for ERROR and WARN

cache the part of the string which is final and only replace the dynamic values.

https://issues.jboss.org/browse/WFLY-3888
Never mind, I see why this is done, you're doing two stages.  Isn't there a risk if one of the toStrings has a % in it though?