#java #gradle
Вопрос:
Для анализа проблемы с производительностью при выполнении интеграционных тестов с JUnit мы пытаемся использовать бортовой самописец JDK с OpenJDK11. В тесте gradle для интеграционного теста мы добавили следующее:
if(project.hasProperty("withFlightRecorder")) {
// Run with flight recorder
jvmArgs("-XX: FlightRecorder",
"-XX:StartFlightRecording=filename=flightRecording.jfr,settings=profile,dumponexit=true",
"-XX:FlightRecorderOptions=stackdepth=128")
}
И на нашей платформе CI/CD мы запускаем задачу с-PwithFlightRecorder в качестве аргумента.
Мы действительно получаем запись полета, но в первой ее части отсутствуют данные при просмотре процессов или ввода-вывода сокета, которые выглядят так в JDK Mission Control: Обзор процессов, временная шкала ввода-вывода сокета
Как мы можем гарантировать, что первая часть теста также имеет правильную запись?