Загрузите конфигурации обратного входа в зависимости от среды с Scala Play2.5
Я хотел бы загрузить различные конфигурации обратного входа на основе переменной среды SCALA_ENV.
- если SCALA_ENV=PROD загрузить logback.xml
- если SCALA_ENV=dev загрузить logback-dev.xml
- если SCALA_ENV = тестовая загрузка logback-test.xml
- если SCALA_ENV=qa загрузить logback-qa.xml
Из документа Play2.5 я нашел этот пример, но он не ясен.
Также MyComponenets не решена, и компиляция не удалась.
2 ответа
Вот как я делаю это в моем build.sbt
файл:
// logback for Prod
javaOptions in Production += "-Dlogger.resource=logback.prod.xml"
// logback for testing
javaOptions in Test += "-Dlogger.resource=logback.test.xml"
Мой по умолчанию один - dev, который просто оставлен в месте по умолчанию.
Не идеальное решение, но я изменил файл -Dlogger.resource в зависимости от среды в build.sbt
lazy val logBackXml = sys.env("env").toLowerCase() match {
case "prod" => "-Dlogger.resource=logback.xml"
case "test" => "-Dlogger.resource=logback.test.xml"
case "qa" => "-Dlogger.resource=logback.qa.xml"
case _ => "-Dlogger.resource=logback.dev.xml"
}
javaOptions in Production += logBackXml