Weblogic server 10.0 - Завершение работы управляемого сервера - PullRequest
1 голос
/ 18 марта 2010

У нас есть weblogic сервер 10.0 экземпляр, который имеет cluster с одним managed server. Каждый понедельник в 5 часов утра (или через несколько секунд) он отключается самостоятельно. В журналах не отображаются ошибки, кроме следующего сообщения:

JVM called WLS shutdown hook. The server will force shutdown now.

JVM имеет опцию -Xnohup и использует JRockit. На сервере нет работы cron. Я не уверен, как отладить этот. Сервер администрирования продолжает работать без проблем, и я могу без проблем запустить резервное копирование управляемого сервера. Любая помощь с благодарностью.

Обновление:
Я пытался использовать -Djrockit.waitonerror, но JVM не делает паузу. Я также вижу следующее «паническое» сообщение в журнале либо непосредственно перед, либо за несколько минут до этого. CharScanner; panic: ClassNotFoundException: org.antlr.stringtemplate.language.ChunkToken. Выглядит так во время какого-то диагностического прогона:

<Diagnostics> <BEA-320140> <Scheduling data retirement tasks as per configuration.>

Спасибо.

Ответы [ 2 ]

2 голосов
/ 23 марта 2010

Конфликт с версией antlor weblogic и используемой в развернутом приложении (война). Включил эту войну в файл ear и поместил файл weblogic-application.xml в META-INF со следующим:

<weblogic-application xmlns="http://www.bea.com/ns/weblogic/90" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">      
<prefer-application-packages>
    <package-name>antlr.*</package-name>
</prefer-application-packages> 

2 голосов
/ 18 марта 2010

Поскольку вы используете опцию -Xnohup, JVM, скорее всего, не получает сигнал ОС. Тем не менее, что-то вызывает отключение (и тот факт, что это происходит через очень регулярные промежутки времени, предполагает автоматизированный процесс).

Попробуйте применить второе предложение этого сообщения в блоге (я думаю, что это на самом деле исходит от поддержки):

Если проблема повторяется даже после попытки вышеуказанного варианта, то можно пожалуйста, примените следующее JAVA_OPTION:

  • В зависимости от версии JVM может быть возможно получить дамп потока до выхода из процесса

    • HotSpot поддерживает параметр командной строки -XX:+ShowMessageBoxOnError

    • Соответствующая опция JRockit: -Djrockit.waitonerror

    • Когда JVM выходит из строя, он может запросить у пользователя: «Хотите отладить проблема? "

    • Это останавливает JVM, создавая тем самым возможность генерировать дамп потока (трассировка стека каждого поток в JVM), присоедините отладчик, или выполнить другую отладку активность.

Чтобы сгенерировать дамп потока, я думаю, вам придется удалить опцию -Xnohup (это не должно быть проблемой, поскольку это не помогает). Это действительно поможет анализу.

Также откройте кейс, поддержка может иметь больше информации по этому вопросу (вы не единственный, кто столкнулся с этой проблемой, см. Упомянутые темы ниже).


На всякий случай взгляните на Автоматическое отключение WebLogic Server (какой-нибудь сторожевой процесс OOMKiller запущен?) И JVM, называемый ловушкой отключения WLS. Сервер принудительно завершит работу .

...