如何在 zookeeper 中使用 Logback 而不是 log4j?

How to use Logback in zookeeper instead of log4j?

Zookeeper 文档说可以使用 LOGBack 作为日志框架。我想知道步骤,如何在 zookeeper 而不是 loj4j 中设置 logback?

对于 Gradle 配置的项目,我已经成功地使用了这个:

dependencies {
    compile(group: 'org.apache.zookeeper', name: 'zookeeper', version: '3.4.10') {
        exclude group: 'log4j'
        exclude group: 'org.slf4j', module: 'slf4j-log4j12'
    }
    compile group: 'org.slf4j', name: 'slf4j-api', version: '1.7.25'
    runtime group: 'ch.qos.logback', name: 'logback-classic', version: '1.2.3'
}

对于 Maven 项目:

在pom.xml

中添加以下依赖
<dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-api</artifactId>
        <version>2.0.0-alpha0</version>
    </dependency>
    <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-classic</artifactId>
        <version>1.3.0-alpha5</version>
    </dependency>

logback.xml

中为 Zookeepr 日志添加记录器和追加器
<appender name="FILE" class="ch.qos.logback.core.FileAppender">
    <file>/var/log/zk-app.log</file>
    <encoder>
        <pattern>%date %level [%thread] %logger{10} [%file:%line] %msg%n</pattern>
    </encoder>
    <append>true</append>
</appender>
<logger name="org.apache.zookeeper" level="DEBUG" additivity="false">
    <appender-ref ref="FILE" />
</logger>