SysTracepublic final class SysTrace extends Object Writes trace events to the system trace buffer. These trace events can be
collected and visualized using the Systrace tool.
This tracing mechanism is independent of the method tracing mechanism
offered by {@link Debug#startMethodTracing}. In particular, it enables
tracing of events that occur across multiple processes.
All traces are written using the APP tag.
|
Fields Summary |
---|
private static final String | TAG | private static final boolean | VERBOSE | private static int | sNestingLevel |
Methods Summary |
---|
public static void | beginSection(java.lang.String sectionName)Writes a trace message to indicate that a given section of code has begun. This call must
be followed by a corresponding call to {@link #endSection()} on the same thread.
At this time the vertical bar character '|', newline character '\n', and
null character '\0' are used internally by the tracing mechanism. If sectionName contains
these characters they will be replaced with a space character in the trace.
if (VERBOSE) {
Log.v(TAG, String.format("beginSection[%d] %s", sNestingLevel, sectionName));
sNestingLevel++;
}
| public static void | beginSectionAsync(java.lang.String methodName, int cookie)Writes a trace message to indicate that a given section of code has
begun.
Must be followed by a call to {@link #endSectionAsync} using the same
tag. Unlike {@link #beginSection} and {@link #endSection},
asynchronous events do not need to be nested. The name and cookie used to
begin an event must be used to end it.
if (VERBOSE) {
Log.v(TAG, "beginSectionAsync " + methodName + " " + cookie);
}
| public static void | endSection()Writes a trace message to indicate that a given section of code has
ended.
This call must be preceded by a corresponding call to
{@link #beginSection(String)}. Calling this method will mark the end of
the most recently begun section of code, so care must be taken to ensure
that beginSection / endSection pairs are properly nested and called from
the same thread.
if (VERBOSE) {
sNestingLevel--;
Log.v(TAG, String.format("endSection[%d]", sNestingLevel));
}
| public static void | endSectionAsync(java.lang.String methodName, int cookie)Writes a trace message to indicate that the current method has ended.
Must be called exactly once for each call to {@link #beginSectionAsync}
using the same tag, name and cookie.
if (VERBOSE) {
Log.v(TAG, "endSectionAsync " + methodName + " " + cookie);
}
| public static void | traceCounter(java.lang.String counterName, int counterValue)Writes trace message to indicate the value of a given counter.
if (VERBOSE) {
Log.v(TAG, "traceCounter " + counterName + " " + counterValue);
}
|
|