to top
Android APIs
public class

TimingLogger

extends Object
java.lang.Object
   ↳ android.util.TimingLogger

Class Overview

A utility class to help log timings splits throughout a method call. Typical usage is:

     TimingLogger timings = new TimingLogger(TAG, "methodA");
     // ... do some work A ...
     timings.addSplit("work A");
     // ... do some work B ...
     timings.addSplit("work B");
     // ... do some work C ...
     timings.addSplit("work C");
     timings.dumpToLog();
 

The dumpToLog call would add the following to the log:

     D/TAG     ( 3459): methodA: begin
     D/TAG     ( 3459): methodA:      9 ms, work A
     D/TAG     ( 3459): methodA:      1 ms, work B
     D/TAG     ( 3459): methodA:      6 ms, work C
     D/TAG     ( 3459): methodA: end, 16 ms
 

Summary

Public Constructors
TimingLogger(String tag, String label)
Create and initialize a TimingLogger object that will log using the specific tag.
Public Methods
void addSplit(String splitLabel)
Add a split for the current time, labeled with splitLabel.
void dumpToLog()
Dumps the timings to the log using Log.d().
void reset(String tag, String label)
Clear and initialize a TimingLogger object that will log using the specific tag.
void reset()
Clear and initialize a TimingLogger object that will log using the tag and label that was specified previously, either via the constructor or a call to reset(tag, label).
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public TimingLogger (String tag, String label)

Added in API level 1

Create and initialize a TimingLogger object that will log using the specific tag. If the Log.isLoggable is not enabled to at least the Log.VERBOSE level for that tag at creation time then the addSplit and dumpToLog call will do nothing.

Parameters
tag the log tag to use while logging the timings
label a string to be displayed with each log

Public Methods

public void addSplit (String splitLabel)

Added in API level 1

Add a split for the current time, labeled with splitLabel. If Log.isLoggable was not enabled to at least the Log.VERBOSE for the specified tag at construction or reset() time then this call does nothing.

Parameters
splitLabel a label to associate with this split.

public void dumpToLog ()

Added in API level 1

Dumps the timings to the log using Log.d(). If Log.isLoggable was not enabled to at least the Log.VERBOSE for the specified tag at construction or reset() time then this call does nothing.

public void reset (String tag, String label)

Added in API level 1

Clear and initialize a TimingLogger object that will log using the specific tag. If the Log.isLoggable is not enabled to at least the Log.VERBOSE level for that tag at creation time then the addSplit and dumpToLog call will do nothing.

Parameters
tag the log tag to use while logging the timings
label a string to be displayed with each log

public void reset ()

Added in API level 1

Clear and initialize a TimingLogger object that will log using the tag and label that was specified previously, either via the constructor or a call to reset(tag, label). If the Log.isLoggable is not enabled to at least the Log.VERBOSE level for that tag at creation time then the addSplit and dumpToLog call will do nothing.