我在使用的logback SMTPAppender,並配置是這樣的:logback:CyclicBufferTracker.setMaxNumberOfBuffers()在官方文檔仍在引用它時刪除。請選擇什麼?
<appender name="ALARM-APPENDER" class="ch.qos.logback.classic.net.SMTPAppender">
...
<cyclicBufferTracker class="ch.qos.logback.core.spi.CyclicBufferTracker">
<maxNumberOfBuffers>256</maxNumberOfBuffers>
</cyclicBufferTracker>
...
</appender>
,但我得到這個錯誤運行時:
10:00:48171 |在ch.qos.logback·ERROR .core.joran.spi.Interpreter @ 82:24 - 爲[maxNumberOfBuffers]沒有適用的行動,目前ElementPath是[配置] [附加器] [cyclicBufferTracker] [maxNumberOfBuffers]
所以我複查官方手冊:
http://logback.qos.ch/manual/appenders.html#bufferManagement
它沒有告訴maxNumberOfBuffers應該配置到哪裏。
幸運的是,我發現在官方文檔一個配置實例: http://logback.qos.ch/recipes/emailPerTransaction.html
<cyclicBufferTracker class="ch.qos.logback.core.spi.CyclicBufferTracker">
<maxNumberOfBuffers>512</maxNumberOfBuffers>
</cyclicBufferTracker>
看起來是一樣的...
然後我檢查類CyclicBufferTracker最新的java-doc的:
http://logback.qos.ch/apidocs/ch/qos/logback/core/spi/CyclicBufferTracker.html
沒有「setMaxNumberOfBuffers」方法或者在它的父類中。
截至去度假,我檢查了源代碼github上改變歷史:
https://github.com/qos-ch/logback/blob/a052f15d09636698c96fcdb753da3270f5c01b11/logback-core/src/main/java/ch/qos/logback/core/spi/CyclicBufferTracker.java
在原始版本中,當它仍然是一個接口,也都是「setMaxNumberOfBuffers」,並在其「setBufferSize」的方法。
https://github.com/qos-ch/logback/commit/773193a09922ab2a1dd70e4978be8cdf4e050f6e
2013年4月25日,方法「setMaxNumberOfBuffers」被刪除。
現在有一個問題:我應該在哪裏配置「setMaxNumberOfBuffers」爲?
( 「setMaxNumberOfBuffers」 具有 「setBufferSize」 完全differet意思)
它甚至不能找到和的logback的倉庫 「maxNumberOfBuffers」 字符串:
https://github.com/qos-ch/logback/search?q=maxNumberOfBuffers
我使用的logback的最新版本(順便說一下。
謝謝你們!