public class BaseMetricsHolder
extends java.lang.Object
| Modifier and Type | Field and Description |
|---|---|
private static int |
HISTOGRAM_BUCKETS |
private long |
longestQueryTimeMs
If gathering metrics, what was the execution time of the longest query so
far ?
|
private long |
maximumNumberTablesAccessed |
private long |
minimumNumberTablesAccessed |
private long |
numberOfPreparedExecutes
When was the last time we reported metrics?
|
private long |
numberOfPrepares |
private long |
numberOfQueriesIssued |
private long |
numberOfResultSetsCreated |
private long[] |
numTablesMetricsHistBreakpoints |
private int[] |
numTablesMetricsHistCounts |
private long[] |
oldHistBreakpoints |
private int[] |
oldHistCounts |
private long[] |
perfMetricsHistBreakpoints |
private int[] |
perfMetricsHistCounts |
private long |
queryTimeCount |
private double |
queryTimeMean |
private double |
queryTimeSum |
private double |
queryTimeSumSquares |
private long |
shortestQueryTimeMs |
private double |
totalQueryTimeMs |
| Constructor and Description |
|---|
BaseMetricsHolder() |
| Modifier and Type | Method and Description |
|---|---|
private void |
addToHistogram(int[] histogramCounts,
long[] histogramBreakpoints,
long value,
int numberOfTimes,
long currentLowerBound,
long currentUpperBound) |
private void |
addToPerformanceHistogram(long value,
int numberOfTimes) |
private void |
addToTablesAccessedHistogram(long value,
int numberOfTimes) |
boolean |
checkAbonormallyLongQuery(long millisOrNanos)
Update statistics that allows the driver to determine if a query is slow enough to be logged,
and return the estimation result for millisOrNanos value.
|
private void |
checkAndCreatePerformanceHistogram() |
private void |
checkAndCreateTablesAccessedHistogram() |
private void |
createInitialHistogram(long[] breakpoints,
long lowerBound,
long upperBound) |
void |
incrementNumberOfPreparedExecutes() |
void |
incrementNumberOfPrepares() |
void |
incrementNumberOfResultSetsCreated() |
void |
registerQueryExecutionTime(long queryTimeMs) |
private void |
repartitionHistogram(int[] histCounts,
long[] histBreakpoints,
long currentLowerBound,
long currentUpperBound) |
private void |
repartitionPerformanceHistogram() |
private void |
repartitionTablesAccessedHistogram() |
void |
reportMetrics(Log log) |
void |
reportNumberOfTablesAccessed(int numTablesAccessed) |
void |
reportQueryTime(long millisOrNanos) |
private static final int HISTOGRAM_BUCKETS
private long longestQueryTimeMs
private long maximumNumberTablesAccessed
private long minimumNumberTablesAccessed
private long numberOfPreparedExecutes
private long numberOfPrepares
private long numberOfQueriesIssued
private long numberOfResultSetsCreated
private long[] numTablesMetricsHistBreakpoints
private int[] numTablesMetricsHistCounts
private long[] oldHistBreakpoints
private int[] oldHistCounts
private long shortestQueryTimeMs
private double totalQueryTimeMs
private long[] perfMetricsHistBreakpoints
private int[] perfMetricsHistCounts
private long queryTimeCount
private double queryTimeSum
private double queryTimeSumSquares
private double queryTimeMean
private void createInitialHistogram(long[] breakpoints,
long lowerBound,
long upperBound)
private void addToHistogram(int[] histogramCounts,
long[] histogramBreakpoints,
long value,
int numberOfTimes,
long currentLowerBound,
long currentUpperBound)
private void addToPerformanceHistogram(long value,
int numberOfTimes)
private void addToTablesAccessedHistogram(long value,
int numberOfTimes)
private void checkAndCreatePerformanceHistogram()
private void checkAndCreateTablesAccessedHistogram()
public void registerQueryExecutionTime(long queryTimeMs)
queryTimeMs - query execution time in millisecondsprivate void repartitionHistogram(int[] histCounts,
long[] histBreakpoints,
long currentLowerBound,
long currentUpperBound)
private void repartitionPerformanceHistogram()
private void repartitionTablesAccessedHistogram()
public void reportMetrics(Log log)
public void reportNumberOfTablesAccessed(int numTablesAccessed)
public void incrementNumberOfPreparedExecutes()
public void incrementNumberOfPrepares()
public void incrementNumberOfResultSetsCreated()
public void reportQueryTime(long millisOrNanos)
public boolean checkAbonormallyLongQuery(long millisOrNanos)
Used in case autoSlowLog=true.
millisOrNanos - query execution time