java - Equinox 中的 Sling 日志记录配置

标签 java osgi logback equinox sling

我正在尝试在 Equinox 项目中使用 Apache Sling 日志记录。它工作正常,但我无法让 Sling 使用我的配置文件。我正在使用标准的 logback 配置 xml,它应该根据 Sling documentation 工作.但无论我将配置文件放在哪里,Sling 都不会使用它。

我的logback配置如下:

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

  <appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
    <!-- encoders are assigned the type
         ch.qos.logback.classic.encoder.PatternLayoutEncoder by default -->
    <encoder>
      <pattern>%d{dd.MM.yyyy HH:mm:ss.SSS} *%level* [%thread] %logger %message%n</pattern>
    </encoder>
  </appender>

  <root level="debug">
    <appender-ref ref="CONSOLE" />
  </root>
</configuration>

最佳答案

我设法让 Sling 使用我的配置文件的唯一方法是将配置文件的位置作为 VM 参数传递,如下所示:-Dorg.apache.sling.commons.log.configurationFile=/path/to/logbackconfigfile,其中路径是配置文件位置的完整路径。不幸的是,我还没有设法让它与相对路径一起工作。

关于java - Equinox 中的 Sling 日志记录配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32138683/

相关文章:

java - 我们如何在运行时更新OSGI中的任何捆绑软件

java - 带 logback 的行号

logging - Logback中的标记

java - CPLEX 目标函数错误

java - 使用 Collections.sort 和 SizeFileComparator 对 ArrayLlist<File> 中的 File 对象进行排序

java - 如果 ID 不需要按时间升序,为什么 OSGi 会选择 ID 最低的服务?

apache - 要使用 ServiceMix,我的项目必须是 OSGi 包吗?

java - 在 groovy 中使用 Logback 和 RollingFilePolicy

java - onNotificationPosted 一段时间后没有被调用

java - 输入字符串压缩为字符串