2.8. JFR 機能
JDK Flight Recorder (JFR) サポートは、バージョン 8u262 以降の Red Hat build of OpenJDK 8 にバックポートされました。JFR サポートは、Red Hat build of OpenJDK 8u272 以降デフォルトで有効になりました。
バックポート という用語は、Red Hat がアップストリームソフトウェアの最新バージョンから更新を取得し、その更新を Red Hat が配布するソフトウェアの古いバージョンに適用することを指します。
バックポートされた JFR 機能
Red Hat build of OpenJDK 8 への JFR バックポートには、次のすべての機能が含まれていました。
- Red Hat build of OpenJDK 11 でも利用できる多数のイベント
-
Red Hat build of OpenJDK 8 および 11 で一貫して動作する
jfr
や Java 診断コマンド (jcmd
) などのコマンドラインツール -
プログラムまたは
jcmd
で JMX Bean インターフェイスを使用して JFR を有効にするために使用できる Java Management Extensions (JMX) API jdk.jfr
名前空間注記jdk.jfr
名前空間の JFR API は、Red Hat build of OpenJDK 8 では Java 仕様の一部とは見なされませんが、Red Hat build of OpenJDK 11 ではこれらの API は Java 仕様の一部です。JFR API はサポートされているすべての Red Hat build of OpenJDK バージョンで使用できるため、JFR を使用するアプリケーションでは、Red Hat build of OpenJDK 8 以降のバージョンで JFR API を使用するために特別な設定は必要ありません。
別途配布される JDK Mission Control も、Red Hat build of OpenJDK 8 と互換性を確保できるように更新されました。
他の OpenJDK バージョンとの互換性が必要なアプリケーション
アプリケーションが次のいずれかの OpenJDK バージョンと互換性を確保する必要がある場合は、これらのアプリケーションを適応させる必要がある場合があります。
- 8u262 より前の OpenJDK バージョン
- JFR をサポートしていない他のベンダーの OpenJDK バージョン
- Oracle JDK
この取り組みを支援するために、Red Hat は、実行時に JFR が無効になっているかのように動作する、JFR の空の実装を提供する特別な互換性レイヤーを開発しました。JFR 互換性 API の詳細は、openjdk8-jfr-compat を参照してください。生成された .jar
ファイルは、OpenJDK 8 ディストリビューションの jre/lib/ext
ディレクトリーにインストールできます。
これらのアプリケーションが、MBean インターフェイスを照会するのではなく、バージョン番号のみをチェックして OpenJDK 8 を除外していた場合、一部のアプリケーションを更新する必要がある可能性があります。