Class DataImportProfiler
java.lang.Object
com.illumon.iris.db.tables.dataimport.logtailer.DataImportProfiler
Tool to accumulate profiling statistics from a
DataImportStreamProcessor
.
Currently this instruments most "high frequency" actions, but does not cover header processing, truncation, or shutdown.
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interface
Instrumentation for per-column work as a component of row processing. -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final DataImportProfiler
The default no-op profiler, for use in testing and initialization. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionabstract void
Record the beginning of an interval spent synchronizing data and writing checkpoints for commit.abstract void
Record the beginning of an interval spent flushing data.abstract void
Record the beginning of an interval spent updating import state if doing batched row processing.abstract void
Record the beginning of an interval spent preparing checkpoints for commit.abstract void
Record the beginning of an interval spent reading data.abstract void
Record the beginning of an interval spent processing record entries.abstract void
Record the beginning of an interval spent processing row entries.abstract void
Record the beginning of an interval spent waiting for data.abstract void
Record the end of an interval spent synchronizing data and writing checkpoints for commit.abstract void
endFlush()
Record the end of an interval spent flushing data.abstract void
Record the end of an interval spent updating import state if doing batched row processing.abstract void
Record the end of an interval spent preparing checkpoints for commit.abstract void
endRead()
Record the end of an interval spent reading data.abstract void
Record the end of an interval spent processing record entries.abstract void
Record the end of an interval spent processing row entries.abstract void
endWait()
Record the end of an interval spent waiting for data.abstract DataImportProfiler.Column
Get aDataImportProfiler.Column
for per-column instrumentation.static DataImportProfiler
make
(com.illumon.iris.db.tables.dataimport.logtailer.DataImportStreamProcessor.ProfilingLevel profilingLevel, FullTableLocationKey streamKey) Get a data import profiler for the specified level and stream.
-
Field Details
-
NOOP_PROFILER
The default no-op profiler, for use in testing and initialization.
-
-
Constructor Details
-
DataImportProfiler
public DataImportProfiler()
-
-
Method Details
-
beginWait
public abstract void beginWait()Record the beginning of an interval spent waiting for data. -
endWait
public abstract void endWait()Record the end of an interval spent waiting for data. -
beginRead
public abstract void beginRead()Record the beginning of an interval spent reading data. -
endRead
public abstract void endRead()Record the end of an interval spent reading data. -
beginRecordProcessing
public abstract void beginRecordProcessing()Record the beginning of an interval spent processing record entries. -
endRecordProcessing
public abstract void endRecordProcessing()Record the end of an interval spent processing record entries. -
beginRowProcessing
public abstract void beginRowProcessing()Record the beginning of an interval spent processing row entries. -
endRowProcessing
public abstract void endRowProcessing()Record the end of an interval spent processing row entries. -
beginFlush
public abstract void beginFlush()Record the beginning of an interval spent flushing data. -
endFlush
public abstract void endFlush()Record the end of an interval spent flushing data. -
beginPrepareCheckpoint
public abstract void beginPrepareCheckpoint()Record the beginning of an interval spent preparing checkpoints for commit. -
endPrepareCheckpoint
public abstract void endPrepareCheckpoint()Record the end of an interval spent preparing checkpoints for commit. -
beginCommit
public abstract void beginCommit()Record the beginning of an interval spent synchronizing data and writing checkpoints for commit. -
endCommit
public abstract void endCommit()Record the end of an interval spent synchronizing data and writing checkpoints for commit. -
beginImportStateUpdate
public abstract void beginImportStateUpdate()Record the beginning of an interval spent updating import state if doing batched row processing. -
endImportStateUpdate
public abstract void endImportStateUpdate()Record the end of an interval spent updating import state if doing batched row processing. -
getColumn
Get aDataImportProfiler.Column
for per-column instrumentation.- Parameters:
name
- The column name- Returns:
- The
DataImportProfiler.Column
-
make
public static DataImportProfiler make(@NotNull com.illumon.iris.db.tables.dataimport.logtailer.DataImportStreamProcessor.ProfilingLevel profilingLevel, @NotNull FullTableLocationKey streamKey) Get a data import profiler for the specified level and stream.- Parameters:
profilingLevel
- The granularity level of the profilerstreamKey
- The stream's key- Returns:
- A profiler for the specified level and stream
-