Enum Class VeniceAdaptiveThrottlerType
java.lang.Object
java.lang.Enum<VeniceAdaptiveThrottlerType>
com.linkedin.venice.stats.dimensions.VeniceAdaptiveThrottlerType
- All Implemented Interfaces:
VeniceDimensionInterface,Serializable,Comparable<VeniceAdaptiveThrottlerType>,Constable
public enum VeniceAdaptiveThrottlerType
extends Enum<VeniceAdaptiveThrottlerType>
implements VeniceDimensionInterface
Dimension enum for adaptive throttler types.
AdaptiveThrottlingServiceStats eagerly
creates a joint Tehuti+OTel metric state for every enum value at construction time. The enum
constant name (lowercased) is used as the OTel dimension value.
Each throttler type carries a MetricUnit indicating what it measures:
MetricUnit.NUMBER for record-count throttlers and MetricUnit.BYTES for
bandwidth throttlers. This is used by AdaptiveThrottlingServiceStats to route
recordings to the appropriate OTel metric entity (RECORD_COUNT vs BYTE_COUNT).
Only MetricUnit.NUMBER and MetricUnit.BYTES are currently supported.
Adding a new unit requires updating AdaptiveThrottlingServiceStats.getMetricEntityForType().
-
Nested Class Summary
Nested classes/interfaces inherited from class java.lang.Enum
Enum.EnumDesc<E extends Enum<E>> -
Enum Constant Summary
Enum Constants -
Method Summary
Modifier and TypeMethodDescriptionDimension name: Returns theVeniceMetricsDimensionsfor the enum.ReturnsMetricUnit.NUMBERfor record-count throttlers,MetricUnit.BYTESfor bandwidth.static VeniceAdaptiveThrottlerTypeReturns the enum constant of this class with the specified name.static VeniceAdaptiveThrottlerType[]values()Returns an array containing the constants of this enum class, in the order they are declared.Methods inherited from class java.lang.Enum
clone, compareTo, describeConstable, equals, finalize, getDeclaringClass, hashCode, name, ordinal, toString, valueOfMethods inherited from interface com.linkedin.venice.stats.dimensions.VeniceDimensionInterface
getDimensionValue
-
Enum Constant Details
-
PUBSUB_CONSUMPTION_RECORDS_COUNT
-
PUBSUB_CONSUMPTION_BANDWIDTH
-
CURRENT_VERSION_AA_WC_LEADER_RECORDS_COUNT
-
CURRENT_VERSION_NON_AA_WC_LEADER_RECORDS_COUNT
-
NON_CURRENT_VERSION_AA_WC_LEADER_RECORDS_COUNT
-
NON_CURRENT_VERSION_NON_AA_WC_LEADER_RECORDS_COUNT
-
-
Method Details
-
values
Returns an array containing the constants of this enum class, in the order they are declared.- Returns:
- an array containing the constants of this enum class, in the order they are declared
-
valueOf
Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)- Parameters:
name- the name of the enum constant to be returned.- Returns:
- the enum constant with the specified name
- Throws:
IllegalArgumentException- if this enum class has no constant with the specified nameNullPointerException- if the argument is null
-
getMetricUnit
ReturnsMetricUnit.NUMBERfor record-count throttlers,MetricUnit.BYTESfor bandwidth. -
getDimensionName
Description copied from interface:VeniceDimensionInterfaceDimension name: Returns theVeniceMetricsDimensionsfor the enum. All the instances of a Enum class should have the same dimension name. Ideally this could have been a static variable/method in the Enum class, but to enforce having this method via this interface, it is made as a non-static method.- Specified by:
getDimensionNamein interfaceVeniceDimensionInterface
-