Skip to content

feat(diagnostics): Add frontend for heap dumps#1730

Merged
andrewazores merged 20 commits intocryostatio:mainfrom
Josh-Matsuoka:heap-dumps
Sep 16, 2025
Merged

feat(diagnostics): Add frontend for heap dumps#1730
andrewazores merged 20 commits intocryostatio:mainfrom
Josh-Matsuoka:heap-dumps

Conversation

@Josh-Matsuoka
Copy link
Copy Markdown
Contributor

@Josh-Matsuoka Josh-Matsuoka commented Jul 29, 2025

Fixes cryostatio/cryostat#134

Adds a frontend for interacting with the heap dumps system. This allows you to trigger and retrieve heap dumps from a target with the agent enabled via the diagnostics card and capture diagnostics page, then view them in a table and download or delete as desired. The filenames are generated by the agent and follow the format (target alias)-(random uuid).hprof

To test:

Setup
-Check out this PR, as well as cryostatio/cryostat-agent#671 and cryostatio/cryostat#984

  • Build all 3, build the quarkus-agent sample application with the PR version of the cryostat agent.
  • Run smoketest bash smoketest.bash -O -t quarkus-cryostat-agent
  • Open the Web UI and test the functionality

Diagnostics Card

  • Check that the Heap Dumps button appears on the diagnostics card.
  • Verify that clicking the Invoke Heap Dumps button triggers 2 notifications, one for a successful invocation (Heap Dump Success), and one for a successful upload to the server (Heap Dump Uploaded)
  • Verify that the redirect button becomes enabled and takes you to the Heap Dumps table

Capture Diagnostics Page

  • Check that the Heap Dumps button appears on the capture diagnostics page.
  • Verify that clicking the Invoke Heap Dumps button triggers 2 notifications, one for a successful invocation (Heap Dump Success), and one for a successful upload to the server (Heap Dump Uploaded)
  • Verify that the redirect button becomes enabled and takes you to the Heap Dumps table

Heap Dumps Table

  • Check that the earlier triggered heap dumps appear in the table with a name, last modified time, and file size that makes sense
  • Verify that each table entry has a dropdown for downloading and deleting the heap dump.
  • Verify that heap dumps can be downloaded and deleted.
  • Verify that deleting a heap dump produces a notification (Heap Dump Deleted) and refreshes the table

@mergify mergify bot added the safe-to-test label Jul 29, 2025
@Josh-Matsuoka Josh-Matsuoka marked this pull request as ready for review August 29, 2025 20:14
@Josh-Matsuoka Josh-Matsuoka added feat New feature or request dependent labels Sep 11, 2025
@andrewazores
Copy link
Copy Markdown
Member

Screenshot_2025-09-16_13-53-05

Seems like a localized string is missing or the name is referenced incorrectly.

@andrewazores andrewazores merged commit 3b05138 into cryostatio:main Sep 16, 2025
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Request] Add option to trigger a heap dump

2 participants