apachestorm:自定义日志

5f0d552i  于 2021-06-21  发布在  Storm
关注(0)|答案(1)|浏览(414)

我想修改storms logback/cluster.xml,以便它根据id写入不同的文件。
查看需要更改cluster.xml并添加筛选附加器的信息。此处引用
主要问题是这是最好的/正确的方法吗?举个例子?
我需要补充:

MDC.put("userid", "Alice");
 logger.debug("Alice says hello");

示例帮助
例如,我似乎无法将其写入文件。我在类路径中使用默认的logback.xml。我不会传入参数并加载配置,因为我假设它会在类路径中找到。但是没有文件被写入?

<configuration>

<appender name="SIFT" class="ch.qos.logback.classic.sift.SiftingAppender">
    <!-- in the absence of the class attribute, it is assumed that the desired 
        discriminator type is ch.qos.logback.classic.sift.MDCBasedDiscriminator -->
    <discriminator>
        <key>userid</key>
        <defaultValue>unknown</defaultValue>
    </discriminator>
    <sift>
        <appender name="FILE-${userid}" class="ch.qos.logback.core.FileAppender">
            <file>$/Users/Stuart/Desktop/main.log</file>
            <append>false</append>
            <layout class="ch.qos.logback.classic.PatternLayout">
                <pattern>%d [%thread] %level %mdc %logger{35} - %msg%n</pattern>
            </layout>
        </appender>
    </sift>
</appender>

<root level="DEBUG">
    <appender-ref ref="SIFT" />
</root>
</configuration>
mjqavswn

mjqavswn1#

apachestorm不使用加载日志文件的默认进程。根据您使用的版本,它将
log4j log4j2 或者非常简短 logback 配置文件的目录。
您必须修改 cluster.xml 或者 worker.xml 或者两者兼有,以便获得要注册的配置。

相关问题