古早但持續好用的工具:IBM Garbage Collection and Memory Visualizer

過年還是要持續學習,年前幾個客戶的系統發生了一些狀況,這幾天反覆看了一些資料之後,發現還是得針對 JVM 的 GC 狀況來好好看一下,才回過頭來找這個自己已經好幾年沒在用的工具(因為已經很久都不需要自己出手來看這些問題了):IBM Garbage Collection and Memory Visualizer。

過年還是要持續學習,年前幾個客戶的系統發生了一些狀況,這幾天反覆看了一些資料之後,發現還是得針對 JVM 的 GC 狀況來好好看一下,才回過頭來找這個自己已經好幾年沒在用的工具(因為已經很久都不需要自己出手來看這些問題了):IBM Garbage Collection and Memory Visualizer。

首先,這個工具是有在 Eclipse Marketplace 上架的,不過在 2025 七月就不再繼續更新:https://marketplace.eclipse.org/content/ibm-monitoring-and-diagnostic-tools-garbage-collection-and-memory-visualizer-gcmv,改為需從 IBM Support 下載:https://www.ibm.com/support/pages/garbage-collection-and-memory-visualizer,需要以 IBMid 登入後才能看到完整的內容(包含下載連結),IBMid 是開放註冊的,有需要的話可以註冊後來下載這個 GC 分析軟體。

因為我自己是使用 macOS(不管是 x86 還是 arm),所以就優先驗證這兩個平台的獨立版本(先不驗證 Eclipse archived update site 的安裝方式)。

首先,最新的 IBM Garbage Collection and Memory Visualizer 會需要 IBM Semeru Java 21,所以要在啟動之前,需要先編輯所封裝 Eclipse 中的 gcmv.ini(在標準的 Eclipse 版本裡通常是 eclipse.ini),在其中指定所使用的 JVM 是 IBM Semeru Java21。

這樣設定完畢之後,在 macOS 上面還是沒有辦法正確執行這個 APP,文件中有提到要在解壓縮的目錄下(含有 IBM Garbage Collection and Memory Visualizer.app)執行以下命令:

xattr -d com.apple.quarantine com.ibm.java.diagnostics.visualizer.product*

不過這段命令,我不管在 x86 或者是 arm 上面執行都沒能成功,所以也就一直沒辦法正確的執行這個 APP。

後來透過跟 AI 的互動,終於找出正確的執行命令:

xattr -d com.apple.quarantine "IBM Garbage Collection and Memory Visualizer.app"

執行完上述命令之後,就可以正確的叫起 IBM Garbage Collection and Memory Visualizer 這個 APP 了。

markkwsu

markkwsu

Add comment