base logger class
logger can chouse output name
transform caller func name to emitter name
check log message level allowed with current rules for emmiter
write log to logoutput
exception processing
See Implementation
base logger class