Class UpdatePerformanceTracker

java.lang.Object
com.illumon.iris.db.v2.utils.UpdatePerformanceTracker

public class UpdatePerformanceTracker extends Object
This tool is meant to track periodic update events that take place in a LiveTableMonitor. This generally includes (1) LiveTable.refresh() invocations (2) DynamicTable Listener notifications (see InstrumentedListener) If publishing to Iris DB is enabled, then the table DbInternal/UpdatePerformanceLog will reflect recorded results. Note: Regarding thread safety, this class interacts with a singleton LiveTableMonitor and expects all calls to getEntry(), Entry.onUpdateStart(), and Entry.onUpdateEnd() to be performed while protected by the LTM's live jobs synchronizer.
  • Method Details

    • getInstance

      public static UpdatePerformanceTracker getInstance()
    • enableUnitTestMode

      public void enableUnitTestMode()
    • getEntry

      public final UpdatePerformanceTracker.Entry getEntry(String description)
      Get a new entry to track the performance characteristics of a single recurring update event.
      Parameters:
      description - log entry description
      Returns:
      UpdatePerformanceTracker.Entry
    • generateEmptyReport

      public Table generateEmptyReport()
    • addListener

      public void addListener(UpdatePerformanceTracker.Listener listener)
    • notifyListeners

      public void notifyListeners(Table report)