Как контролировать исключения Java извне?

Я пытаюсь внедрить систему метрик в реальном времени, которая отслеживает Java-приложения, работающие в среде докеров. У меня есть веб-приложение с весенней загрузкой, которое работает как внешний клиент, который опрашивает конечные точки привода весенней загрузки каждого из приложений в среде докеров, чтобы возвращать метрики, которые затем отправляются на внешний интерфейс в режиме реального времени через веб-сокеты, что работает хорошо.

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

В идеале я хочу практически не настраивать отслеживаемые приложения и собирать все эти данные об исключениях извне либо через REST, либо с помощью других средств, если он может отслеживать журналы/исключения приложений докеров в среде. Это связано с тем, что это противоречит цели, если вам нужно настроить каждое приложение, которое вы добавляете, для мониторинга, и я хочу, чтобы оно работало таким образом, чтобы вы могли просто запустить клиент сбора данных, и он начнет отслеживать все докеры приложения на определенном хосте для метрик/исключений.

Возможно ли это? Существуют ли какие-либо API-интерфейсы регистрации исключений Java с открытым исходным кодом, которые я мог бы использовать для сбора этих данных? Надеюсь, вопрос имеет смысл.

Спасибо!


person Martin McKeaveney    schedule 30.12.2015    source источник
comment
Итак, вы хотите использовать регистратор в стиле Syslog только тогда, когда вы получаете исключения?   -  person Makoto    schedule 30.12.2015
comment
Да, верно, когда в любом из приложений докеров выдается/обнаружено исключение, я бы хотел, чтобы данные об этом исключении передавались через веб-сокет и отображались во внешнем интерфейсе.   -  person Martin McKeaveney    schedule 30.12.2015
comment
я бы нашел способ инструментировать каждое приложение. я думаю, что они могут наблюдать за исключениями. если закодировано хорошо, должно иметь небольшое влияние на производительность. можно посмотреть агенты t java и pre main   -  person tgkprog    schedule 30.12.2015
comment
Посмотрите stackoverflow.com/questions/20282619/ не так просто, как хотелось бы — для работы требуется скопировать общий код и подключить его к приложению/контейнеру (например, tomcat или другому контейнеру/основному классу на уровне JVM).   -  person tgkprog    schedule 30.12.2015