Как эффективно реализовать анализатор дампов стека Java? - PullRequest
0 голосов
/ 01 марта 2019

У меня есть требование, где мне нужно проанализировать файл дампа jStack, чтобы получить количество потоков, находящихся в разных состояниях. ( Runnable / Sleeping / Waiting ...) В настоящее время я реализовал таким образомтакой, что мой анализатор построчно анализирует файл jStack для поиска соответствия шаблону.

Например:

Pattern THREAD_RUNNING_PATTERN = Pattern.compile ("\" (?: Рабочий банды | VM | Одновременная разметка). runnable | java \ .lang \ .Thread \ .State: \ s RUNNABLE ");

Это одинмоего шаблона, чтобы соответствовать потокам, которые находятся в состоянии runnable .

Есть ли лучший способ реализовать это вместо анализа построчно или у нас есть какие-либо библиотеки Java, которые могутиспользоваться?

...