public class DataStorageMetricsImpl extends Object implements DataStorageMetricsMXBean
| Constructor and Description |
|---|
DataStorageMetricsImpl(boolean metricsEnabled,
long rateTimeInterval,
int subInts) |
| Modifier and Type | Method and Description |
|---|---|
void |
disableMetrics()
Disables persistence metrics collection on an Apache Ignite node.
|
void |
enableMetrics()
Enables persistence metrics collection on an Apache Ignite node.
|
long |
getLastCheckpointCopiedOnWritePagesNumber()
Gets the number of pages copied to a temporary checkpoint buffer during the last checkpoint.
|
long |
getLastCheckpointDataPagesNumber()
Gets the number of data pages written during the last checkpoint.
|
long |
getLastCheckpointDuration()
Gets the duration of the last checkpoint in milliseconds.
|
long |
getLastCheckpointFsyncDuration()
Gets the duration of the sync phase of the last checkpoint in milliseconds.
|
long |
getLastCheckpointLockWaitDuration()
Gets the duration of last checkpoint lock wait in milliseconds.
|
long |
getLastCheckpointMarkDuration()
Gets the duration of last checkpoint mark phase in milliseconds.
|
long |
getLastCheckpointPagesWriteDuration()
Gets the duration of last checkpoint pages write phase in milliseconds.
|
long |
getLastCheckpointTotalPagesNumber()
Gets the total number of pages written during the last checkpoint.
|
int |
getWalArchiveSegments()
Gets the current number of WAL segments in the WAL archive.
|
long |
getWalBuffPollSpinsRate()
Returns WAL buffer poll spins number over the last time interval.
|
float |
getWalFsyncTimeAverage()
Gets the average WAL fsync duration in microseconds over the last time interval.
|
float |
getWalLoggingRate()
Gets the average number of WAL records per second written during the last time interval.
|
float |
getWalWritingRate()
Gets the average number of bytes per second written during the last time interval.
|
boolean |
metricsEnabled() |
void |
onBuffPollSpin(int num) |
void |
onCheckpoint(long lockWaitDuration,
long markDuration,
long pagesWriteDuration,
long fsyncDuration,
long duration,
long totalPages,
long dataPages,
long cowPages) |
void |
onFsync(long nanoTime) |
void |
onWalBytesWritten(int size) |
void |
onWalRecordLogged() |
void |
rateTimeInterval(long rateTimeInterval)
Sets time interval for rate-based metrics.
|
void |
subIntervals(int subInts)
Sets a number of sub-intervals the whole
DataStorageMetricsMXBean.rateTimeInterval(long) will be split into to calculate
rate-based metrics. |
void |
wal(IgniteWriteAheadLogManager wal) |
public DataStorageMetricsImpl(boolean metricsEnabled,
long rateTimeInterval,
int subInts)
metricsEnabled - Metrics enabled flag.rateTimeInterval - Rate time interval.subInts - Number of sub-intervals.public float getWalLoggingRate()
The length of time interval is configured via DataStorageConfiguration.setMetricsRateTimeInterval(long)
configuration property.
The number of subintervals is configured via DataStorageConfiguration.setMetricsSubIntervalCount(int)
configuration property.
getWalLoggingRate in interface DataStorageMetricsgetWalLoggingRate in interface DataStorageMetricsMXBeanpublic float getWalWritingRate()
DataStorageConfiguration.setMetricsRateTimeInterval(long)
configuration property.
The number of subintervals is configured via DataStorageConfiguration.setMetricsSubIntervalCount(int)
configuration property.getWalWritingRate in interface DataStorageMetricsgetWalWritingRate in interface DataStorageMetricsMXBeanpublic int getWalArchiveSegments()
getWalArchiveSegments in interface DataStorageMetricsgetWalArchiveSegments in interface DataStorageMetricsMXBeanpublic float getWalFsyncTimeAverage()
The length of time interval is configured via DataStorageConfiguration.setMetricsRateTimeInterval(long)
configuration property.
The number of subintervals is configured via DataStorageConfiguration.setMetricsSubIntervalCount(int)
configuration property.
getWalFsyncTimeAverage in interface DataStorageMetricsgetWalFsyncTimeAverage in interface DataStorageMetricsMXBeanpublic long getWalBuffPollSpinsRate()
The length of time interval is configured via DataStorageConfiguration.setMetricsRateTimeInterval(long)
configuration property.
The number of subintervals is configured via DataStorageConfiguration.setMetricsSubIntervalCount(int)
configuration property.
getWalBuffPollSpinsRate in interface DataStorageMetricsgetWalBuffPollSpinsRate in interface DataStorageMetricsMXBeanpublic long getLastCheckpointDuration()
getLastCheckpointDuration in interface DataStorageMetricsgetLastCheckpointDuration in interface DataStorageMetricsMXBeanpublic long getLastCheckpointLockWaitDuration()
getLastCheckpointLockWaitDuration in interface DataStorageMetricsgetLastCheckpointLockWaitDuration in interface DataStorageMetricsMXBeanpublic long getLastCheckpointMarkDuration()
getLastCheckpointMarkDuration in interface DataStorageMetricsgetLastCheckpointMarkDuration in interface DataStorageMetricsMXBeanpublic long getLastCheckpointPagesWriteDuration()
getLastCheckpointPagesWriteDuration in interface DataStorageMetricsgetLastCheckpointPagesWriteDuration in interface DataStorageMetricsMXBeanpublic long getLastCheckpointFsyncDuration()
getLastCheckpointFsyncDuration in interface DataStorageMetricsgetLastCheckpointFsyncDuration in interface DataStorageMetricsMXBeanpublic long getLastCheckpointTotalPagesNumber()
getLastCheckpointTotalPagesNumber in interface DataStorageMetricsgetLastCheckpointTotalPagesNumber in interface DataStorageMetricsMXBeanpublic long getLastCheckpointDataPagesNumber()
getLastCheckpointDataPagesNumber in interface DataStorageMetricsgetLastCheckpointDataPagesNumber in interface DataStorageMetricsMXBeanpublic long getLastCheckpointCopiedOnWritePagesNumber()
getLastCheckpointCopiedOnWritePagesNumber in interface DataStorageMetricsgetLastCheckpointCopiedOnWritePagesNumber in interface DataStorageMetricsMXBeanpublic void enableMetrics()
enableMetrics in interface DataStorageMetricsMXBeanpublic void disableMetrics()
disableMetrics in interface DataStorageMetricsMXBeanpublic void rateTimeInterval(long rateTimeInterval)
DataStorageConfiguration.setMetricsRateTimeInterval(long) configuration property.rateTimeInterval in interface DataStorageMetricsMXBeanrateTimeInterval - Time interval (in milliseconds) used for allocation and eviction rates calculations.public void subIntervals(int subInts)
DataStorageMetricsMXBean.rateTimeInterval(long) will be split into to calculate
rate-based metrics. Identical to setting DataStorageConfiguration.setMetricsSubIntervalCount(int) configuration
property.subIntervals in interface DataStorageMetricsMXBeansubInts - A number of sub-intervals.public void wal(IgniteWriteAheadLogManager wal)
wal - Write-ahead log manager.public boolean metricsEnabled()
public void onCheckpoint(long lockWaitDuration,
long markDuration,
long pagesWriteDuration,
long fsyncDuration,
long duration,
long totalPages,
long dataPages,
long cowPages)
lockWaitDuration - Lock wait duration.markDuration - Mark duration.pagesWriteDuration - Pages write duration.fsyncDuration - Total checkpoint fsync duration.duration - Total checkpoint duration.totalPages - Total number of all pages in checkpoint.dataPages - Total number of data pages in checkpoint.cowPages - Total number of COW-ed pages in checkpoint.public void onWalRecordLogged()
public void onWalBytesWritten(int size)
size - Size written.public void onFsync(long nanoTime)
nanoTime - Fsync nano time.public void onBuffPollSpin(int num)
num - Number.
Follow @ApacheIgnite
Ignite Fabric : ver. 2.4.0 Release Date : March 5 2018