首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在OnMarkerEvaluator过滤器中使用通配符或正则表达式

在OnMarkerEvaluator过滤器中使用通配符或正则表达式
EN

Stack Overflow用户
提问于 2016-04-27 19:14:53
回答 1查看 931关注 0票数 2

我正在尝试编写一个接受来自logstash-logback-encoder的所有标记的附加器

我已经使用logback 1.0.7logstash-logback-encoder 4.6尝试了以下操作

代码语言:javascript
复制
<appender name="LOGSTASH" class="ch.qos.logback.classic.sift.SiftingAppender">
    <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
        <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
            <!-- Accept only Markers from logstash-logback-encoder -->
            <marker>LS_*</marker>                
        </evaluator>
        <onMatch>ACCEPT</onMatch>
        <onMismatch>DENY</onMismatch>
    </filter>

……

然而,它并不起作用。似乎没有任何内容进入此附加器。

下面的滤波器工作位相当繁琐

代码语言:javascript
复制
    <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
        <!-- Accepts only Markers from logstash-logback-encoder -->
        <marker>LS_MAP_FIELDS</marker>
        <marker>LS_OBJECT_FIELDS</marker>
        <marker>LS_APPEND_</marker>
        <marker>LS_APPEND_OBJECT</marker>
        <marker>LS_APPEND_RAW</marker>
    </evaluator>
EN

回答 1

Stack Overflow用户

发布于 2017-07-16 04:55:17

参考OnMarkerEvaluation的代码,它不可能实现与其当前实现的通配符或正则表达式匹配。但另一种解决方案是实现您自己的EventEvaluatorBase,如下所示:

代码语言:javascript
复制
package com.apple.paymentgateway.hostsimulator;

import org.slf4j.Marker;

import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.core.boolex.EvaluationException;
import ch.qos.logback.core.boolex.EventEvaluatorBase;

public class CustomEvaluator extends EventEvaluatorBase<ILoggingEvent> {

    @Override
    public boolean evaluate(ILoggingEvent event) throws NullPointerException, EvaluationException {
        Marker eventsMarker = event.getMarker();
        return eventsMarker.getName().startsWith("LS_");
    }

}

这只是一个针对您的特定情况的示例,可以进一步定制和推广。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36888163

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档