From 60c24e450010df38cfcb4f65df874f6f9b26dbcb Mon Sep 17 00:00:00 2001 From: George Krajcsovits Date: Thu, 20 Nov 2025 08:40:58 +0100 Subject: [PATCH] feat(om2): exemplar timestamp MAY to SHOULD (#2775) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Make the exemplar timestamp a SHOULD in preparation for complex types having multiple exemplars at a time. We'll explain why having timestamp for exemplars of complex types is a good idea there. Signed-off-by: György Krajcsovits --- docs/specs/om/open_metrics_spec_2_0.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/specs/om/open_metrics_spec_2_0.md b/docs/specs/om/open_metrics_spec_2_0.md index 3045cf7c..35676a22 100644 --- a/docs/specs/om/open_metrics_spec_2_0.md +++ b/docs/specs/om/open_metrics_spec_2_0.md @@ -108,7 +108,7 @@ Each MetricPoint consists of a set of values, depending on the MetricFamily type Exemplars are references to data outside of the MetricSet. A common use case are IDs of program traces. -Exemplars MUST consist of a LabelSet and a value, and MAY have a timestamp. They MAY each be different from the MetricPoints' LabelSet and timestamp. +Exemplars MUST consist of a LabelSet and a value, and SHOULD have a timestamp. They MAY each be different from the MetricPoints' LabelSet and timestamp. The combined length of the label names and values of an Exemplar's LabelSet MUST NOT exceed 128 UTF-8 character code points. Other characters in the text rendering of an exemplar such as `",=` are not included in this limit for implementation simplicity and for consistency between the text and proto formats.