apiVersion: v1
data:
  logback.xml: |+
    <configuration>

      <conversionRule conversionWord="coloredLevel" converterClass="play.api.libs.logback.ColoredLevel" />

      <appender name="FILE" class="ch.qos.logback.core.FileAppender">
        <file>${application.home:-.}/logs/application.log</file>
        <encoder>
          <pattern>%date [%level] from %logger in %thread - %message%n%xException</pattern>
        </encoder>
      </appender>

      <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <encoder>
            <pattern>%coloredLevel %logger{15} - %message%n%xException{10}</pattern>
        </encoder>
      </appender>

      <appender name="ASYNCFILE" class="ch.qos.logback.classic.AsyncAppender">
        <appender-ref ref="FILE" />
      </appender>

      <appender name="ASYNCSTDOUT" class="ch.qos.logback.classic.AsyncAppender">
        <appender-ref ref="STDOUT" />
      </appender>

      <logger name="play" level="INFO" />
      <logger name="application" level="DEBUG" />

      <!-- Off these ones as they are annoying, and anyway we manage configuration ourselves -->
      <logger name="com.avaje.ebean.config.PropertyMapLoader" level="OFF" />
      <logger name="com.avaje.ebeaninternal.server.core.XmlConfigLoader" level="OFF" />
      <logger name="com.avaje.ebeaninternal.server.lib.BackgroundThread" level="OFF" />
      <logger name="com.gargoylesoftware.htmlunit.javascript" level="OFF" />

      <root level="WARN">
        <appender-ref ref="ASYNCFILE" />
        <appender-ref ref="ASYNCSTDOUT" />
      </root>
    </configuration>

kind: ConfigMap
metadata:
  name: daf-configurator-logback
