`import log
class Component:
constructor
--logger /log.Logger = log.default:
logger
logger.debug "Component constructed" .debug "debug"
use:
logger
logger.info "info" .warn "warning"
logger
logger.error "error" .fatal "fatal" // exeption !
//logger
main:
5.repeat:
print "\nlog level: $it $(log.level_name it)"
logger ::= log.Logger it log.DefaultTarget --name="test"
component := Component --logger=logger
component.use
print "done"`
log level: 0 DEBUG [test] DEBUG: Component constructed [test] DEBUG: debug [test] INFO: info [test] WARN: warning [test] ERROR: error log level: 1 INFO [test] INFO: info [test] WARN: warning [test] ERROR: error log level: 2 WARN [test] WARN: warning [test] ERROR: error log level: 3 ERROR [test] ERROR: error log level: 4 FATAL done
logger ::= log.Logger logLevel
import log
main:
log.set_default (log.default.with_level log.FATAL_LEVEL)