Вы должны добавить библиотеку Google в свой пакет развертывания. В зависимости от процесса развертывания, существуют разные способы, как это сделать. Документация является хорошим местом для начала изучения этого.
Кстати, вместо речи Google к тексту вы можете использовать один из AWS под названием Транскрибировать . Вам не нужно устанавливать дополнительную библиотеку, чтобы использовать это, boto3
подойдет.
Вы рассматривали удаленную альтернативу? Т.е. VisualVM
jps и jstack являются также полезными инструментами, включенными в JDK 5, предоставляя быстрый метод командной строки для получения отслеживаний стека всех текущих потоков.
Эта статья предполагает, что JDI также используется в качестве удаленного инструмента.
Таким образом, я не уверен, что Вы можете инициировать дамп потока в рамках своей собственной программы, вместо этого Вы находите способ отправить себе сигнал SIGQUIT (уничтожьте-3) на платформах Unix, или нажимают клавишу Ctrl-\на Unix или Ctrl-Break на платформах Windows.
Плюс, JDI не был предназначен, чтобы использоваться для отладки того же процесса, в котором работает клиент JDI. Все еще этот поток, с которым я просто связался, является самым близким, я нашел для фактического использования JDI в рамках той же программы.
Существует третий путь: Thread.getAllStackTraces ()
http://java.sun.com/javase/6/docs/api/java/lang/Thread.html#getAllStackTraces ()
Это намного легче, чем интерфейс отладчика...
Можно получить примерно всю информацию о Потоке, в которой Вы нуждаетесь включая мертвые блокировки из http://java.sun.com/javase/6/docs/api/java/lang/management/ThreadMXBean.html
Thread.getAllStackTraces () выводит только трассировку выполнения всех потоков, но не дает информацию объектных блокировок, которые были получены особым потоком или блокировкой, на которой ожидал особый поток. В основном мы не сможем закрепить мертвые блокировки с этим.