Установить местоположение файла журнала на основе ОС в весенней загрузке application.properties/.yml - PullRequest
0 голосов
/ 14 мая 2018

Мне интересно, есть ли хороший чистый способ задания местоположения регистрации в зависимости от ОС, просто используя файл application.properties в Spring Boot?

Например, можно ли использовать сопоставление регулярных выражений в $ {os.name} или мне просто нужно пойти дальше и создать отличный сценарий или что-то в этом роде?

Мое идеальное решение - что-то вроде

logging:
  file:  ${os.name}.test(/*window*/gi) ? C:/ProgramData/Logs/ : /var/log/

1 Ответ

0 голосов
/ 15 мая 2018

Вы можете воспользоваться пружинными профилями и выбрать конфигурации в соответствии с системным свойством -Dspring.profile.active=some_profile или переменной SPRING_PROFILES_ACTIVE=some_profile env.Файл Yaml может быть

# a safe default relative to app root
logging:
     file: logs 

----

spring:
    profiles: nix
logging:
     file: /var/log/myapp

----


spring:
    profiles: win
logging:
     file: C:/ProgramData/Logs/

Приложение выполняется как

java -Dspring.profile.active=nix <more opts> MyAppMain

или также:

SPRING_PROFILES_ACTIVE=nix java <more opts> MyAppMAin
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...