Package org.apache.iceberg.metrics
Interface MetricsContext
-
- All Superinterfaces:
java.io.Serializable
- All Known Subinterfaces:
FileIOMetricsContext
- All Known Implementing Classes:
HadoopMetricsContext
,ReaderMetricsContext
public interface MetricsContext extends java.io.Serializable
Generalized interface for creating telemetry related instances for tracking operations. Implementations must take into account usage considerations like thread safety and serialization.
-
-
Nested Class Summary
Nested Classes Modifier and Type Interface Description static interface
MetricsContext.Counter<T extends java.lang.Number>
static class
MetricsContext.Unit
-
Method Summary
All Methods Static Methods Instance Methods Default Methods Modifier and Type Method Description default <T extends java.lang.Number>
MetricsContext.Counter<T>counter(java.lang.String name, java.lang.Class<T> type, MetricsContext.Unit unit)
Get a named counter of a specific type.default void
initialize(java.util.Map<java.lang.String,java.lang.String> properties)
static MetricsContext
nullMetrics()
Utility method for producing no metrics.
-
-
-
Method Detail
-
initialize
default void initialize(java.util.Map<java.lang.String,java.lang.String> properties)
-
counter
default <T extends java.lang.Number> MetricsContext.Counter<T> counter(java.lang.String name, java.lang.Class<T> type, MetricsContext.Unit unit)
Get a named counter of a specific type. Metric implementations may impose restrictions on what types are supported for specific counters.- Parameters:
name
- name of the metrictype
- numeric type of the counter valueunit
- the unit designation of the metric- Returns:
- a counter implementation
-
nullMetrics
static MetricsContext nullMetrics()
Utility method for producing no metrics.- Returns:
- a non-recording metrics context
-
-