code: func (ctx *RequestCtx) Logger() Logger {
  	if ctx.logger.ctx == nil {
  		ctx.logger.ctx = ctx
  	}
  	if ctx.logger.logger == nil {
  		ctx.logger.logger = ctx.s.logger()
  	}
  	return &ctx.logger
  }
docs: // Logger returns logger, which may be used for logging arbitrary
  // request-specific messages inside RequestHandler.
  //
  // Each message logged via returned logger contains request-specific information
  // such as request id, request duration, local address, remote address,
  // request method and request url.
  //
  // It is safe re-using returned logger for logging multiple messages
  // for the current request.
  //
  // The returned logger is valid until returning from RequestHandler.