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.SerializableGeneralized 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 interfaceMetricsContext.Counter<T extends java.lang.Number>static classMetricsContext.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 voidinitialize(java.util.Map<java.lang.String,java.lang.String> properties)static MetricsContextnullMetrics()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
-
-