如何禁用Crawler4J日志记录器?

3

我正在使用Crawler4J进行网页爬取。

我不想打印日志信息。

但是Crawler4J内置了一个记录器(logger)。

如何禁用Crawler4J库中的记录器?

2个回答

4
Crawler4J使用slf4j API和logback作为实现。之前有一个问题,即将logback.xml文件放在构建的jar包内,这个问题已经被修复了。
请确保您使用的是最新版本,且crawler4j jar包内没有logback.xml文件。
您可以通过提供自己的logback.xml文件并将级别设置为OFF来禁用日志记录,就像这个问题一样。

请看下面我的建议扩展编辑答案。 - djp3

0

Crawler4J使用slf4j API和logback作为实现。曾经有一个问题,即将logback.xml文件放在构建jar包内,但已经解决。

请确保您拥有最新版本,并且不要在crawler4j jar包中包含logback.xml文件。

您可以通过提供级别设置为OFF的自己的logback.xml文件来禁用日志记录。此文件应放置在maven项目的src/main/resources目录中。以下示例是默认情况下由slf4j提供的,但输出已关闭:

<configuration>
    <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
        <!-- encoders are assigned the type ch.qos.logback.classic.encoder.PatternLayoutEncoder by default -->
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n
            </pattern>
        </encoder>
    </appender>

    <root level="OFF">
        <appender-ref ref="STDOUT" />
    </root>
</configuration>

(这实际上是对Amr ElAdawy的扩展编辑建议,但我的编辑更正被拒绝了)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接