加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

groovy – 如何使ThresholdFilter工作在对数

发布时间:2020-12-14 16:31:07 所属栏目:大数据 来源:网络整理
导读:我基本上遵循了 the instruction in Chapter 7的官方logback文档.不幸的是,事情似乎不能正常工作,我不知道为什么.所以,我们在这里. 我想要实现的是在控制台中只记录上述信息,并将所有调试和上述记录到日志文件中.我在logback.groovy中有这些行: appender("C
我基本上遵循了 the instruction in Chapter 7的官方logback文档.不幸的是,事情似乎不能正常工作,我不知道为什么.所以,我们在这里.

我想要实现的是在控制台中只记录上述信息,并将所有调试和上述记录到日志文件中.我在logback.groovy中有这些行:

appender("CONSOLE",ConsoleAppender) {
    encoder(PatternLayoutEncoder) {
        pattern = "%d{YYYY-MM-dd/HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n"
    }
    filter(ThresholdFilter) {
        level = INFO
    }
}

logger("vh.FileIO",DEBUG,['CONSOLE','FILE-DEBUG'])
root(DEBUG,['CONSOLE'])

我认为ThresholdFilter会使CONSOLE只能收到信息和上面的日志.但是,我仍然在控制台上收到vh.FileIO的调试日志.例如,我仍然在控制台上得到这样的东西:

2013-10-11/21:48:10.537 [main] DEBUG vh.FileIO - Combining all records into file ./output/sip_sample_data_output.csv

那么,我在这里缺少什么?

更新

在配置logback后,我发现如果我使用XML配置文件,ThresholdFilter会按预期工作.但是,我仍然想知道为什么它不能在groovy配置文件中工作.

解决方法

解决问题的方法如下:在“logback.groovy”的开头添加类ThresholdProvider的导入:

import ch.qos.logback.classic.filter.ThresholdFilter

那么它按预期工作.

我在一个简单的项目中尝试提供的“logback.groovy”.还有一个问题:消息被写入控制台两次.我认为这可以通过微调“记录器”和“根”调用来修复.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读