Pytanie Jak używać zmiennych środowiskowych systemu w pliku log4j.properties?


Dodałem wartość środowiska systemowego PROJECT_HOME = C: \ Program Files \ Project

Teraz próbuję użyć wartości środowiska systemowego w pliku log4j.properties, ale jej nie ustawiłem

**log4j.properties**
**log4j.appender.LOGFILE.File="${env.PROJECT_HOME}"/project.log**

Czy mógłbyś mi powiedzieć, jak ustawić systemowe zmienne środowiskowe w log4j.properties?

Korzystanie z wersji log4j-1.2.7


11
2018-03-10 09:24


pochodzenie


Jaka jest twoja wersja log4j? Tylko log4j 2 obsługuje to? Zobacz dokumentację: logging.apache.org/log4j/2.x/manual/lookups.html - Jayan
Jakiekolwiek powody, dla których warto zostać w wersji 1.x? Wersja 2 będzie szybsza i bardziej niezawodna. - Leos Literak
W przypadku log4j 1.2.x, zobacz akceptowaną odpowiedź na to pytanie: stackoverflow.com/questions/13066042/... - aff


Odpowiedzi:


Jest to obsługiwane przez EnvironmentLookup w log4j - 2. Zobacz przykłady.

Posługiwać się ${sys:PROJECT_HOME} zamiast ${env.PROJECT_HOME}


9
2018-03-10 09:29



próbowałem go użyć, ale nie mogę wygenerować pliku dziennika. - deepaksharma
Możesz być bardziej dokładny? Co to znaczy "nie można wygenerować"? Czy jest stworzony, czy nie? Czy jest jakiś wyjątek? Jaki jest twój projekt - prosta aplikacja java / web? - Leos Literak
@ Leos Literak: czy możesz wskazać odpowiednią dokumentację na log4j? Nie wiedziałem, że log4j próbuje odczytać zmienne środowiskowe. - Jayan
@Jayan See logging.apache.org/log4j/2.x/manual/configuration.html, wyszukaj sys :. Mam problem z ich dokumentem, aby uzyskać wszystkie informacje / składnię. Musisz tam go szukać. - Leos Literak
Szukałem tej odpowiedzi ponad godzinę! Dobrze wiedzieć, różnice między wersjami ... - Bartis Áron