Package io.prometheus.client
Class SampleNameFilter
- java.lang.Object
-
- io.prometheus.client.SampleNameFilter
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classSampleNameFilter.AllowAllstatic classSampleNameFilter.Builder
-
Field Summary
Fields Modifier and Type Field Description static Predicate<java.lang.String>ALLOW_ALLFor convenience, a filter that allows all names.private java.util.Collection<java.lang.String>nameDoesNotStartWithprivate java.util.Collection<java.lang.String>nameIsEqualToprivate java.util.Collection<java.lang.String>nameIsNotEqualToprivate java.util.Collection<java.lang.String>nameStartsWith
-
Constructor Summary
Constructors Modifier Constructor Description privateSampleNameFilter(java.util.Collection<java.lang.String> nameIsEqualTo, java.util.Collection<java.lang.String> nameIsNotEqualTo, java.util.Collection<java.lang.String> nameStartsWith, java.util.Collection<java.lang.String> nameDoesNotStartWith)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Predicate<java.lang.String>and(Predicate<? super java.lang.String> other)Replacement for Java 8'sPredicate.and()for compatibility with Java versions < 8.private booleanmatchesNameDoesNotStartWith(java.lang.String metricName)private booleanmatchesNameEqualTo(java.lang.String metricName)private booleanmatchesNameNotEqualTo(java.lang.String metricName)private booleanmatchesNameStartsWith(java.lang.String metricName)static Predicate<java.lang.String>restrictToNamesEqualTo(Predicate<java.lang.String> filter, java.util.Collection<java.lang.String> allowedNames)Helper method to compose a filter such that Sample names must match the existing filter and be in the list of allowedNames This should be used to implement thenames[]query parameter in HTTP exporters.static java.util.List<java.lang.String>stringToList(java.lang.String s)Helper method to deserialize adelimiter-separated list of Strings into aList<String>.booleantest(java.lang.String sampleName)
-
-
-
Field Detail
-
ALLOW_ALL
public static final Predicate<java.lang.String> ALLOW_ALL
For convenience, a filter that allows all names.
-
nameIsEqualTo
private final java.util.Collection<java.lang.String> nameIsEqualTo
-
nameIsNotEqualTo
private final java.util.Collection<java.lang.String> nameIsNotEqualTo
-
nameStartsWith
private final java.util.Collection<java.lang.String> nameStartsWith
-
nameDoesNotStartWith
private final java.util.Collection<java.lang.String> nameDoesNotStartWith
-
-
Method Detail
-
test
public boolean test(java.lang.String sampleName)
-
and
public Predicate<java.lang.String> and(Predicate<? super java.lang.String> other)
Replacement for Java 8'sPredicate.and()for compatibility with Java versions < 8.
-
matchesNameEqualTo
private boolean matchesNameEqualTo(java.lang.String metricName)
-
matchesNameNotEqualTo
private boolean matchesNameNotEqualTo(java.lang.String metricName)
-
matchesNameStartsWith
private boolean matchesNameStartsWith(java.lang.String metricName)
-
matchesNameDoesNotStartWith
private boolean matchesNameDoesNotStartWith(java.lang.String metricName)
-
stringToList
public static java.util.List<java.lang.String> stringToList(java.lang.String s)
Helper method to deserialize adelimiter-separated list of Strings into aList<String>.delimiteris one of, ; \t \n.This is implemented here so that exporters can provide a consistent configuration format for lists of allowed names.
-
restrictToNamesEqualTo
public static Predicate<java.lang.String> restrictToNamesEqualTo(Predicate<java.lang.String> filter, java.util.Collection<java.lang.String> allowedNames)
Helper method to compose a filter such that Sample names must- match the existing filter
- and be in the list of allowedNames
names[]query parameter in HTTP exporters.- Parameters:
filter- may be null, indicating that the resulting filter should just filter byallowedNames.allowedNames- may be null or empty, indicating thatfilteris returned unmodified.- Returns:
- a filter combining the exising
filterand theallowedNames, ornullif both parameters werenull.
-
-