Java 使用自定义的详细级别配置log4j
我想用自定义的详细级别(比如350)配置log4j.xml,以便打印到某个详细级别,并包括将在这个新级别(350)上打印的遥测数据。 我的档案有什么错误/遗漏Java 使用自定义的详细级别配置log4j,java,log4j,Java,Log4j,我想用自定义的详细级别(比如350)配置log4j.xml,以便打印到某个详细级别,并包括将在这个新级别(350)上打印的遥测数据。 我的档案有什么错误/遗漏 我还不知道如何调用记录器来附加消息。有一个方法日志(Level-Level,String-message),它获取一个级别,以便它可以工作-我还无法检查它。您试图记录的内容与您期望的不一样(向我们展示如何获取记录器和log语句)。请注意,您的自定义级别介于警告和信息之间。谢谢,这是我想要的级别。请参阅主帖子中的更新部分。您试图记录的内
我还不知道如何调用记录器来附加消息。有一个方法日志(Level-Level,String-message),它获取一个级别,以便它可以工作-我还无法检查它。您试图记录的内容与您期望的不一样(向我们展示如何获取记录器和log语句)。请注意,您的自定义级别介于警告和信息之间。谢谢,这是我想要的级别。请参阅主帖子中的更新部分。您试图记录的内容与预期不符(向我们展示如何获取记录器和log语句)。请注意,您的自定义级别介于警告和信息之间。谢谢,这是我想要的级别。请参阅主要帖子中的更新部分
<!--print logs of telemetry, warning and above -->
<CustomLevels>
<CustomLevel name="telemetryLevel" intLevel="350"/>
</CustomLevels>
<Appenders>
<Console name="Console" target="SYSTEM_OUT">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
</Console>
<RollingFile name="deviceTelemetry" fileName="/home/device/telemetry-${date:yyyy-MM-dd}.log" append="false"
filepattern="/home/device/telemetry-${date:yyyy-MM-dd}-%i.log">
<PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
<Policies>
<OnStartupTriggeringPolicy />
<SizeBasedTriggeringPolicy size="10M"/>
</Policies>
<DefaultRolloverStrategy max="5"/>
</RollingFile>
</Appenders>
<Loggers>
<Logger name="deviceTelemetry" level="telemetryLevel">
<AppenderRef ref="deviceTelemetry"/>
</Logger>
<Root>
<AppenderRef ref="Console" level="trace"/>
</Root>
</Loggers>
Logger log = LogManager.getLogger("deviceTelemetry");