APIdia Launch Partner
Top Description Fields Constructors Methods
jdk.jfr.internal.tracing

public final Class PlatformTracer

extends Object
Class Inheritance
Imports
java.util.ArrayList, .List, java.util.concurrent.ConcurrentHashMap, jdk.jfr.events.MethodTimingEvent, jdk.jfr.internal.JVM, .LogLevel, .LogTag, .Logger, .MetadataRepository, .SecuritySupport, jdk.jfr.internal.util.Bytecode, jdk.jfr.tracing.MethodTracer

Class that contains the Method Tracer implementation.

By placing the implementation in jdk.jfr.internal.tracing package instead of the jdk.jfr.tracing package fewer internals are exposed to the application.

Field Summary

Modifier and TypeField and Description
private static TimedMethod
private static final ConcurrentHashMap<Long, TimedClass>
private static final ConcurrentHashMap<Long, TimedMethod>
private static List<Filter>
private static List<Filter>

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod and Description
public static void
addObjectTiming(long duration)

public static void
addTiming(long id, long duration)

private static long[]
applyFilter(Modification modification, List<String> filters)

public static void
private static int
private static boolean
public static void
private static void
log(LogLevel level, String message, Module module, String className)

private static List<Filter>
makeFilters(List<String> filterTexts, Modification modification)

public static byte[]
onMethodTrace(Module module, ClassLoader classLoader, String className, byte[] oldBytecode, long[] ids, String[] names, String[] signatures, int[] modifications)

public static void
publishClass(long classId)

private static void
publishClasses(long[] classIds)

private static void
removeClasses(long[] classIds)

private static void
public static void
setFilters(Modification modification, List<String> filters)

private static void
private static void
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

OBJECTback to summary
private static TimedMethod OBJECT
timedClassesback to summary
private static final ConcurrentHashMap<Long, TimedClass> timedClasses
timedMethodsback to summary
private static final ConcurrentHashMap<Long, TimedMethod> timedMethods
timingFiltersback to summary
private static List<Filter> timingFilters
traceFiltersback to summary
private static List<Filter> traceFilters

Constructor Detail

PlatformTracerback to summary
public PlatformTracer()

Method Detail

addObjectTimingback to summary
public static void addObjectTiming(long duration)
addTimingback to summary
public static void addTiming(long id, long duration)
applyFilterback to summary
private static long[] applyFilter(Modification modification, List<String> filters)
emitTimingback to summary
public static void emitTiming()
filterCountback to summary
private static int filterCount()
hasFiltersback to summary
private static boolean hasFilters()
initializeback to summary
public static void initialize()
logback to summary
private static void log(LogLevel level, String message, Module module, String className)
makeFiltersback to summary
private static List<Filter> makeFilters(List<String> filterTexts, Modification modification)
onMethodTraceback to summary
public static byte[] onMethodTrace(Module module, ClassLoader classLoader, String className, byte[] oldBytecode, long[] ids, String[] names, String[] signatures, int[] modifications)
publishClassback to summary
public static void publishClass(long classId)
publishClassesback to summary
private static void publishClasses(long[] classIds)
removeClassesback to summary
private static void removeClasses(long[] classIds)
resetback to summary
private static void reset()
setFiltersback to summary
public static void setFilters(Modification modification, List<String> filters)
updateTimingback to summary
private static void updateTiming(List<Method> methods)
updateTimingback to summary
private static void updateTiming(Method method)