自定义logback appender的自定义列表属性

时间:2015-04-12 20:08:15

标签: logback appender

我想为InfluxDB创建一个自定义LogBack Appender。 为此,我想定义许多系列并使用logback的功能

<appender name="INFLUXDB" class="org.labaix.logback.InfluxDbAppender">
   <series>
     <serie>
        <id>SensorTemperatureMonthly</id>
        <name>machine.%X{machine}.type.%X{type} temperature_${byMonth}</name>
        <timeUnit>MILLISECONDS</timeUnit>
     </serie>
     <serie>
        <id>SensorTemperatureDaily</id>
        <name>machine.%X{machine}.type.%X{type} temperature_${day}</name>
        <timeUnit>MILLISECONDS</timeUnit>
     </serie>
   </series>
</appender>

因此我不知道如何映射系列列表。 有任何想法吗 ?它不在文档中,所以我想知道是否可能。

感谢。最好的祝福 尼古拉斯

1 个答案:

答案 0 :(得分:0)

我宁愿使用xml并使用JAXB对象来加载数据,而不是这种方法。您可以将配置文件xml路径作为参数传递

<appender name="INFLUXDB" class="org.labaix.logback.InfluxDbAppender">
   <configFilePath>configFilePath.xml</configFilePath>
</appender>

配置文件

<root>
  <series>
     <serie>
        <id>SensorTemperatureMonthly</id>
        <name>machine.%X{machine}.type.%X{type} temperature_${byMonth}</name>
        <timeUnit>MILLISECONDS</timeUnit>
     </serie>
     <serie>
        <id>SensorTemperatureDaily</id>
        <name>machine.%X{machine}.type.%X{type} temperature_${day}</name>
        <timeUnit>MILLISECONDS</timeUnit>
     </serie>
   </series>
</root>