public class Labels
extends java.lang.Object
implements java.lang.Cloneable
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
DEBUG
Debug log level.
|
static java.lang.String |
FATAL
Fatal log level.
|
static java.lang.String |
INFO
Info log level.
|
static java.lang.String |
LEVEL
Log level definition.
|
static java.lang.String |
TRACE
Trace log level (the same as verbose).
|
static java.lang.String |
UNKNOWN
Unknown log level.
|
static java.lang.String |
VERBOSE
Verbose log level.
|
static java.lang.String |
WARN
Warning log level.
|
| Constructor and Description |
|---|
Labels()
Default constructor.
|
Labels(Labels other)
Creates a deep copy of other labels.
|
Labels(java.util.Map<java.lang.String,java.lang.String> map)
Creates the labels from a given map.
|
| Modifier and Type | Method and Description |
|---|---|
static void |
assertLabelIdentifierNotNullOrEmpty(java.lang.String labelIdentifier)
Verifies if
labelIdentifier is not null and not empty. |
static boolean |
checkLabelIdentifierWhenNotEmpty(java.lang.String labelIdentifier)
Deprecated.
|
static boolean |
checkLabelNameWhenNotEmpty(java.lang.String labelName)
Checks whether label name meets the following rules:
Label contains only letters, digits or
_
First character is letter or _
Label names beginning with __ are reserved for internal use
|
Labels |
clone()
Creates a deep copy of this object.
|
static java.lang.String |
correctLabelName(java.lang.String labelName)
Corrects label name to meet the rules:
Label contains only letters, digits or
_
First character is letter or _
Label names beginning with __ are reserved for internal use
|
Labels |
critical()
|
Labels |
debug()
Sets
label level to DEBUG. |
boolean |
equals(java.lang.Object other)
Compares this instance with other instance.
|
Labels |
fatal()
Sets
label level to FATAL. |
static Labels |
from(java.util.Map<java.lang.String,java.lang.String> labels)
Creates a new instance of
Labels from given Map object. |
java.util.Map<java.lang.String,java.lang.String> |
getMap() |
int |
hashCode()
Provides hash code.
|
Labels |
info()
Sets
label level to INFO. |
static boolean |
isNameFirstCharacterCorrect(char firstChar)
Checks whether first character is a letter or
_. |
static boolean |
isNameNotFirstCharacterCorrect(char notFirstChar)
Checks whether not-first character is a letter, digit or
_. |
static boolean |
isNameReservedForInternalUse(java.lang.String labelName)
Checks whether label name begins with
__, which is reserved for internal use. |
Labels |
l(Labels other)
Put other labels values.
|
Labels |
l(java.util.Map<java.lang.String,java.lang.String> map)
Put a map with labels.
|
Labels |
l(java.lang.String labelName,
java.lang.String labelValue)
Add a new label and return this object.
|
static java.lang.String |
narrowLabelIdentifierLength(java.lang.String labelIdentifier,
int maxLength)
Cuts down identifier if it is too long.
|
static Labels |
prettify(Labels labels,
int maxLabelNameLength,
int maxLabelValueLength)
Creates a new
Labels object with corrected label values, so such labels will be accepted by Grafana Loki
server. |
static Labels |
prettify(Labels labels,
LabelSettings labelSettings)
Creates a new
Labels object with corrected label values, so such labels will be accepted by Grafana Loki
server. |
static java.lang.String |
prettifyLabelIdentifier(java.lang.String labelIdentifier)
Deprecated.
This method will be removed in the future release. Use
prettifyLabelIdentifier(String, int)
instead. |
static java.lang.String |
prettifyLabelIdentifier(java.lang.String labelIdentifier,
int maxLength)
Deprecated.
Use
prettifyLabelName(String, int) or prettifyLabelValue(String, int) instead. |
static java.lang.String |
prettifyLabelName(java.lang.String labelName,
int maxLength)
Replaces invalid characters with `_` character.
|
static java.lang.String |
prettifyLabelValue(java.lang.String labelValue,
int maxLength)
Cuts down identifier if it is too long.
|
java.lang.String |
toString() |
Labels |
trace()
|
Labels |
unknown()
Sets
label level to UNKNOWN. |
static void |
validateLabelIdentifierOrThrow(java.lang.String labelIdentifier)
Deprecated.
This method is unnecessary and will be removed in the future.
|
Labels |
verbose()
Sets
label level to VERBOSE. |
Labels |
warning()
Sets
label level to WARN. |
public static final java.lang.String LEVEL
public static final java.lang.String FATAL
public static final java.lang.String WARN
public static final java.lang.String INFO
public static final java.lang.String DEBUG
public static final java.lang.String VERBOSE
public static final java.lang.String TRACE
public static final java.lang.String UNKNOWN
public Labels()
public Labels(Labels other)
other - Other labels instance.public Labels(java.util.Map<java.lang.String,java.lang.String> map)
map - Given map is copied to internal Labels map.public static void assertLabelIdentifierNotNullOrEmpty(java.lang.String labelIdentifier)
labelIdentifier is not null and not empty.labelIdentifier - Label name or labelIdentifier value.java.lang.RuntimeException - When label identifier is null or empty.@Deprecated public static void validateLabelIdentifierOrThrow(java.lang.String labelIdentifier)
labelIdentifier - Label name or label value to check.java.lang.RuntimeException - when given label identifier is invalid.@Deprecated public static boolean checkLabelIdentifierWhenNotEmpty(java.lang.String labelIdentifier)
checkLabelNameWhenNotEmpty(String)labelIdentifier - Label name or label value to check.public static boolean isNameFirstCharacterCorrect(char firstChar)
_. See label naming rules documentation:
Data model | PrometheusfirstChar - First character of label name.public static boolean isNameNotFirstCharacterCorrect(char notFirstChar)
_. See label naming rules documentation:
Data model | PrometheusnotFirstChar - Not first character of label name.public static boolean isNameReservedForInternalUse(java.lang.String labelName)
__, which is reserved for internal use. See label naming rules
documentation:
Data model | PrometheuslabelName - Full name of a label.public static boolean checkLabelNameWhenNotEmpty(java.lang.String labelName)
__See naming rules documentation: Data model | Prometheus
It doesn't check whether the length of label name is lower than any length limit.
labelName - Label name to check.public static java.lang.String correctLabelName(java.lang.String labelName)
__See naming rules documentation: Data model | Prometheus
labelName - Label name to correct.public static java.lang.String prettifyLabelName(java.lang.String labelName,
int maxLength)
Cuts down label name if it is too long.
labelName - Label name to check.maxLength - Maximum accepted length of label name.java.lang.RuntimeException - when given labelName is null or empty.public static java.lang.String narrowLabelIdentifierLength(java.lang.String labelIdentifier,
int maxLength)
labelIdentifier - Label name or value to check.maxLength - Maximum accepted length of label value.java.lang.RuntimeException - when given labelIdentifier is null or empty.public static java.lang.String prettifyLabelValue(java.lang.String labelValue,
int maxLength)
labelValue - Label value to check.maxLength - Maximum accepted length of label value.java.lang.RuntimeException - when given labelValue is null or empty.@Deprecated
public static java.lang.String prettifyLabelIdentifier(java.lang.String labelIdentifier,
int maxLength)
prettifyLabelName(String, int) or prettifyLabelValue(String, int) instead.Cuts down identifier if it is too long.
labelIdentifier - Label name or value to check.maxLength - Maximum accepted length of identifier.java.lang.RuntimeException - when given labelIdentifier is null or empty.@Deprecated public static java.lang.String prettifyLabelIdentifier(java.lang.String labelIdentifier)
prettifyLabelIdentifier(String, int)
instead.Doesn't verify max length of identifier.
labelIdentifier - Label name or value to check.java.lang.RuntimeException - when given labelIdentifier is null or empty.public static Labels prettify(Labels labels, int maxLabelNameLength, int maxLabelValueLength)
Labels object with corrected label values, so such labels will be accepted by Grafana Loki
server.labels - Labels to prettify.maxLabelNameLength - Max length of valid label name. Based on: Grafana Loki server
configuration.maxLabelValueLength - Max length of valid label value. Based on: Grafana Loki server
configuration.Labels object with corrected label values, so such labels will be accepted by Grafana Loki
server.public static Labels prettify(Labels labels, LabelSettings labelSettings)
Labels object with corrected label values, so such labels will be accepted by Grafana Loki
server.
Used by LogController to pass correct labels to the server.
labels - Labels to prettify. Label length limits: Grafana Loki server
configuration. Label naming rules: Data model |
PrometheuslabelSettings - Label parameters.Labels object with corrected label values, so such labels will be accepted by Grafana Loki
server.public static Labels from(java.util.Map<java.lang.String,java.lang.String> labels)
Labels from given Map object.labels - Map with label-name mapped to label-value pairs.Labels.public java.util.Map<java.lang.String,java.lang.String> getMap()
Map representation of labels content. User should not modify given map because modified
values will not be checked for validity.public Labels clone()
clone in class java.lang.Objectjava.lang.RuntimeException - When any member doesn't implement Cloneable.public boolean equals(java.lang.Object other)
Two instances are equal when its labels are equal. Label's length limits doesn't matter.
equals in class java.lang.Objectother - Other object instance.public int hashCode()
Object.hashCode().hashCode in class java.lang.Objectpublic java.lang.String toString()
toString in class java.lang.Objectpublic Labels l(java.lang.String labelName, java.lang.String labelValue)
labelName - Label name. Valid label identifier starts with letter and contains only letters, digits or
'_'.labelValue - Label value. Valid label identifier starts with letter and contains only letters, digits or
'_'.java.lang.RuntimeException - when given labelName or labelValue is null or empty.public Labels l(java.util.Map<java.lang.String,java.lang.String> map)
map - Map containing label key - value pairs.java.lang.RuntimeException - when given map contains null or empty keys or values.public Labels l(Labels other)
other - Other Labels instance.public Labels critical()
label level to FATAL, the same as fatal().
Only one level may be assigned to single log stream. Setting other level will override previous value.
public Labels fatal()
label level to FATAL.
Only one level may be assigned to single log stream. Setting other level will override previous value.
public Labels warning()
label level to WARN.
Only one level may be assigned to single log stream. Setting other level will override previous value.
public Labels info()
label level to INFO.
Only one level may be assigned to single log stream. Setting other level will override previous value.
public Labels debug()
label level to DEBUG.
Only one level may be assigned to single log stream. Setting other level will override previous value.
public Labels verbose()
label level to VERBOSE.
Only one level may be assigned to single log stream. Setting other level will override previous value.
public Labels trace()
label level to TRACE, the same as VERBOSE.
Only one level may be assigned to single log stream. Setting other level will override previous value.
public Labels unknown()
label level to UNKNOWN.
Only one level may be assigned to single log stream. Setting other level will override previous value.