prometheus/model/textparse
Bartlomiej Plotka 8e6b008608
feature: type-and-unit-labels (PROM-39 implementation) (#16228)
* feature: type-and-unit-labels (extended MetricIdentity)

Experimental implementation of https://github.com/prometheus/proposals/pull/39

Previous (unmerged) experiments:
* https://github.com/prometheus/prometheus/compare/main...dashpole:prometheus:type_and_unit_labels
* https://github.com/prometheus/prometheus/pull/16025

Signed-off-by: bwplotka <bwplotka@gmail.com>

feature: type-and-unit-labels (extended MetricIdentity)

Experimental implementation of https://github.com/prometheus/proposals/pull/39

Previous (unmerged) experiments:
* https://github.com/prometheus/prometheus/compare/main...dashpole:prometheus:type_and_unit_labels
* https://github.com/prometheus/prometheus/pull/16025

Signed-off-by: bwplotka <bwplotka@gmail.com>

* Fix compilation errors

Signed-off-by: Arthur Silva Sens <arthursens2005@gmail.com>

Lint

Signed-off-by: Arthur Silva Sens <arthursens2005@gmail.com>

Revert change made to protobuf 'Accept' header

Signed-off-by: Arthur Silva Sens <arthursens2005@gmail.com>

Fix compilation errors for 'dedupelabels' tag

Signed-off-by: Arthur Silva Sens <arthursens2005@gmail.com>

* Rectored into schema.Metadata

Signed-off-by: bwplotka <bwplotka@gmail.com>

* texparse: Added tests for PromParse

Signed-off-by: bwplotka <bwplotka@gmail.com>

* add OM tests.

Signed-off-by: bwplotka <bwplotka@gmail.com>

* add proto tests

Signed-off-by: bwplotka <bwplotka@gmail.com>

* Addressed comments.

Signed-off-by: bwplotka <bwplotka@gmail.com>

* add schema label tests.

Signed-off-by: bwplotka <bwplotka@gmail.com>

* addressed comments.

Signed-off-by: bwplotka <bwplotka@gmail.com>

* fix tests.

Signed-off-by: bwplotka <bwplotka@gmail.com>

* add promql tests.

Signed-off-by: bwplotka <bwplotka@gmail.com>

* lint

Signed-off-by: bwplotka <bwplotka@gmail.com>

* Addressed comments.

Signed-off-by: bwplotka <bwplotka@gmail.com>

---------

Signed-off-by: bwplotka <bwplotka@gmail.com>
Signed-off-by: Arthur Silva Sens <arthursens2005@gmail.com>
Co-authored-by: Arthur Silva Sens <arthursens2005@gmail.com>
2025-05-17 09:37:25 +00:00
..
testdata textparse: Refactor benchmark testdata for all types. (#15998) 2025-02-10 12:26:18 +00:00
benchmark_test.go feature: type-and-unit-labels (PROM-39 implementation) (#16228) 2025-05-17 09:37:25 +00:00
interface_test.go feature: type-and-unit-labels (PROM-39 implementation) (#16228) 2025-05-17 09:37:25 +00:00
interface.go feature: type-and-unit-labels (PROM-39 implementation) (#16228) 2025-05-17 09:37:25 +00:00
nhcbparse_test.go feature: type-and-unit-labels (PROM-39 implementation) (#16228) 2025-05-17 09:37:25 +00:00
nhcbparse.go textparse: Optimize CreatedTimestamp; It returns int64 value now. (#16072) 2025-03-07 12:43:13 +00:00
openmetricslex.l bugfix: allow quoted exemplar keys in openmetrics text format 2024-11-12 15:29:44 +00:00
openmetricslex.l.go bugfix: allow quoted exemplar keys in openmetrics text format 2024-11-12 15:29:44 +00:00
openmetricsparse_test.go feature: type-and-unit-labels (PROM-39 implementation) (#16228) 2025-05-17 09:37:25 +00:00
openmetricsparse.go feature: type-and-unit-labels (PROM-39 implementation) (#16228) 2025-05-17 09:37:25 +00:00
promlex.l UTF-8: Add support for parsing UTF8 metric and label names 2024-02-15 14:34:37 -05:00
promlex.l.go UTF-8: Add support for parsing UTF8 metric and label names 2024-02-15 14:34:37 -05:00
promparse_test.go feature: type-and-unit-labels (PROM-39 implementation) (#16228) 2025-05-17 09:37:25 +00:00
promparse.go feature: type-and-unit-labels (PROM-39 implementation) (#16228) 2025-05-17 09:37:25 +00:00
protobufparse_test.go feature: type-and-unit-labels (PROM-39 implementation) (#16228) 2025-05-17 09:37:25 +00:00
protobufparse.go feature: type-and-unit-labels (PROM-39 implementation) (#16228) 2025-05-17 09:37:25 +00:00
README.md Move packages out of deprecated pkg directory 2021-11-09 08:03:10 +01:00

Making changes to textparse lexers

In the rare case that you need to update the textparse lexers, edit promlex.l or openmetricslex.l and then run the following command: golex -o=promlex.l.go promlex.l

Note that you need golex installed: go get -u modernc.org/golex