<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          Whisper日志信息管理工具

          聯(lián)合創(chuàng)作 · 2023-09-30 00:30

          Whisper 是控制異常郵件變成垃圾郵件的一個工具。Whisper 作為一個過濾的 appender 來代替默認的 SMTP 郵件 appender。當(dāng)消息的頻率超過配置的閾值的時候,Whisper 就會開始壓制。當(dāng)啟動壓制,Whisper 就會發(fā)送一定時期的數(shù)據(jù),讓你知道哪些信息被壓制,有多少信息被壓制。當(dāng)問題解決,你的錯誤信息頻率開始下降,那么就會結(jié)束壓制,一切恢復(fù)如常。所有的這些都基于一個日志信息基礎(chǔ)。

          Whisper 支持哪些日志記錄框架?

          Whisper 當(dāng)前支持 Logback,不就將會支持 log4j 和 log4jv2。

          如何獲取 JAR?

          Whisper 現(xiàn)已提供在 Maven Central:

          <groupId>com.eclecticlogic</groupId>
          <artifactId>whisper</artifactId>
          <packaging>jar</packaging>
          <version>1.0.0</version>

          如何配置 Whisper?

          把 whisper-logback-sample.xml 放在 src/sample/resources。

          配置 Whisper appender 之前要配置其他的兩個 appenders:ERROR 錯誤級別日志的正則郵件 appender 和第二個發(fā)送 suppression Digests 的郵件 appender:

          <appender name="errorEmail" class="ch.qos.logback.classic.net.SMTPAppender">
              <filter class="ch.qos.logback.classic.filter.LevelFilter">
                  <level>ERROR</level>
                  <onMatch>ACCEPT</onMatch>
                  <onMismatch>DENY</onMismatch>
              </filter>
              <smtpHost>ADDRESS-OF-YOUR-SMTP-HOST</smtpHost>
              <to>EMAIL-DESTINATION</to>
              <from>SENDER-EMAIL</from>
              <subject>TESTING: %logger{20} - %m</subject>
              <layout class="ch.qos.logback.classic.PatternLayout">
                  <pattern>%date %-5level %logger{35} - %message%n</pattern>
              </layout>
          </appender>
          
          <appender name="errorDigest" class="ch.qos.logback.classic.net.SMTPAppender">
              <smtpHost>ADDRESS-OF-YOUR-SMTP-HOST</smtpHost>
              <to>EMAIL-DESTINATION</to>
              <from>SENDER-EMAIL</from>
              <subject>%X{whisper.digest.subject}</subject>
              <layout class="ch.qos.logback.classic.PatternLayout">
                  <pattern>%date %-5level %logger{35} - %message%n</pattern>
              </layout>
          </appender>

          注意 %X{whisper.digest.subject} 的使用。

          配置 Whisper appender:

          <appender name="whisper"
              class="com.eclecticlogic.whisper.logback.WhisperAppender">
              <!-- Filter out non error logs -->
              <filter class="ch.qos.logback.classic.filter.LevelFilter">
                  <level>ERROR</level>
                  <onMatch>ACCEPT</onMatch>
                  <onMismatch>DENY</onMismatch>
              </filter>
              <!-- This is the name of the logging category to use to send out error digests. This is associated with the 
              errorDigest appender. -->
              <digestLoggerName>digest.appender.logger</digestLoggerName>
              <!--  suppressAfter specifies the criteria to enter suppression. The example below says that if 3 errors of the same kind
              are encountered within a 5 minute window, then suppression should kick in. -->
              <suppressAfter>3 in 5 minutes</suppressAfter>
              <!-- expireAfter specifies how much of silence the logger between messages before stopping suppression. --> 
              <expireAfter>4 minutes</expireAfter>
              <!-- digestFrequency specifies how often error email digests should be sent containing statistics on messages 
              suppressed -->
              <digestFrequency>20 minutes</digestFrequency>
          
              <!-- The pass-through appender for the normal case when suppression is not in-force. -->
              <appender-ref ref="errorEmail" />
          </appender>

          數(shù)字日志記錄名字關(guān)聯(lián) digestAppender,默認的 appenders 列表包括 whisper appender:

          <logger name="digest.appender.logger" level="error" additivity="false">
              <appender-ref ref="errorDigest" />
          </logger>
          
          <root level="debug">
              <appender-ref ref="whisper" />
              <appender-ref ref="fileAppender" />
          </root>


          瀏覽 21
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          編輯 分享
          舉報
          評論
          圖片
          表情
          推薦
          點贊
          評論
          收藏
          分享

          手機掃一掃分享

          編輯 分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  免费观看高清无码 | 四虎影院av永久 素人无码成人网站 | 三级网站视频在线观看 | 激情久久成人午夜视频 | 欧美一区二区三区四区在线 |