logback-production.xml 2.2 KB
<configuration>

  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <!-- encoders are assigned the type ch.qos.logback.classic.encoder.PatternLayoutEncoder by default -->
    <encoder>
      <pattern>%date{yyyy-MM-dd HH:mm:ss.SSS} %-5level[%thread]%logger{56}.%method:%L -%msg %n</pattern>
    </encoder>
  </appender>

  <appender name="EMAIL" class="ch.qos.logback.classic.net.SMTPAppender">
    <smtpHost>smtp.taover.com</smtpHost>
    <smtpPort>465</smtpPort>
    <SSL>true</SSL>
    <username>taover-robot@taover.com</username>
    <password>Lexi@1798</password>
    
    <from>taover-robot@taover.com</from>
    <to>wangbin@taover.com</to>
    <to>gaoming@taover.com</to>
    <to>liuyunpeng@taover.com</to>
    <subject>八爪云-data-analysis/ERROR:%logger{20}</subject>
    <layout class="ch.qos.logback.classic.html.HTMLLayout"/>
    <!-- 这里采用等级过滤器,指定等级相符才发送,这里指定ERROR级别才发送 -->
    <filter class="ch.qos.logback.classic.filter.LevelFilter">
        <level>ERROR</level>
        <onMatch>ACCEPT</onMatch>
        <onMismatch>DENY</onMismatch>
    </filter>
    <!-- 每个电子邮件只发送一个日志条目 -->
    <cyclicBufferTracker class="ch.qos.logback.core.spi.CyclicBufferTracker">
        <bufferSize>3</bufferSize>
    </cyclicBufferTracker>
  </appender>

  <appender name="ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
    <file>logback-rolling.log</file>
    <rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
      <!-- rollover daily -->
      <fileNamePattern>logback-roll-%d{yyyy-MM-dd}.%i.log</fileNamePattern>
       <!-- each file should be at most 100MB, keep 60 days worth of history, but at most 20GB -->
       <maxFileSize>100MB</maxFileSize>    
       <maxHistory>60</maxHistory>
       <totalSizeCap>5GB</totalSizeCap>
    </rollingPolicy>
    <encoder>
      <pattern>%date{yyyy-MM-dd HH:mm:ss.SSS} %-5level[%thread]%logger{56}.%method:%L -%msg %n</pattern>
    </encoder>
  </appender>

  <root level="ERROR">
  	<appender-ref ref="EMAIL"/>  	
  </root>

  <root level="INFO">
  	<appender-ref ref="ROLLING"/>
    <appender-ref ref="STDOUT" />
  </root>
  
</configuration>