Назад | Перейти на главную страницу

Как изменить каталог журнала сервера JBoss EAP 6.4 с именем сервера в пути?

У меня есть две JVM (server1 и server2), работающие на одной машине Linux. & Я хочу переместить журналы из каталога по умолчанию в пользовательский каталог для каждой JVM.

Что-то вроде -

/data/logs/$JVM_NAME/

так что финальные журналы попадают в каталоги вроде

/data/logs/server1/
&
/data/logs/server2/

Я узнал, что переменная jboss.server.log.dir может быть установлена ​​в аргументах запуска сервера. Затем я попробовал следующую команду запуска.

nohup sh /appl/isaac/jboss/jboss-eap-6.4/bin/domain.sh -b some.server.domain.com -bmanagement some.server.domain.com -Djboss.domain.log.dir=/data/logs -Djboss.server.log.dir=/data/logs/ > /tmp/domain.out 2>&1 &

Это нормально работает. И журналы записываются в /data/logs/.

Но я не уверен, как добавить переменную в эти аргументы, чтобы добавить еще один подкаталог с именем JVM для каждой JVM на этом компьютере. Так что журналы записываются в /data/logs/$JVM_NAME/.

Значением свойств log.dir должен быть полный путь к месту, где вы хотите хранить журналы.

Для запуска из командной строки вы можете:

export JVM_NAME="server1"; nohup sh /appl/isaac/jboss/jboss-eap-6.4/bin/domain.sh -b some.server.domain.com -bmanagement some.server.domain.com -Djboss.domain.log.dir=/data/logs/$JVM_NAME -Djboss.server.log.dir=/data/logs/$JVM_NAME > /tmp/domain.out 2>&1 &

Однако для автоматического запуска нескольких серверов с использованием переменной для каждого сервера обычно это делается в EAP_HOME / bin / standalone.conf или EAP_HOME / bin / domain.conf для каждого экземпляра.

JVM_NAME="server1"
JAVA_OPTS="$JAVA_OPTS -Djboss.domain.log.dir=/data/logs/$JVM_NAME -Djboss.server.log.dir=/data/logs/$JVM_NAME" 

Я предполагаю, что здесь у вас есть отдельные конфигурации для двух работающих серверов.

Не уверен, что вам действительно нужно установить и domain.log.dir, и server.log.dir, я предполагаю, что domain.log.dir используется при работе в режиме домена.