microsoft / microsoft/gctoolkit

Cannot parse gc log where first line does not have a timestamp

Open
#196 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

bug
Dominant language
Java
Stars
1.3k
Forks
177
Avg merge
1d 11h
Merged PRs (30d)
3

Description

Describe the bug
Log file begins with

 [Times: user=0.45 sys=0.00, real=0.05 secs] 
2021-12-17T19:04:11.194+0000: 302396.015: [GC pause (G1 Evacuation Pause) (young)
Desired survivor size 742391808 bytes, new threshold 15 (max 15)
- age   1:   27289544 bytes,   27289544 total

Parsing silently fails with

Dec 17, 2021 3:05:57 PM com.microsoft.gctoolkit.event.g1gc.G1Trap trap
INFO: Internal EventSource Error @ @0.000
Dec 17, 2021 3:05:57 PM com.microsoft.gctoolkit.parser.PreUnifiedG1GCParser record
WARNING: Parsing Error: Attempt to record Trap @0.0

Removing the first line of the log resolves the issue, but gctoolkit should be able to handle this.

I have asked the originator of this issue to attach the log file here.

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

Expected behavior
A clear and concise description of what you expected to happen.

Screenshots
If applicable, add screenshots to help explain your problem.

Desktop (please complete the following information):

  • OS: [e.g. iOS]
  • Browser [e.g. chrome, safari]
  • Version [e.g. 22]

Smartphone (please complete the following information):

  • Device: [e.g. iPhone6]
  • OS: [e.g. iOS8.1]
  • Browser [e.g. stock browser, safari]
  • Version [e.g. 22]

Additional context
Add any other context about the problem here.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the failure with the log excerpt, then trace the G1Trap and PreUnifiedG1GCParser entries named in the error output. Done means a log beginning with the timestamp-free [Times: ...] line parses without the Internal EventSource Error or Trap warning.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
tooling
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.