Как я могу заставить Glassfish 3 регистрироваться, когда он возвращает HTTP 503, возвращает ошибку mod_jk, исчерпывает пул потоков или достигает предела соединения? - PullRequest
0 голосов
/ 16 апреля 2019

Я отвечаю за поддержку устаревшего приложения, работающего на Glassfish.Точная версия - «GlassFish Server Open Source Edition 3.1.2.2 (сборка 5)».

У меня есть два других приложения, взаимодействующих со Glassfish, которые сообщают об ошибках «недоступен сервис» в следующих формах:

  • Apache с отчетами mod_jk errno=110
  • Directвызовы API-интерфейса SOAP из другого приложения, которое направляет напрямую в Glassfish отчеты HTTP 503 «исключение службы недоступно»

Общий совет для этих ошибок заключается в том, что приложение плохо настроено или занято или просто нетразвертывается.Мне нужно больше информации, чтобы определить, на каких аспектах приложения или хостинга Glassfish я должен сосредоточиться в первую очередь.

Журналы приложений в server.log для приложения, работающего в Glassfish, выглядят исправными.Они не регистрируют какие-либо исключения или неисправности.Журналы доступа Glassfish также выглядят здоровыми.Журналы доступа необычны тем, что они только регистрируют запросы, поступающие из пользовательского интерфейса через Apache + mod_jk, но не регистрируют вызовы SOAP UI.

Чтобы решить эту проблему, я думаю, что мне нужно увидеть файл журнала Glassfish, в котором сообщается об одном или нескольких из следующих действий:

  • Когда 503 или аналогичный «недоступен"или" Я занят "ошибка, возвращаемая вызывающей стороне
  • Когда достигается предел соединения
  • Когда исчерпан пул потоков

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

Есть ли у Glassfish такие возможности регистрации?Если да, то как я могу их включить?

Если Glassfish не имеет этих возможностей, какие еще варианты я должен рассмотреть, чтобы получить информацию о симптомах, которые я вижу?

Обновление # 3

У меня ведется регистрация уже неделю.Никаких подробностей, которые я могу видеть там.

Нам пришлось перезапустить службу по другим причинам.После перезагрузки проблема проясняется.Мне не нравятся профилактические перезапуски.

Update # 2

Я думаю, что мне нужно больше регистрации от Grizzly.На основе этого SO потока Grizzy контролирует HTTP-соединения, а затем передает их GF.Поэтому, если я получаю 503, которая не попадает в журналы моего приложения, она должна быть получена от Grizzly.Предполагая, что мое понимание верно, как я могу заставить Grizzy регистрировать, когда он возвращает 503?

Обновление # 1

Я включил мониторинг для пулов потокови службы http.

Настройки мониторинга: Screenshot of Glassfish 3 monitoring settings

Статистика сервера: Screenshot of Glassfish 3 server monitoring statistics

Это статистика для прослушивателя HTTP, который обслуживает мои веб-сервисы: Screenshot of Glassfish 3 http pool statistics

Я думаю, что страница статистики http pool говорит мне, что у меня было довольно много подключений в очереди и чтоМне нужно увеличить размер пула http-соединений, но не пул потоков.

...