Непрерывное профилирование с помощью async-profiler. Создать тепловую карту для нескольких JFRJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Непрерывное профилирование с помощью async-profiler. Создать тепловую карту для нескольких JFR

Сообщение Anonymous »

tl;dr: я пытаюсь создать единую дневную тепловую карту, объединив несколько почасовых файлов JFR из функции непрерывного профилирования async-profiler. Когда я передаю несколько файлов в jfrconv, выходные данные содержат только данные из последнего предоставленного файла. Есть ли правильный способ объединить их в единую ежедневную тепловую карту?
Полная версия:
Использует ли кто-нибудь новую функцию непрерывного профилирования в async-profiler? Недавно я узнал, что из файла JFR можно создать тепловую карту.
Я включил профилирование для своего приложения с помощью следующей команды:

Код: Выделить всё

-agentpath:/path/to/async-profiler-4.0-linux-x64/lib/libasyncProfiler.so=start,event=cpu,alloc=2m,loop=1h,file=profile-%%t.jfr
это генерирует серию файлов для каждого часа работы моего приложения, например:
  • profile-20251010-180649.jfr
  • profile-20251010-190649.jfr
  • profile-20251010-200649.jfr
  • .... и так далее...
Я могу преобразовать один файл в тепловую карту, и это работает нормально, но в результате получается тепловая карта только на один час:

Код: Выделить всё

jfrconv -o heatmap ./profile-20251010-190649.jfr /tmp/heatmap.html
Моя цель — создать единую тепловую карту из всех файлов профиля *.jfr за целый день.
Выходные данные jfrconv --help говорят, что разрешено использование нескольких входных файлов:

Код: Выделить всё

Usage: jfrconv [options]  [...] 
Однако, когда я попытался запустить его с несколькими файлами:

Код: Выделить всё

$ jfrconv -o heatmap profile-20251010-180649.jfr profile-20251010-190649.jfr  /tmp/heatmap.html
Converting profile-20251010-180649.jfr -> heatmap.html # 0.186 s
Converting profile-20251010-190649.jfr -> heatmap.html # 0.109 s
Хотя инструмент сообщает, что он преобразовал оба входных файла, результирующая тепловая карта содержит данные только из последнего файла (

Код: Выделить всё

profile-20251010-190649.jfr
).
Это ожидаемое поведение? Я также был бы признателен за любые советы о том, как правильно использовать эту функцию в рабочей среде.

Подробнее здесь: https://stackoverflow.com/questions/797 ... veral-jfrs
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»