def apply()

in slf4j-jdk14/src/main/scala/com/twitter/server/handler/slf4j/jdk14/LoggingHandler.scala [104:141]


  def apply(request: Request): Future[Response] = {
    val uri = Uri.fromRequest(request)
    val params = uri.params

    val loggerName: Option[String] = parseLoggerName(params)
    val loggerLevel: Option[String] = params.get("level")

    val updateMsg = (loggerLevel, loggerName) match {
      case (Some(level), Some(name)) =>
        val updated = for {
          level <- Logger.levelNames.get(level.toUpperCase)
        } yield {
          val logger = logManager.getLogger(name)
          logger.setLevel(level)
          s"""Changed ${getLoggerDisplayName(logger)} to Level.$level"""
        }

        updated.getOrElse(s"Unable to change $name to Level.$level!")

      case _ => ""
    }
    log.info(updateMsg)

    val loggers = logManager.getLoggerNames.asScala.toSeq
      .map(logManager.getLogger)
      .sorted(LoggingHandler.loggerOrder)
    if (!expectsHtml(request)) {
      newResponse(
        contentType = "text/plain;charset=UTF-8",
        content = Buf.Utf8(LoggingHandler.renderText(loggers, updateMsg))
      )
    } else {
      newResponse(
        contentType = "text/html;charset=UTF-8",
        content = Buf.Utf8(LoggingHandler.renderHtml(loggers, levels, escapeHtml(updateMsg)))
      )
    }
  }