Skip to content

Commit 4aa0231

Browse files
Dennis Lawlerchewiebug
authored andcommitted
Support uptime timestamps reported in milliseconds.
1 parent 695f8f4 commit 4aa0231

File tree

1 file changed

+8
-2
lines changed

1 file changed

+8
-2
lines changed

src/main/java/com/tagtraum/perf/gcviewer/imp/DataReaderUnifiedJvmLogging.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ public class DataReaderUnifiedJvmLogging extends AbstractDataReader {
5959
// Regex: ^(?:\[(?<time>[0-9-T:.+]*)])?(?:\[(?<uptime>[^s]*)s])?\[(?<level>[^]]+)]\[(?:(?<tags>[^] ]+)[ ]*)][ ]GC\((?<gcnumber>[0-9]+)\)[ ](?<type>([-.a-zA-Z ()]+|[a-zA-Z1 ()]+))(?:(?:[ ](?<tail>[0-9]{1}.*))|$)
6060
// note for the <type> part: easiest would have been to use [^0-9]+, but the G1 events don't fit there, because of the number in their name
6161
private static final Pattern PATTERN_DECORATORS = Pattern.compile(
62-
"^(?:\\[(?<time>[0-9-T:.+]*)])?(?:\\[(?<uptime>[^s]*)s])?\\[(?<level>[^]]+)]\\[(?:(?<tags>[^] ]+)[ ]*)][ ]GC\\((?<gcnumber>[0-9]+)\\)[ ](?<type>(?:Phase [0-9]{1}: [a-zA-Z ]+)|[-.a-zA-Z: ()]+|[a-zA-Z1 ()]+)(?:(?:[ ](?<tail>[0-9]{1}.*))|$)"
62+
"^(?:\\[(?<time>[0-9-T:.+]*)])?(?:\\[(?<uptime>[^s]*)m?s])?\\[(?<level>[^]]+)]\\[(?:(?<tags>[^] ]+)[ ]*)][ ]GC\\((?<gcnumber>[0-9]+)\\)[ ](?<type>(?:Phase [0-9]{1}: [a-zA-Z ]+)|[-.a-zA-Z: ()]+|[a-zA-Z1 ()]+)(?:(?:[ ](?<tail>[0-9]{1}.*))|$)"
6363
);
6464
private static final String GROUP_DECORATORS_TIME = "time";
6565
private static final String GROUP_DECORATORS_UPTIME = "uptime";
@@ -505,7 +505,13 @@ private void setDateStampIfPresent(AbstractGCEvent<?> event, String dateStampAsS
505505

506506
private void setTimeStampIfPresent(AbstractGCEvent<?> event, String timeStampAsString) {
507507
if (timeStampAsString != null && timeStampAsString.length() > 0) {
508-
event.setTimestamp(NumberParser.parseDouble(timeStampAsString));
508+
double ts;
509+
if (timeStampAsString.endsWith("m")) {
510+
ts = NumberParser.parseDouble(timeStampAsString.substring(0, timeStampAsString.length()-1)) / 1000;
511+
} else {
512+
ts = NumberParser.parseDouble(timeStampAsString);
513+
}
514+
event.setTimestamp(ts);
509515
}
510516
}
511517

0 commit comments

Comments
 (0)