-
Notifications
You must be signed in to change notification settings - Fork 100
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature: JFR Visualizer #252
Conversation
analysis/profile/src/main/java/org/eclipse/jifa/profile/enums/Language.java
Outdated
Show resolved
Hide resolved
server/src/main/java/org/eclipse/jifa/server/enums/FileType.java
Outdated
Show resolved
Hide resolved
…ense header "2024" to "2023, 2024" in all modified files
Thank you for your suggestions. |
The following exception occurs (only happens when using h2 database) when I try to upload a jfr file:
|
server/src/main/java/org/eclipse/jifa/server/enums/FileType.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please add site documents for this feature.
Hi, DengHui Happy Chinese New Year. I have analyzed this problem and I estimate that it will also be encountered when adding file types in the past. The reasons are as follows. Now in java -cp /path/to/h2-2.2.220.jar org.h2.tools.Shell
select * from INFORMATION_SCHEMA.CHECK_CONSTRAINTS; -- no JFR
.H2DB | PUBLIC | CONSTRAINT_3 | "TYPE" IN('HEAP_DUMP', 'GC_LOG', 'THREAD_DUMP')
select * from INFORMATION_SCHEMA.CHECK_CONSTRAINTS; -- expected
.H2DB | PUBLIC | CONSTRAINT_3 | "TYPE" IN('HEAP_DUMP', 'GC_LOG', 'THREAD_DUMP', 'JFR') The first method is to delete the The second method is to add an The third possible method is to retain the current Generally speaking, I recommend the first method, which is simple and effective. The second method adds extra trouble, and the third method is more difficult to implement. May I know what you think about this issue? |
There is a test failure:
|
analysis/profile/src/main/java/org/eclipse/jifa/profile/enums/FileFormat.java
Outdated
Show resolved
Hide resolved
analysis/profile/src/main/java/org/eclipse/jifa/profile/enums/GraphType.java
Outdated
Show resolved
Hide resolved
analysis/profile/src/main/java/org/eclipse/jifa/profile/api/ProfileAnalyzer.java
Outdated
Show resolved
Hide resolved
analysis/profile/src/main/java/org/eclipse/jifa/profile/context/ProfileAnalysisContext.java
Outdated
Show resolved
Hide resolved
analysis/profile/src/main/java/org/eclipse/jifa/profile/enums/Language.java
Outdated
Show resolved
Hide resolved
analysis/profile/src/main/java/org/eclipse/jifa/profile/enums/ProfileFormat.java
Outdated
Show resolved
Hide resolved
analysis/profile/src/main/java/org/eclipse/jifa/profile/enums/Unit.java
Outdated
Show resolved
Hide resolved
hi y1yang0, Thanks.
|
added |
…, siblings[] is not cleared
|
||
@Setter | ||
@Getter | ||
public class BasicMetadata { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Rename to Metadata.
Hi @yanglong1010 , I've done a complete review. I'll approve the pr after you fix the left comments. JFR is a very cool tool, and it's exciting that Jifa can support analyzing JFR files. Currently, this feature only supports the performance view. We can enhance it in the future. Thanks for the contribution. |
…readPark dimensions clearer; some text changes; fix Java code warnings
@D-D-H pushed, please review again at a time convenient for you. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM!
Thank you all. |
Hi,
The current methods for parsing JFR include Java Mission Control (desktop application), jfr (command line), and JFR.view (command line). It would be very cool to add JFR parsing capabilities to JIFA and parse JFR on the Web. It can generate flame graphs for CPU, Memory Allocation, File IO, Socket IO, Lock, Class load, Thread Sleep and other dimensions, and support filtering by threads, classes, and methods. It also supports parsing wall clock JFR files generated by async-profiler (i.e. --wall 10 -t).
In the future we can add viewing capabilities for raw JFR events, as well as other advanced features.
I would be very grateful if you could review this PR.