Package com.microsoft.gctoolkit.parser
Class UnifiedG1GCParser
- java.lang.Object
-
- com.microsoft.gctoolkit.parser.GCLogParser
-
- com.microsoft.gctoolkit.parser.UnifiedG1GCParser
-
- All Implemented Interfaces:
ChannelListener<String>,DataSourceChannelListener,DataSourceParser,GenericTokens,PreUnifiedTokens,SharedPatterns,UnifiedG1GCPatterns,UnifiedLoggingTokens,UnifiedPatterns
public class UnifiedG1GCParser extends GCLogParser implements UnifiedG1GCPatterns
TODO No reports or views generated from this data yet.Result on - when GC started - type of GC triggered - from, to, configured - pause time if it is reported or can be calculated todo: me
-
-
Field Summary
-
Fields inherited from class com.microsoft.gctoolkit.parser.GCLogParser
diary, END_OF_DATA_SENTINEL, GCID_COUNTER
-
Fields inherited from interface com.microsoft.gctoolkit.parser.GenericTokens
BEFORE_AFTER_CONFIGURED, BEFORE_AFTER_CONFIGURED_PAUSE, BEFORE_CONFIGURED_AFTER_CONFIGURED, BYTES, CHURN, CONCURRENT_TIME, COUNTER, CPU_SUMMARY, DATE, DECIMAL_POINT, DURATION_MS, GC_CAUSE, HEX, INT, INTEGER, MEMORY_SIZE, META_RECORD, OCCUPANCY_CONFIGURED, OCCUPANCY_CONFIGURED_PAUSE, PAUSE_TIME, PERCENTAGE, REAL_NUMBER, REAL_VALUE, SAFE_POINT_CAUSE, TIME, UNITS
-
Fields inherited from interface com.microsoft.gctoolkit.parser.PreUnifiedTokens
CLASSPACE_FINAL, CPU_BREAKDOWN, DATE_STAMP, DATE_TIMESTAMP, DATE_TIMESTAMP_RECORD, FINAL_REFERENCE, FRACTIONAL_BEFORE_AFTER_CONFIGURED, FRACTIONAL_MEMORY_SIZE, FULL_GC_PREFIX, GC_PREFIX, JNI_REFERENCE, JNI_REFERENCE_PROCESSING, MEMORY_ADDRESS, MEMORY_POOL_BOUNDS, META_PERM_MEMORY_SUMMARY, METASPACE_FINAL, MS_TIME_STAMP, PERM_RECORD, PHANTOM_REFERENCE, PHANTOM_REFERENCE_PROCESSING, PLAB, PLAB_RECORD, PRECLEAN_REFERENCE_PROCESSING, PRECLEAN_REFERENCE_RECORDS, REFERENCE_PROCESSING_BLOCK, REFERENCE_RECORDS, SOFT_REFERENCE, TIMESTAMP, USED_CAPACITY_COMMITTED_RESERVED, WEAK_REFERENCE
-
Fields inherited from interface com.microsoft.gctoolkit.parser.SharedPatterns
BEFORE_AFTER_CONFIGURED_PAUSE_RULE, CLASS_UNLOADING, CLASS_UNLOADING_BLOCK, MEMORY_SUMMARY_RULE, META_SPACE_RECORD, OCCUPANCY_CONFIGURED_RULE, PERM_SPACE_RECORD, STRING_AND_SYMBOL_SCRUB, STRING_AND_SYMBOL_SCRUB_BLOCK, STRING_TABLE_SCRUB, STRING_TABLE_SCRUB_BLOCK, SYMBOL_TABLE_SCRUB, SYMBOL_TABLE_SCRUB_BLOCK, TENURING_DETAILS, WEAK_REF, WEAK_REF_BLOCK
-
Fields inherited from interface com.microsoft.gctoolkit.parser.unified.UnifiedG1GCPatterns
CARDS, CLAIMED_CHUNKS, CLEANUP__FINALIZE_CONC_MARK, CLEANUP_END, CLEANUP_START, CLEAR_LOGGED_CARDS, CODE_ROOT_SCAN, CONCATENATE_DIRTY_CARD_LOGS, CONCURRENT_CYCLE_END, CONCURRENT_CYCLE_START, CONCURRENT_MARK_ABORTED, CONCURRENT_MARK_END, CONCURRENT_MARK_PHASE, CONCURRENT_MARK_PHASE_DURATION, CONCURRENT_MARK_PHASES, CONCURRENT_MARK_START, CONCURRENT_MARK_WORKERS, CONCURRENT_PHASE, CONCURRENT_PHASE_DURATION, CONCURRENT_PHASES, CONCURRENT_UNDO_CYCLE_END, CONCURRENT_UNDO_CYCLE_START, COPIED_BYTES, EAGER_HUMONGOUS_RECLAIM, EAGER_RECLAIM, EAGER_RECLAIM_STEP, EVACUATION_PHASE, EVACUATION_PHASES, FINALIZE_MARKING, FREE_CSET, FULL_CLASS_UNLOADING, FULL_PHASE, FULL_PHASES, FULL_STRING_SYMBOL_TABLE, G1_COLLECTION, G1_TAG, HEAP_BEFORE_AFTER_GC_INVOCATION_COUNT, HEAP_REGION_SIZE, HEAP_ROOTS, HEAP_SIZE, HEAP_SUMMARY, HOT_CARD_CACHE, HUMONGOUS, LAB, LOG_BUFFERS, MERGE_THREAD_STATE, META_CLASS_SPACE, META_SPACE_BREAKOUT, METASPACE, NEW_CSET, OTHER, PARALLEL_COUNT, PARALLEL_PHASES_COUNTS, PARALLEL_UNLOADING, PAUSE_REMARK_END, PAUSE_REMARK_START, POST_EVAC_CLEANUP, POST_EVACUATE_PHASE, POST_EVACUATE_PHASES, PRE_EVACUATE_COLLECTION_SET, PRE_EVACUATE_SUBPHASE_NAME, PRE_EVACUATION_SUBPHASE, PURGE_CODE_ROOTS, REBUILD_FREELIST, RECALC_USED_MEM, REDIRTIED_CARDS, REDIRTY_CARDS, REFERENCE_PROCESSING, REGION_DISBURSEMENT, REGION_REGISTER, REGION_SUMMARY, REMEMBERED_SETS, RESIZE_TLAB, SCAN_HEAP_ROOTS, SCANS, STRING_DEDUP, STRING_SYMBOL_TABLE, SYSTEM_DICTIONARY_UNLOADING, TO_SPACE_EXHAUSTED, UPDATE_DERIVED_POINTERS, WEAK_JFR_SAMPLES, WEAK_PROCESSING, YOUNG_COLLECTION_SUB_TYPE, YOUNG_COLLECTION_TYPES, YOUNG_DETAILS
-
Fields inherited from interface com.microsoft.gctoolkit.parser.unified.UnifiedLoggingTokens
DATE_STAMP, DECORATORS, PID_TID, POOL_SUMMARY, REGION_MEMORY_BLOCK, TAGS, TIME_MILLIS, TIME_NANOS, UNIFIED_LOG_LEVEL_BLOCK, UNIFIED_META_RECORD, UPTIME, WORKER_SUMMARY_INT, WORKER_SUMMARY_REAL
-
Fields inherited from interface com.microsoft.gctoolkit.parser.unified.UnifiedPatterns
CPU_BREAKOUT, END_OF_FILE, GC_COUNT, JVM_EXIT, REFERENCE_COUNTS, REFERENCES, UNIFIED_META_DATA, WORKER_SUMMARY, WORKER_TASK
-
-
Constructor Summary
Constructors Constructor Description UnifiedG1GCParser()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanaccepts(Diary diary)voidendOfFile(GCLogTrace trace, String line)voidevacuateCSetPhase(GCLogTrace trace, String line)Set<EventSource>eventsProduced()StringgetName()voidheapRegionSize(GCLogTrace trace, String line)voidheapSize(GCLogTrace trace, String line)voidmetaNonClassClassSpace(GCLogTrace trace, String line)Record contains Metaspace broken out to class and non-class space.voidother(GCLogTrace trace, String line)voidparallelCount(GCLogTrace trace, String line)voidpostEvacuatePhaseDuration(GCLogTrace trace, String line)protected voidprocess(String line)voidpublishTo(JVMEventChannel bus)voidregionSummary(GCLogTrace trace, String line)The trace indicates number of active regions before and after the collection.voidtoSpaceExhausted(GCLogTrace trace, String line)voidunifiedMetaData(GCLogTrace trace, String line)voidyoungDetails(GCLogTrace trace, String line)-
Methods inherited from class com.microsoft.gctoolkit.parser.GCLogParser
advanceClock, channel, diary, getClock, publish, receive, setClock
-
-
-
-
Method Detail
-
eventsProduced
public Set<EventSource> eventsProduced()
- Specified by:
eventsProducedin interfaceDataSourceParser
-
getName
public String getName()
- Specified by:
getNamein classGCLogParser
-
process
protected void process(String line)
- Specified by:
processin classGCLogParser
-
endOfFile
public void endOfFile(GCLogTrace trace, String line)
-
heapSize
public void heapSize(GCLogTrace trace, String line)
-
heapRegionSize
public void heapRegionSize(GCLogTrace trace, String line)
-
other
public void other(GCLogTrace trace, String line)
-
evacuateCSetPhase
public void evacuateCSetPhase(GCLogTrace trace, String line)
-
postEvacuatePhaseDuration
public void postEvacuatePhaseDuration(GCLogTrace trace, String line)
-
toSpaceExhausted
public void toSpaceExhausted(GCLogTrace trace, String line)
-
parallelCount
public void parallelCount(GCLogTrace trace, String line)
-
regionSummary
public void regionSummary(GCLogTrace trace, String line)
The trace indicates number of active regions before and after the collection. This is then used to provide an extremely coarse estimate of the amount of live data.- Parameters:
trace- A chunk of GC log that we are attempting to match to a known GC log patternline- The log line corresponding to the trace
-
unifiedMetaData
public void unifiedMetaData(GCLogTrace trace, String line)
-
youngDetails
public void youngDetails(GCLogTrace trace, String line)
-
metaNonClassClassSpace
public void metaNonClassClassSpace(GCLogTrace trace, String line)
Record contains Metaspace broken out to class and non-class space. Since Metaspace = class space + non-class space, we can ignore the non-class space information (for now) The space size before the collection can be determined by inspecting the previous record (ignore for now)- Parameters:
trace- A chunk of GC log that we are attempting to match to a known GC log patternline- The log line corresponding to the trace
-
accepts
public boolean accepts(Diary diary)
- Specified by:
acceptsin interfaceDataSourceParser
-
publishTo
public void publishTo(JVMEventChannel bus)
- Specified by:
publishToin interfaceDataSourceParser- Overrides:
publishToin classGCLogParser
-
-