Регистратор полета Java программно разбирает
Я пытаюсь разобрать дамп JFR с помощью JAVA. Я следил за этим блогом, http://hirt.se/blog/?p=446. Но эти методы устарели сейчас. Есть ли поддерживаемые парсеры для JFR в JAVA? Если нет, можете ли вы указать мне, возможно ли получить данные из дампа JFR?
2 ответа
Как упоминала Клара, официально поддерживаемого парсера не существует. Надеемся, что синтаксический анализатор JFR будет официально поддерживаться в JDK 9. На данный момент вы можете использовать API, упомянутые в блоге Hirt. Не беспокойтесь о тех, кого осуждают.:)
Я успешно использовал анализатор JFR в своем проекте jfr-flame-graph. Обратите внимание, что мой проект использует Maven, а парсеры JFR недоступны в Maven Central (или любом другом хранилище). Поэтому "Шаг 1" в README важен, и он будет копировать JAR-анализаторы JARR в локальный репозиторий, и вы можете использовать эти JAR-файлы в качестве зависимостей в вашем pom.xml.
Надеюсь, это поможет.
В настоящее время нет поддерживаемого парсера. Однако есть много людей как внутри, так и вне Oracle, которые довольно успешно используют парсеры, упомянутые в этом посте.
Возможно, в будущем будет поддерживаемый синтаксический анализатор, безусловно, будут внесены изменения в синтаксический анализатор, я просто не уверен, будет ли он "поддерживаться" или нет. Но код, который вы сейчас пишете, должен прекрасно работать с записями полета JDK 7 и 8 и не будет работать с записями JDK 9.