docs: def handle_error(self, request: Any, status: int = 500, exc: Any = None, message: Optional[str] = None) -> web.Response:
          """Handle errors.
  
          Returns HTTP response with specific status code. Logs additional
          information. It always closes current connection."""
          if self.transport is None:
              # client has been disconnected during writing.
              if self._access_log:
                  request_ip = RequestHandler.get_request_ip(request, None)
                  version_string = None
                  if isinstance(request.version, HttpVersion):
                      version_string = 'HTTP/{}.{}'.format(request.version.major, request.version.minor)
                  logging.getLogger('transport.http').info('[{}] [{}] {} {} "{} {}{}{}" - {} "{}" -'.format(
                      RequestHandler.colorize_status('http', 499),
                      RequestHandler.colorize_status(499),
                      request_ip or '',
                      '"{}"'.format(request._cache['auth'].login.replace('"', '')) if request._cache.get('auth') and getattr(request._cache.get('auth'), 'login', None) else '-',
                      request.method,
                      request.path,
                      '?{}'.format(request.query_string) if request.query_string else '',
                      ' {}'.format(version_string) if version_string else '',
                      request.content_length if request.content_length is not None else '-',
                      request.headers.get('User-Agent', '').replace('"', '')
                  ))
  
          headers = {}
          headers[hdrs.CONTENT_TYPE] = 'text/plain; charset=utf-8'
  
          msg = '' if status == 500 or not message else message
  
          headers[hdrs.CONTENT_LENGTH] = str(len(msg))
          headers[hdrs.SERVER] = self._server_header or ''
          resp = web.Response(status=status,  # type: ignore
                              text=msg,
                              headers=headers)  # type: web.Response
          resp.force_close()  # type: ignore
  
          # some data already got sent, connection is broken
          if request.writer.output_size > 0 or self.transport is None:
              self.force_close()  # type: ignore
          elif self.transport is not None:
              request_ip = RequestHandler.get_request_ip(request, None)
              if not request_ip:
                  peername = request.transport.get_extra_info('peername')
                  if peername:
                      request_ip, _ = peername
              if self._access_log:
                  logging.getLogger('transport.http').info('[{}] [{}] {} {} "INVALID" {} - "" -'.format(
                      RequestHandler.colorize_status('http', status),
                      RequestHandler.colorize_status(status),
                      request_ip or '',
                      '"{}"'.format(request._cache['auth'].login.replace('"', '')) if request._cache.get('auth') and getattr(request._cache.get('auth'), 'login', None) else '-',
                      len(msg)
                  ))
  
          return resp