Package org.eclipse.microprofile.metrics
Class MetricID
- java.lang.Object
-
- org.eclipse.microprofile.metrics.MetricID
-
- All Implemented Interfaces:
Comparable<MetricID>
public class MetricID extends Object implements Comparable<MetricID>
A unique identifier forMetric
andMetadata
that are registered in theMetricRegistry
The MetricID contains:Name
: (Required) The name of the metric.Tags
: (Optional) The tags (represented byTag
objects) of the metric. The tag name must match the regex `[a-zA-Z_][a-zA-Z0-9_]*` (Ascii alphabet, numbers and underscore). The tag value may contain any UTF-8 encoded character.
-
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description int
compareTo(MetricID other)
Compares two MetricID objects through the following steps:
Compares the names of the two MetricIDs lexicographically. If the names are equal: Compare the number of tags. If the tag lengths are equal: Compare the Tags (sorted by the Tag's key value) a) Compare the Tag names/keys lexicographically b) If keys are equal, compare the Tag values lexicographicallyboolean
equals(Object o)
String
getName()
Returns the Metric name associated with this MetricIDMap<String,String>
getTags()
Returns the underlying map containing the tags.Tag[]
getTagsAsArray()
Gets the list of tags as an array ofTag
objects.List<Tag>
getTagsAsList()
Gets the list of tags as a list ofTag
objectsString
getTagsAsString()
Gets the list of tags as a single String in the format 'key="value",key2="value2",...'int
hashCode()
String
toString()
-
-
-
Constructor Detail
-
MetricID
public MetricID(String name)
Constructs a MetricID with the given metric name and no tags. If global tags are available then they will be appended to this MetricID.- Parameters:
name
- the name of the metric
-
-
Method Detail
-
getName
public String getName()
Returns the Metric name associated with this MetricID- Returns:
- the Metric name associated with this MetricID
-
getTags
public Map<String,String> getTags()
Returns the underlying map containing the tags.- Returns:
- a
Map
of tags
-
getTagsAsString
public String getTagsAsString()
Gets the list of tags as a single String in the format 'key="value",key2="value2",...'- Returns:
- a String containing the tags
-
getTagsAsList
public List<Tag> getTagsAsList()
Gets the list of tags as a list ofTag
objects- Returns:
- a a list of Tag objects
-
getTagsAsArray
public Tag[] getTagsAsArray()
Gets the list of tags as an array ofTag
objects.- Returns:
- An array of tags
-
compareTo
public int compareTo(MetricID other)
Compares two MetricID objects through the following steps:
- Compares the names of the two MetricIDs lexicographically.
- If the names are equal: Compare the number of tags.
- If the tag lengths are equal: Compare the Tags (sorted by the Tag's key value)
- a) Compare the Tag names/keys lexicographically
- b) If keys are equal, compare the Tag values lexicographically
- Specified by:
compareTo
in interfaceComparable<MetricID>
- Parameters:
other
- the other MetricID
-
-