Я просмотрел несколько статей здесь, таких как:
дамп стека Java в Windows
Дамп потока программно / JDI (интерфейс Java Debugger Interface) Но не уловил точного ответа.
Проблема: в Windows есть приложение Java5, которое работает как служба (поэтому у нас нет консоли, где мы можем использовать Ctrl + Break длясбросы).Иногда приложение зависает, и нам нужен дамп потока.
Мы попробовали "jstack" , но он не работает в нашей среде env (мы обнаружили, что его Java6 совместима).
Итак, мы создали приложение C ++,вызывает дамп потока через .dll метод вызова, присоединяющийся к процессу приложения Java, и из-за этого ему нужны права локального администратора, что не так хорошо.
Поэтому нам бы хотелось, чтобы другие параметры работали без прав администратора и работали с Java 5 без большого количества переделок существующего кода.
Метод с печатью в дампах потоков LOOP (Thread.getAllStackTraces())
невариант, потому что нам нужно провести рефакторинг многих приложений, чтобы заставить его работать.
Так что лучшим вариантом будет только утилита, которая работает "вне" приложений.
Заранее спасибо!