当前位置: 首页 > 知识库问答 >
问题:

Logback/Weblogic如何设置不同的日志级别?

步博艺
2023-03-14

我使用的是WebLogic10.3.6,我不能用给定的logback.xml为2个不同的追加器(com.my&root)控制不同的日志级别,我只希望文件追加器有跟踪级别,而在Weblogic终端下没有任何跟踪级别。问题是我在这两个方面得到相同的输出。

<?xml version="1.0" encoding="UTF-8"?>

<!-- For assistance related to logback-translator or configuration  -->
<!-- files in general, please contact the logback user mailing list -->
<!-- at http://www.qos.ch/mailman/listinfo/logback-user             -->
<!--                                                                -->
<!-- For professional support please see                            -->
<!--    http://www.qos.ch/shop/products/professionalSupport         -->
<!--                                                                -->
<configuration>
    <contextName>myContx</contextName>
    <jmxConfigurator />
    <appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
        <!--See also http://logback.qos.ch/manual/appenders.html#RollingFileAppender-->
        <File>/var/log/a.log</File>
        <encoder>
            <pattern>%d{HH:mm:ss.SSS} %5p %c{1}:%L - %m%n</pattern>
        </encoder>
        <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
            <maxIndex>1</maxIndex>
            <FileNamePattern>/var/log/a.log.%i</FileNamePattern>
        </rollingPolicy>
        <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
            <MaxFileSize>1MB</MaxFileSize>
        </triggeringPolicy>
    </appender>
    <appender name="out"
              class="ch.qos.logback.core.ConsoleAppender">
        <layout class="ch.qos.logback.classic.PatternLayout">
            <pattern>%-4relative [%thread] %-5level %class - %msg%n</pattern>
        </layout>
    </appender>


    <logger name="com.my" level="trace">
        <appender-ref ref="file" />
    </logger>
    <root level="off">
        <appender-ref ref="out" />
    </root>
</configuration>

共有1个答案

苏凯
2023-03-14

我想说设置可加性标志会对您有所帮助:

xml prettyprint-override"><logger name="com.my" level="trace" additivity="false">
    <appender-ref ref="file" />
</logger>

参见http://logback.qos.ch/manual/configuration.html#overrridingcumulativity。

 类似资料:
  • 我在我的应用程序中使用Jetty http客户端。我也在使用带有logback的SLF4J。 如何将Jetty的总体日志记录级别设置为Info?

  • 我有一个多线程Java应用程序,每个线程都是一个扩展基类的类。其中一个线程偶尔会给基类中的一个方法大量机器生成的数据,而其他线程只给出少量的人类类型数据。我想在比机器数据更高的日志级别上记录这些人类类型的消息,但是由于基类是所有线程的一部分,我无法在代码中区分出来。 一种解决方案是通知扩展类中的基类在不同的级别上登录,但是我必须将这些知识硬编码到应用程序中,这很难看。 我想做的是通过我的logba

  • 问题内容: 除了将日志记录级别设置为,我想使用默认的SLF4J + Logback配置。 我该如何使用Java代码呢? 我没有使用XML,而是在运行时做出此决定。 问题答案: 以下内容对我有用,但通常这不是一个好主意。您的代码将取决于Logback(您不能在SLF4J之后选择另一个日志框架)。

  • 我最近将应用程序从log4j更改为logback/slf4j。一切都工作得很好,但我想实现一些具体的东西。 我正在开发的应用程序是一个web应用程序。在我们的生产环境中,日志级别是on info。不时有票进来让我们的服务团队处理。如果我们的服务团队在复制票据时,他们可以将日志级别放在跟踪上,只用于他们的测试请求,那就太好了。这样,日志文件就不会随着当时所有其他请求的到来而被修改。 我们已经使用标头

  • 如何编写一个简单的log4j2.xml文件,将不同级别的日志放入不同的文件中? 例如,我们有错误日志,任何信息日志,我需要将所有错误日志消息推入一个日志文件,所有信息日志消息推入另一个文件。 我怎么做?

  • 我想添加新的日志文件MyNewLog.log,我不想在不影响现有日志的情况下,在不同的环境中使用不同的日志级别。dev环境和prod环境的级别在下面的描述中提到: 用于开发环境 级别错误处于活动状态 级别信息处于活动状态 级别调试处于活动状态(开发人员的默认级别) 我添加了一个新的appendermyNewLog,并将默认级别设置为DEBUG,然后创建了一个名为myNewLog的3个记录器,每个记