All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.apache.rocketmq.shaded.io.opentelemetry.sdk.metrics.internal.state.MeterProviderSharedState Maven / Gradle / Ivy

There is a newer version: 5.0.7
Show newest version
/*
 * Copyright The OpenTelemetry Authors
 * SPDX-License-Identifier: Apache-2.0
 */

package org.apache.rocketmq.shaded.io.opentelemetry.sdk.metrics.internal.state;

import org.apache.rocketmq.shaded.com.google.auto.value.AutoValue;
import org.apache.rocketmq.shaded.io.opentelemetry.sdk.common.Clock;
import org.apache.rocketmq.shaded.io.opentelemetry.sdk.metrics.internal.exemplar.ExemplarFilter;
import org.apache.rocketmq.shaded.io.opentelemetry.sdk.metrics.internal.view.ViewRegistry;
import org.apache.rocketmq.shaded.io.opentelemetry.sdk.resources.Resource;
import javax.annotation.concurrent.Immutable;

/**
 * State for a {@code MeterProvider}.
 *
 * 

This class is internal and is hence not for public use. Its APIs are unstable and can change * at any time. */ @AutoValue @Immutable public abstract class MeterProviderSharedState { public static MeterProviderSharedState create( Clock clock, Resource resource, ViewRegistry viewRegistry, ExemplarFilter exemplarFilter) { return new AutoValue_MeterProviderSharedState( clock, resource, viewRegistry, clock.now(), exemplarFilter); } MeterProviderSharedState() {} /** Returns the clock used for measurements. */ public abstract Clock getClock(); /** Returns the {@link Resource} to attach telemetry to. */ abstract Resource getResource(); /** Returns the {@link ViewRegistry} for custom aggregation and metric definitions. */ abstract ViewRegistry getViewRegistry(); /** * Returns the timestamp when this {@code MeterProvider} was started, in nanoseconds since Unix * epoch time. */ abstract long getStartEpochNanos(); /** Returns the {@link ExemplarFilter} for remembering synchronous measurements. */ abstract ExemplarFilter getExemplarFilter(); }





© 2015 - 2024 Weber Informatics LLC | Privacy Policy