如何更改Kaa客户端的日志级别

How to change log level of Kaa client

我一直在关注 Kaa 提供的教程(谢谢!)和文档。我在 java 开发了一个 kaa-client,它运行良好并且已经部署。 但是,它确实非常冗长。它对调试和其他东西很有用,但现在它正在创建一个巨大的日志。有没有办法避免针对特定 类 和包的信息消息——比如“org.kaaproject.kaa.client.channel.impl.*

要为 kaa 日志配置特定级别,您应该配置适当的 log-schema 文件。默认为 logback.xml。 例如,对于 Data Collection Demo 的 Java 来源,日志模式是:JDataCollectionDemo/res/logback.xml 要避免特定 类 或包的 INFO 消息,只需将具有错误级别的适当行添加到架构中,例如:

<logger name="org.kaaproject.kaa.client.channel.impl" level="ERROR"/>

在这种情况下,完整的日志架构将是:

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

         Copyright 2014-2016 CyberVision, Inc.

         Licensed under the Apache License, Version 2.0 (the "License");
         you may not use this file except in compliance with the License.
         You may obtain a copy of the License at

              http://www.apache.org/licenses/LICENSE-2.0

         Unless required by applicable law or agreed to in writing, software
         distributed under the License is distributed on an "AS IS" BASIS,
         WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
         See the License for the specific language governing permissions and
         limitations under the License.

    -->

    <configuration>
        <appender name="console" class="ch.qos.logback.core.ConsoleAppender">
            <encoder>
                <pattern>%d{ISO8601} [%thread] %-5level %logger{36} - %msg%n</pattern>
            </encoder>
        </appender>

        <appender name="fileLogAppender" class="ch.qos.logback.core.rolling.RollingFileAppender">
            <file>kaa-desktop-client.log</file>
            <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
                <fileNamePattern>logFile.%d{yyyy-MM-dd}.log</fileNamePattern>
                <maxHistory>30</maxHistory>
            </rollingPolicy>
            <encoder>
                <pattern>%d{ISO8601} [%thread] %-5level %logger{36} - %msg%n</pattern>
            </encoder>
        </appender>

        <root level="INFO">
            <appender-ref ref="console"/>
            <appender-ref ref="fileLogAppender"/>
        </root>

        <logger name="org.kaaproject.kaa" level="ERROR"/>
        <logger name="org.kaaproject.kaa.client.logging.memory" level="INFO"/>
        <logger name="org.kaaproject.kaa.demo.datacollection" level="INFO"/>
        <logger name="org.kaaproject.kaa.client.channel.impl" level="ERROR"/>
    </configuration>

也可以更改沙盒中日志的日志级别: 对于 /var/log/kaa/kaa-node.log/var/log/kaa/kaa-sandbox.log,相应的日志模式文件是:/usr/lib/kaa-node/conf/logback.xml/usr/lib/kaa-sandbox/conf/logback.xml 在沙盒日志模式配置适当的服务后应该重新启动:

sudo service kaa-node restart
sudo service kaa-sandbox restart