feat(preset): add preset template and rule for Hibernate JFR #750
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Welcome to Cryostat! 👋
Before contributing, make sure you have:
main
branch[chore, ci, docs, feat, fix, test]
To recreate commits with GPG signature
git fetch upstream && git rebase --force --gpg-sign upstream/main
Fixes: #736
See also #548
Depends on #749
Based on #749
Description of the change:
Adds a Preset Event Template for Hibernate JFR events, which are enabled by the
hibernate-jfr
dependency. Any application using Hibernate which also has this JAR on its classpath should have the relevant JFR event types registered, and they can be emitted simply by starting a recording with them enabled. Also adds an Automated Rule which detects the presence of these event types in the target JVM, for ease of enablement by the end user.Motivation for the change:
Provides a quick and easy way for Cryostat + Hibernate users to get very detailed profiling information about the internals of their Hibernate sessions, transactions, etc. - simply install the
hibernate-jfr
dependency, redeploy the target application, and turn on the preset Automated Rule for Hibernate.How to manually test:
./smoketest.bash -O
auto_hibernate
recording should be started in Cryostat. Click around the UI a bunch to generate load, then download the recording.jfr print --events 'org.hibernate.orm.*' auto_hibernate.jfr
should reveal lots of JFR data.