Пользовательские события JFR Java для управления полетами

Я хотел бы отправлять пользовательские события в jmc - я наткнулся на сообщение в блоге о пользовательских событиях jfr - http://hirt.se/blog/?p=444. Однако автор подчеркнул, что эта функция может быть извращена в будущем. Поскольку JMC не является открытым исходным кодом, я не могу проверить это. Информация в блоге все еще актуальна?

2 ответа

JDK 9 был выпущен и содержит поддерживаемый API для создания пользовательских событий. Пример,

@Label("Hello World!")
class HelloWorld extends jdk.jfr.Event {
  @Label("Message"
  String message;
}

class App {
  public static void main(String... args) {
    HelloWorld e = new HelloWorld();
    e.message = "hello, world!";
    e.commit();
  }
}

Блогпостер здесь!:) Я начал собирать вместе несколько небольших плагинов для JFR во время встреч Hackergarten в Люцерне, чтобы продемонстрировать, как можно использовать эти API. Я открыл их здесь:

https://github.com/thegreystone

Когда выйдет JDK 9, я отправлю обновления, которые позволят им прозрачно поддерживать JDK7/8 и JDK 9, чтобы продемонстрировать, как это можно сделать. Обратите внимание, что использование JFK API JDK7/8 НЕ поддерживается и никогда не будет. Тем не менее, это, тем не менее, довольно полезно.;)

Другие вопросы по тегам