code: func (kern *Kernel) SetLogger(logger *logging.Logger) {
  	logger = logger.WithScope("NewKernel()").With(structure.TimeKey,
  		log.DefaultTimestampUTC, structure.RunId, kern.RunID.String())
  	heightValuer := log.Valuer(func() interface{} { return kern.Blockchain.LastBlockHeight() })
  	kern.Logger = logger.WithInfo(structure.CallerKey, log.Caller(LoggingCallerDepth)).With("height", heightValuer)
  	kern.Emitter.SetLogger(logger)
  }
docs: // SetLogger initializes the kernel with the provided logger