Top Fields Constructors Methods
com.mysql.cj.log

public Class BaseMetricsHolder

extends Object
Class Inheritance

Field Summary

Modifier and TypeField and Description
private static final int
private long
longestQueryTimeMs

If gathering metrics, what was the execution time of the longest query so far ?

private long
private long
private long
numberOfPreparedExecutes

When was the last time we reported metrics?

private long
private long
private long
private long[]
private int[]
private long[]
private int[]
private long[]
private int[]
private long
private double
private double
private double
private long
private double

Constructor Summary

AccessConstructor and Description
public

Method Summary

Modifier and TypeMethod 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)

public boolean

Returns:

true if millisOrNanos is outside the 99th percentile?
checkAbonormallyLongQuery
(long
query execution time
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
private void
private void
createInitialHistogram(long[] breakpoints, long lowerBound, long upperBound)

public void
public void
public void
public void
registerQueryExecutionTime(long
query execution time in milliseconds
queryTimeMs
)

private void
repartitionHistogram(int[] histCounts, long[] histBreakpoints, long currentLowerBound, long currentUpperBound)

private void
private void
public void
public void
reportNumberOfTablesAccessed(int numTablesAccessed)

**

public void
reportQueryTime(long millisOrNanos)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

HISTOGRAM_BUCKETSback to summary
private static final int HISTOGRAM_BUCKETS
longestQueryTimeMsback to summary
private long longestQueryTimeMs

If gathering metrics, what was the execution time of the longest query so far ?

maximumNumberTablesAccessedback to summary
private long maximumNumberTablesAccessed
minimumNumberTablesAccessedback to summary
private long minimumNumberTablesAccessed
numberOfPreparedExecutesback to summary
private long numberOfPreparedExecutes

When was the last time we reported metrics?

numberOfPreparesback to summary
private long numberOfPrepares
numberOfQueriesIssuedback to summary
private long numberOfQueriesIssued
numberOfResultSetsCreatedback to summary
private long numberOfResultSetsCreated
numTablesMetricsHistBreakpointsback to summary
private long[] numTablesMetricsHistBreakpoints
numTablesMetricsHistCountsback to summary
private int[] numTablesMetricsHistCounts
oldHistBreakpointsback to summary
private long[] oldHistBreakpoints
oldHistCountsback to summary
private int[] oldHistCounts
perfMetricsHistBreakpointsback to summary
private long[] perfMetricsHistBreakpoints
perfMetricsHistCountsback to summary
private int[] perfMetricsHistCounts
queryTimeCountback to summary
private long queryTimeCount
queryTimeMeanback to summary
private double queryTimeMean
queryTimeSumback to summary
private double queryTimeSum
queryTimeSumSquaresback to summary
private double queryTimeSumSquares
shortestQueryTimeMsback to summary
private long shortestQueryTimeMs
totalQueryTimeMsback to summary
private double totalQueryTimeMs

Constructor Detail

BaseMetricsHolderback to summary
public BaseMetricsHolder()

Method Detail

addToHistogramback to summary
private void addToHistogram(int[] histogramCounts, long[] histogramBreakpoints, long value, int numberOfTimes, long currentLowerBound, long currentUpperBound)
addToPerformanceHistogramback to summary
private void addToPerformanceHistogram(long value, int numberOfTimes)
addToTablesAccessedHistogramback to summary
private void addToTablesAccessedHistogram(long value, int numberOfTimes)
checkAbonormallyLongQueryback to summary
public 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.

Used in case autoSlowLog=true.

Parameters
millisOrNanos:long

query execution time

Returns:boolean

true if millisOrNanos is outside the 99th percentile?

checkAndCreatePerformanceHistogramback to summary
private void checkAndCreatePerformanceHistogram()
checkAndCreateTablesAccessedHistogramback to summary
private void checkAndCreateTablesAccessedHistogram()
createInitialHistogramback to summary
private void createInitialHistogram(long[] breakpoints, long lowerBound, long upperBound)
incrementNumberOfPreparedExecutesback to summary
public void incrementNumberOfPreparedExecutes()
incrementNumberOfPreparesback to summary
public void incrementNumberOfPrepares()
incrementNumberOfResultSetsCreatedback to summary
public void incrementNumberOfResultSetsCreated()
registerQueryExecutionTimeback to summary
public void registerQueryExecutionTime(long queryTimeMs)
Parameters
queryTimeMs:long

query execution time in milliseconds

repartitionHistogramback to summary
private void repartitionHistogram(int[] histCounts, long[] histBreakpoints, long currentLowerBound, long currentUpperBound)
repartitionPerformanceHistogramback to summary
private void repartitionPerformanceHistogram()
repartitionTablesAccessedHistogramback to summary
private void repartitionTablesAccessedHistogram()
reportMetricsback to summary
public void reportMetrics(Log log)
reportNumberOfTablesAccessedback to summary
public void reportNumberOfTablesAccessed(int numTablesAccessed)

**

reportQueryTimeback to summary
public void reportQueryTime(long millisOrNanos)