Package com.aerospike.client.metrics
Class MetricsPolicy
java.lang.Object
com.aerospike.client.metrics.MetricsPolicy
Client periodic metrics configuration.
-
Field Summary
FieldsModifier and TypeFieldDescriptionintNumber of cluster tend iterations between metrics notification events.Labels that can be sent to the metrics outputintNumber of elapsed time range buckets in latency histograms.intPower of 2 multiple between each range bucket in latency histograms starting at column 3.Listener that handles metrics notification events.Directory path to write metrics log files for listeners that write logs.longMetrics file size soft limit in bytes for listeners that write logs. -
Constructor Summary
ConstructorsConstructorDescriptionDefault constructor.MetricsPolicy(MetricsPolicy other) Copy constructor.MetricsPolicy(MetricsPolicy other, com.aerospike.client.configuration.serializers.Configuration config, boolean metricsEnabled) Copy metrics policy from another metrics policy AND override certain policy attributes if they exist in the configProvider. -
Method Summary
Modifier and TypeMethodDescriptionbooleanvoidsetInterval(int interval) voidvoidsetLatencyColumns(int latencyColumns) voidsetLatencyShift(int latencyShift) voidsetListener(MetricsListener listener) voidsetMetricsRestartRequired(boolean metricsRestartRequired) voidsetReportDir(String reportDir) voidsetReportSizeLimit(long reportSizeLimit)
-
Field Details
-
listener
Listener that handles metrics notification events. The default listener implementation writes the metrics snapshot to a file which will later be read and forwarded to OpenTelemetry by a separate offline application.The listener could be overridden to send the metrics snapshot directly to OpenTelemetry.
-
reportDir
Directory path to write metrics log files for listeners that write logs.Default:
-
reportSizeLimit
public long reportSizeLimitMetrics file size soft limit in bytes for listeners that write logs.When reportSizeLimit is reached or exceeded, the current metrics file is closed and a new metrics file is created with a new timestamp. If reportSizeLimit is zero, the metrics file size is unbounded and the file will only be closed when
AerospikeClient.disableMetrics()orAerospikeClient.close()is called.Default: 0
-
interval
public int intervalNumber of cluster tend iterations between metrics notification events. One tend iteration is defined asClientPolicy.tendInterval(default 1 second) plus the time to tend all nodes.Default: 30
-
latencyColumns
public int latencyColumnsNumber of elapsed time range buckets in latency histograms.Default: 7
-
latencyShift
public int latencyShiftPower of 2 multiple between each range bucket in latency histograms starting at column 3. The bucket units are in milliseconds. The first 2 buckets are "<=1ms" and ">1ms". Examples:
Default: 1// latencyColumns=7 latencyShift=1 <=1ms >1ms >2ms >4ms >8ms >16ms >32ms // latencyColumns=5 latencyShift=3 <=1ms >1ms >8ms >64ms >512ms -
labels
Labels that can be sent to the metrics output
-
-
Constructor Details
-
MetricsPolicy
public MetricsPolicy(MetricsPolicy other, com.aerospike.client.configuration.serializers.Configuration config, boolean metricsEnabled) Copy metrics policy from another metrics policy AND override certain policy attributes if they exist in the configProvider. -
MetricsPolicy
Copy constructor. -
MetricsPolicy
public MetricsPolicy()Default constructor.
-
-
Method Details
-
setListener
-
setReportDir
-
setReportSizeLimit
public void setReportSizeLimit(long reportSizeLimit) -
setInterval
public void setInterval(int interval) -
setLatencyColumns
public void setLatencyColumns(int latencyColumns) -
setLatencyShift
public void setLatencyShift(int latencyShift) -
setLabels
-
isMetricsRestartRequired
public boolean isMetricsRestartRequired() -
setMetricsRestartRequired
public void setMetricsRestartRequired(boolean metricsRestartRequired)
-