Subclasses must override this method to perform any tracing around the
supplied MethodInvocation. Subclasses are responsible for
ensuring that the MethodInvocation actually executes by
By default, the passed-in Log instance will have log level
"trace" enabled. Subclasses do not have to check for this again, unless
they overwrite the isInterceptorEnabled method to modify
the default behavior, and may delegate to writeToLog for actual
messages to be written.