Установить / изменить свойства списка в application.properties в Akka

Я хочу использовать slf4j для ведения журнала, основываясь на документации doc. Эти настройки должны быть изменены в application.conf:

akka {
  loggers = ["akka.event.slf4j.Slf4jLogger"]
  logging-filter = "akka.event.slf4j.Slf4jLoggingFilter"
}

я использую application.properties вместо application.conf:

akka.loggers[0]=akka.event.slf4j.Slf4jLogger
akka.logging-filter=akka.event.slf4j.Slf4jLoggingFilter

Но выше конфиг не меняется akka.loggers значение (значение по-прежнему является значением по умолчанию: akka.event.Logging$DefaultLogger).

Печать всей конфигурации:

"loggers" : [
    # reference.conf @ jar:file:/home/user/.m2/repository/com/typesafe/akka/akka-actor_2.12/2.5.18/akka-actor_2.12-2.5.18.jar!/reference.conf: 17
    "akka.event.Logging$DefaultLogger"
],
# application.properties @ file:/home/user/workspace/x-platform/target/test-classes/application.properties
"loggers[0]" : "akka.event.slf4j.Slf4jLogger",
# application.properties @ file:/home/user/workspace/x-platform/target/test-classes/application.properties
"logging-filter" : "akka.event.slf4j.Slf4jLoggingFilter",

Итак, мой вопрос: как я могу установить / изменить значение для списка prpperty в application.properties?

Я использую акку 2.5.18 с Java.

0 ответов

Вы пробовали эту вещь parseString?

val customConf = ConfigFactory.parseString("""
      akka {
        loggers = ["akka.event.slf4j.Slf4jLogger"]
        logging-filter = "akka.event.slf4j.Slf4jLoggingFilter"
      }
      """)
val system = ActorSystem("MySystem", ConfigFactory.load(customConf))

или комбинируя пользовательский конфиг с обычным

Config myConfig =ConfigFactory.parseString("loggers=['akka.event.slf4j.Slf4jLogger']");
Config regularConfig = ConfigFactory.load();
Config combined = myConfig.withFallback(regularConfig);
Другие вопросы по тегам