Class Log4JMetricsReporter
java.lang.Object
io.nosqlbench.nb.api.components.core.NBBaseComponentMetrics
io.nosqlbench.nb.api.components.core.NBBaseComponent
io.nosqlbench.nb.api.components.core.UnstartedPeriodicTaskComponent
io.nosqlbench.nb.api.components.core.PeriodicTaskComponent
io.nosqlbench.nb.api.engine.metrics.reporters.Log4JMetricsReporter
- All Implemented Interfaces:
NBComponent,NBComponentAdvisors,NBComponentEvents,NBComponentMetrics,NBComponentProps,NBComponentServices,NBComponentTimeline,NBProviderSearch,NBTokenWords,NBLabeledElement,AutoCloseable,Runnable
This is a Log4J targeted metrics logging reporter, derived from
Slf4jReporter. This implementation
was built to allow for consolidating internal logging dependencies
to log4j only.-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class io.nosqlbench.nb.api.components.core.UnstartedPeriodicTaskComponent
UnstartedPeriodicTaskComponent.FirstReport, UnstartedPeriodicTaskComponent.LastReportNested classes/interfaces inherited from interface io.nosqlbench.nb.api.labels.NBLabeledElement
NBLabeledElement.BasicLabeledElement -
Field Summary
Fields inherited from class io.nosqlbench.nb.api.components.core.UnstartedPeriodicTaskComponent
intervalmillisFields inherited from class io.nosqlbench.nb.api.components.core.NBBaseComponent
bufferOrphanedMetrics, closed_ns, error, errored_ns, labels, metricsBuffer, parent, started_epoch_ms, started_ns, state, teardown_nsFields inherited from interface io.nosqlbench.nb.api.components.core.NBComponent
EMPTY_COMPONENTFields inherited from interface io.nosqlbench.nb.api.components.core.NBComponentProps
HDRDIGITS, SUMMARYFields inherited from interface io.nosqlbench.nb.api.labels.NBLabeledElement
EMPTY -
Constructor Summary
ConstructorsConstructorDescriptionLog4JMetricsReporter(NBComponent component, NBCreators.LoggerProxy loggerProxy, org.apache.logging.log4j.Marker marker, com.codahale.metrics.MetricFilter filter, NBLabels extraLabels, long millis, boolean oneLastTime) -
Method Summary
Modifier and TypeMethodDescriptionprotected doubleconvertDuration(double duration) protected doubleconvertRate(double rate) protected Stringvoidreport(List<NBMetricGauge> gauges, List<NBMetricCounter> counters, List<NBMetricHistogram> histograms, List<NBMetricMeter> meters, List<NBMetricTimer> timers) protected voidtask()This task should only do what is needed once each period.Methods inherited from class io.nosqlbench.nb.api.components.core.UnstartedPeriodicTaskComponent
run, start, teardownMethods inherited from class io.nosqlbench.nb.api.components.core.NBBaseComponent
addAdvisor, addMetricsCloseable, attachChild, beforeDetach, close, create, detachChild, find, findParentService, getAdvisors, getChildren, getComponentOnlyLabels, getComponentProp, getComponentState, getLabels, getNanosSinceStart, getParent, getTokens, nanosof_close, nanosof_error, nanosof_start, nanosof_teardown, onError, onEvent, reportExecutionMetric, setComponentProp, started_epoch_ms, toStringMethods inherited from class io.nosqlbench.nb.api.components.core.NBBaseComponentMetrics
addComponentMetric, addListener, findComponentMetrics, findComponentMetrics, getComponentMetric, getComponentMetrics, removeListenerMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface io.nosqlbench.nb.api.components.core.NBComponentAdvisors
getAdvisorResultsMethods inherited from interface io.nosqlbench.nb.api.components.core.NBComponentMetrics
addComponentMetric, findComponentMetrics, findComponentMetrics, findOneComponentMetric, findOneComponentMetric, getComponentMetric, getComponentMetricsMethods inherited from interface io.nosqlbench.nb.api.labels.NBLabeledElement
description
-
Constructor Details
-
Log4JMetricsReporter
public Log4JMetricsReporter(NBComponent component, NBCreators.LoggerProxy loggerProxy, org.apache.logging.log4j.Marker marker, com.codahale.metrics.MetricFilter filter, NBLabels extraLabels, long millis, boolean oneLastTime)
-
-
Method Details
-
task
protected void task()Description copied from class:UnstartedPeriodicTaskComponentThis task should only do what is needed once each period. If it throws any exceptions, then these exceptions will cause the period task to exit. Thus, if you need to allow failures in some cases while keeping the caller (scheduler) active, all errors should be caught and handled internally.- Specified by:
taskin classUnstartedPeriodicTaskComponent
-
report
public void report(List<NBMetricGauge> gauges, List<NBMetricCounter> counters, List<NBMetricHistogram> histograms, List<NBMetricMeter> meters, List<NBMetricTimer> timers) -
convertDuration
protected double convertDuration(double duration) -
convertRate
protected double convertRate(double rate) -
getRateUnit
-