private static final Logger getCallerLogger() {
        StackTraceElement stack[] = (new Throwable()).getStackTrace();
        int i = 0;
        while (i < stack.length) {
            StackTraceElement frame = stack[i];
            String cname = frame.getClassName();
            if (cname.equals("com.yahoo.log.event.Event")) {
                break;
            }
            i++;
        }

        while (i < stack.length) {
            StackTraceElement frame = stack[i];
            String cname = frame.getClassName();
            if (!cname.equals("com.yahoo.log.event.Event")) {
                return Logger.getLogger(cname);
            }
            i++;
        }

        return Logger.getLogger("");
    }
Find the stack frame of the last called before we entered
the Event class and get the Logger belonging to that class.
If for some reason we fail to do this, just return the
default Logger.

<P>
Beware, if you come here for cleverness and enlightenment
then know that this technique might not be exceptionally fast
so don't abuse this mechanism blindly.  (Do what I do:  abuse
it with both eyes open :-).
vespalog/src/main/java/com/yahoo/log/event/Event.java