Ich habe eine Spring-Boot-Anwendung. Es ruft log4j.properties von einem externen Speicherort in meinem Dateisystem ab. i Geben Sie diese Speicherort der Datei in meiner application.yml Datei:Spring Boot-Protokollierung mit log4j zu externen Datei mit freigegebenen, externen Log4j-Konfiguration
...
logging:
config: ${LOG_CONFIG_LOCATION}/log4j.properties
...
da die log4j.properties Datei von anderen Anwendungen gemeinsam genutzt werden, in es, ich kann nicht
...
log4j.appender.fileAppender.File=log_file_name.log
...
weil ... alle verwenden die Anwendungen würden auf die gleiche Datei log (wahrscheinlich nicht funktionieren b/c von io würde)
, was ich, tun möchte, ist die Anwendung des Namens in der application.yml Datei angegeben nutzen:
...
spring:
application:
name: my_foo_application
...
und setzen Sie die Protokolldateinamen und Speicherort an
${LOG_FILES_LOCATION}/services/${spring.application.name}/${spring.application.name}.log
Ich habe versucht, dies in der application.yml Datei:
spring:
application:
name: my_foo_application
logging:
config: ${LOG_CONFIG_LOCATION}/log4j.properties
file: ${LOG_FILES_LOCATION}/services/${spring.application.name}/${spring.application.name}.log
dies keine Wirkung hatte - ich sehe nicht die Protokolldatei in Der Ort, den ich erwarte.
i auch die 'logging.file ....' in application.yml & hat dieses Bild in die Datei log4j.properties auf Kommentar:
log4j.appender.fileAppender.File=${LOG_FILES_LOCATION}/services/${spring.application.name}/${spring.application.name}.log
es auch (nicht überraschend) hatte keine Wirkung
Wie kann dies erreicht werden?