What is Eclipse Jifa?
Introduction
Eclipse Jifa (abbreviated as Jifa) stands for "Java Issues Finding Assistant". This project originated from an internal system which was designed to improve the efficiency of diagnosing Java heap related issues that occurred in the production environment. It was open sourced and contributed to the Eclipse Foundation in 2020.
Currently, Jifa primarily supports the following features:
In terms of the design, Jifa consists of two main parts:
Server: a standard SpringBoot 3 application.
Web UI: based on Vue 3, Element Plus and other packages.
How to Use?
The main usage workflow consists of three steps: obtaining files, uploading files, and analyzing files.
Taking the analysis of a heap dump as an example, users can initiate an analysis through the following steps:
Obtain a heap dump. Users can generate a new heap dump using commands such as
jmap
orjcmd
.shell$ jmap -dump:format=b,file=<file> <pid>
$ jmap -dump:format=b,file=<file> <pid>
shell$ jcmd <pid> GC.heap_dump filename=<file>
$ jcmd <pid> GC.heap_dump filename=<file>
Upload the heap dump. Various transfer methods are supported, such as local file upload and S3.
Do analysis.