Matthieu MOREL
c2b4de3611
refactor (package model): move from github.com/pkg/errors to 'errors' and 'fmt' packages ( #10747 )
...
Signed-off-by: Matthieu MOREL <mmorel-35@users.noreply.github.com>
Co-Authored-By: Julien Pivotto <roidelapluie@gmail.com>
Co-authored-by: Julien Pivotto <roidelapluie@gmail.com>
2 years ago
beorn7
c954cd9d1d
Move packages out of deprecated pkg directory
...
This creates a new `model` directory and moves all data-model related
packages over there:
exemplar labels relabel rulefmt textparse timestamp value
All the others are more or less utilities and have been moved to `util`:
gate logging modetimevfs pool runtime
Signed-off-by: beorn7 <beorn@grafana.com>
3 years ago
shreyassrivatsan
e825282dd1
Add exemplar support to the openmetrics parser ( #6292 )
...
* Add exemplar support to the openmetrics parser
Signed-off-by: Shreyas Srivatsan <shreyas@chronosphere.io>
5 years ago
Tariq Ibrahim
8fdfa8abea
refine error handling in prometheus ( #5388 )
...
i) Uses the more idiomatic Wrap and Wrapf methods for creating nested errors.
ii) Fixes some incorrect usages of fmt.Errorf where the error messages don't have any formatting directives.
iii) Does away with the use of fmt package for errors in favour of pkg/errors
Signed-off-by: tariqibrahim <tariq181290@gmail.com>
6 years ago
Brian Brazil
3fdb92010e
Expand OM to OpenMetrics
...
Signed-off-by: Brian Brazil <brian.brazil@robustperception.io>
6 years ago
Brian Brazil
ffe7efb411
Prepare for multiple text formats
...
Pass content type down to text parser.
Add layer of indirection in front of text parser,
and rename to avoid future clashes.
Signed-off-by: Brian Brazil <brian.brazil@robustperception.io>
6 years ago
Brian Brazil
70c98a06f1
Handle empty HELP in text parser. ( #4444 )
...
Fixes #4427
Signed-off-by: Brian Brazil <brian.brazil@robustperception.io>
6 years ago
Fabian Reinartz
76a4a46cb0
pkg/textparse: refactor and add metadata handling
...
Extends the parser to allow retrieving metadata.
The lexer now yields proper tokens that are fed into a hand-written
parser on top.
Signed-off-by: Fabian Reinartz <freinartz@google.com>
7 years ago
Filip Ochnik
ec1c6b7c29
textparse: reject empty label names
7 years ago
Julius Volz
c3d6abc8e6
Fix some lint errors ( #3334 )
...
I left the promql ones and some others untouched as I remember that @fabxc
prefers them that way.
7 years ago
Julius Volz
c6f41ce391
Allow metric and label names to begin with underscores ( #2961 )
...
While this is not recommended, it is allowed in our data model
(https://prometheus.io/docs/concepts/data_model/ ).
Fixes https://github.com/prometheus/prometheus/issues/2959
7 years ago
Goutham Veeramachaneni
b7eddbcd98
textparse: Add fuzzing and fix bug caught
...
See https://github.com/cznic/golex/issues/11 for info on the bug
Signed-off-by: Goutham Veeramachaneni <cs14btech11014@iith.ac.in>
7 years ago
Goutham Veeramachaneni
0e78b7e7c8
parser: support spaces everywhere
...
Signed-off-by: Goutham Veeramachaneni <cs14btech11014@iith.ac.in>
7 years ago
Brian Brazil
dd07f693c8
Single quotes are not valid label value delimiters.
8 years ago
Brian Brazil
a6ca391e6e
Reject scrapes with invalid utf-8 label values.
8 years ago
Fabian Reinartz
bdc763f95f
pkg/textparse: allow null bytes in label values
8 years ago
Fabian Reinartz
ea09299ca5
pkg/textparse: handle trailing labels comma ( #2752 )
8 years ago
Brian Brazil
beaa7d5a43
Move consistent NaN logic into the parser.
8 years ago
Fabian Reinartz
f7c5d96e84
pkg/textparse: parse metric names with ':'
8 years ago
Fabian Reinartz
377886b371
pkg/textparse: implement timestamp parsing
8 years ago
Brian Brazil
5c9a6ce747
Add license to files.
...
This should fix CI for dev-2.0.
8 years ago
Fabian Reinartz
d80a3de235
pkg/textparse: add documentation
8 years ago
Fabian Reinartz
fb3ab9bdb7
pkg/textparse: add more benchmarking, align lex defs
8 years ago
Fabian Reinartz
e44d80314d
pkg/textparse: add tests and method to retrieve full labels
8 years ago
Fabian Reinartz
091a7f2395
pkg/textparse: add initial text parser
8 years ago