sounds like java. maybe simple AbstractLoggingWrapper ?