Package org.opensearch.telemetry.metrics
Class OTelMetricsTelemetry<T extends io.opentelemetry.api.metrics.MeterProvider & Closeable>
java.lang.Object
org.opensearch.telemetry.metrics.OTelMetricsTelemetry<T>
- All Implemented Interfaces:
Closeable,AutoCloseable,MetricsRegistry,MetricsTelemetry
public class OTelMetricsTelemetry<T extends io.opentelemetry.api.metrics.MeterProvider & Closeable>
extends Object
implements MetricsTelemetry
OTel implementation for
MetricsTelemetry-
Constructor Summary
ConstructorsConstructorDescriptionOTelMetricsTelemetry(RefCountedReleasable<io.opentelemetry.sdk.OpenTelemetrySdk> openTelemetry, T meterProvider) Creates OTel basedMetricsTelemetry. -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()createCounter(String name, String description, String unit) createGauge(String name, String description, String unit, Supplier<Double> valueProvider, org.opensearch.telemetry.metrics.tags.Tags tags) createGauge(String name, String description, String unit, Supplier<TaggedMeasurement> value) createHistogram(String name, String description, String unit) Creates the Otel Histogram.createUpDownCounter(String name, String description, String unit)
-
Constructor Details
-
OTelMetricsTelemetry
public OTelMetricsTelemetry(RefCountedReleasable<io.opentelemetry.sdk.OpenTelemetrySdk> openTelemetry, T meterProvider) Creates OTel basedMetricsTelemetry.- Parameters:
openTelemetry- open telemetry.meterProvider-MeterProviderinstance
-
-
Method Details
-
createCounter
- Specified by:
createCounterin interfaceMetricsRegistry
-
createUpDownCounter
- Specified by:
createUpDownCounterin interfaceMetricsRegistry
-
createHistogram
Creates the Otel Histogram. InOTelResourceProviderwe can configure the bucketing/aggregation strategy through view. Default startegy configured is theBase2ExponentialHistogramAggregation.- Specified by:
createHistogramin interfaceMetricsRegistry- Parameters:
name- name of the histogram.description- any description about the metric.unit- unit of the metric.- Returns:
- histogram
-
createGauge
public Closeable createGauge(String name, String description, String unit, Supplier<Double> valueProvider, org.opensearch.telemetry.metrics.tags.Tags tags) - Specified by:
createGaugein interfaceMetricsRegistry
-
createGauge
public Closeable createGauge(String name, String description, String unit, Supplier<TaggedMeasurement> value) - Specified by:
createGaugein interfaceMetricsRegistry
-
close
- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Throws:
IOException
-