private def renderHtml()

in logback-classic/src/main/scala/com/twitter/server/handler/logback/classic/LoggingHandler.scala [138:236]


  private def renderHtml(
    renderLoggers: Seq[Logger],
    julLoggers: Seq[javalog.Logger],
    updateMsg: String,
    showOverriddenOnly: Boolean
  ): String = {
    s"""<h3>Logback Loggers</h3>
        ${renderFilterButtons(showOverriddenOnly)}
    <table class="table table-striped table-condensed">
        <caption>${escapeHtml(updateMsg)}</caption>
        <thead>
          <tr>
            <th>ch.qos.logback.classic.Logger</th>
            <th>ch.qos.logback.classic.Level</th>
          </tr>
        </thead>
          ${(for (logger <- renderLoggers) yield {
      val loggerName =
        if (logger.getName == "") org.slf4j.Logger.ROOT_LOGGER_NAME else logger.getName
      val inheritsLevel = logger.getLevel == null
      val filterQueryParams = if (showOverriddenOnly) {
        "?overridden=true&"
      } else "?"

      val buttons = for (level <- levels) yield {
        val isActive = logger.getEffectiveLevel == level

        val activeCss =
          if (!isActive) "btn-default"
          else if (!inheritsLevel) "btn-primary active disabled"
          else "btn-primary active"

        val queryParams =
          if (isActive && logger.getLevel == logger.getEffectiveLevel) ""
          else {
            s"""logger=${URLEncoder.encode(loggerName, "UTF-8")}&level=${level.toString}"""
          }

        s"""<a class="btn btn-sm $activeCss"
                              href="$filterQueryParams$queryParams">${level.toString}</a>"""
      }

      val resetButton = if (!inheritsLevel && loggerName != org.slf4j.Logger.ROOT_LOGGER_NAME) {
        val queryParams = s"""logger=${URLEncoder.encode(loggerName, "UTF-8")}&level=null"""
        s"""<a class="btn btn-sm btn-warning" href="$filterQueryParams$queryParams">RESET</a>"""
      } else ""

      s"""<tr>
                <td><h5>${escapeHtml(loggerName)}</h5></td>
                <td><div class="btn-group" role="group">
                  ${buttons.mkString("\n")}
                  $resetButton
                </div></td>
                </tr>"""
    }).mkString("\n")}
         </table>
    <h3>java.util.Logging Loggers</h3>
    <table class="table table-striped table-condensed">
            <thead>
              <tr>
                <th>java.util.logging.Logger</th>
                <th>java.util.logging.Level</th>
              </tr>
            </thead>
    ${
      val filterQueryParams = if (showOverriddenOnly) {
        "?overridden=true&"
      } else "?"

      (for (logger <- julLoggers) yield {
        val loggerName = getLoggerDisplayName(logger)
        val buttons = (for (level <- julLevels) yield {
          val isActive = getLevel(logger) == level
          val activeCss =
            if (!isActive) "btn-default"
            else {
              "btn-primary active disabled"
            }
          val queryParams =
            if (isActive) ""
            else {
              s"""logger=${URLEncoder
                .encode(loggerName, "UTF-8")}&level=${level.toString}&isJul=true"""
            }
          s"""<a class="btn btn-sm $activeCss"
                            href="$filterQueryParams$queryParams">${level.toString}</a>"""
        }).mkString("\n")

        s"""<tr>
          <td><h5>${escapeHtml(loggerName)}</h5></td>
          <td><div class="btn-group" role="group">
            $buttons
          </div></td>
          </tr>"""
      }).mkString("\n")
    }
         </table>"""

  }