Brian Brazil
3fdb92010e
Expand OM to OpenMetrics
...
Signed-off-by: Brian Brazil <brian.brazil@robustperception.io>
2018-10-18 14:16:41 +01:00
Brian Brazil
9c03e11c2c
Hook OpenMetrics parser into scraping.
...
Extend metadata api to support units.
Signed-off-by: Brian Brazil <brian.brazil@robustperception.io>
2018-10-18 13:58:00 +01:00
Brian Brazil
c271ef456a
Add an OpenMetrics parser.
...
This is based on the existing parser, and has slightly better
performance (few %) than it.
Signed-off-by: Brian Brazil <brian.brazil@robustperception.io>
2018-10-18 13:58:00 +01:00
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>
2018-10-18 13:58:00 +01:00
Brian Brazil
70c98a06f1
Handle empty HELP in text parser. ( #4444 )
...
Fixes #4427
Signed-off-by: Brian Brazil <brian.brazil@robustperception.io>
2018-08-01 13:29:58 +01:00
Fabian Reinartz
0ff42e754e
pkg/textparse: unescape help string
...
Signed-off-by: Fabian Reinartz <freinartz@google.com>
2018-06-06 05:56:10 -04:00
Fabian Reinartz
5fcc5b6028
pkg/textparse: support null bytes in comments and help
...
Signed-off-by: Fabian Reinartz <freinartz@google.com>
2018-06-04 11:34:34 -04:00
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>
2018-05-25 11:27:25 -04:00
Filip Ochnik
ec1c6b7c29
textparse: reject empty label names
2018-02-04 17:37:46 +01:00
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.
2017-10-23 14:57:30 +01:00
Goutham Veeramachaneni
11ee713ced
Handle common escape characters properly. ( #2995 )
...
Fixes #2974
Signed-off-by: Goutham Veeramachaneni <cs14btech11014@iith.ac.in>
2017-07-27 15:15:41 +02:00
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
2017-07-18 12:35:41 +02:00
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>
2017-07-07 11:12:17 +02:00
Goutham Veeramachaneni
0e78b7e7c8
parser: support spaces everywhere
...
Signed-off-by: Goutham Veeramachaneni <cs14btech11014@iith.ac.in>
2017-07-05 15:52:21 +02:00
Brian Brazil
dd07f693c8
Single quotes are not valid label value delimiters.
2017-06-20 10:54:39 +01:00
Brian Brazil
a6ca391e6e
Reject scrapes with invalid utf-8 label values.
2017-06-20 10:54:39 +01:00
Fabian Reinartz
bc7aff8cef
retrieval: extract scrape cache
2017-05-30 09:37:23 -07:00
Fabian Reinartz
a83014f53c
retrieval: fix memory leak and consumption for caches
2017-05-26 08:44:24 +02:00
Fabian Reinartz
bdc763f95f
pkg/textparse: allow null bytes in label values
2017-05-24 14:52:46 +02:00
Fabian Reinartz
ea09299ca5
pkg/textparse: handle trailing labels comma ( #2752 )
2017-05-22 11:15:40 +02:00
Brian Brazil
beaa7d5a43
Move consistent NaN logic into the parser.
2017-05-16 18:33:51 +01:00
Fabian Reinartz
f7c5d96e84
pkg/textparse: parse metric names with ':'
2017-05-09 12:21:19 +02:00
Fabian Reinartz
377886b371
pkg/textparse: implement timestamp parsing
2017-04-27 17:02:07 +02:00
Brian Brazil
5c9a6ce747
Add license to files.
...
This should fix CI for dev-2.0.
2017-04-19 13:46:22 +01:00
Fabian Reinartz
d9fb57cde4
*: Simplify []byte to string unsafe conversion
2017-03-07 11:41:11 +01:00
Fabian Reinartz
d80a3de235
pkg/textparse: add documentation
2017-01-17 08:16:47 +01:00
Fabian Reinartz
db48726a6b
pkg/textparse: allocate single string per metric
2017-01-16 17:24:00 +01:00
Fabian Reinartz
c691895a0f
retrieval: cache series references, use pkg/textparse
...
With this change the scraping caches series references and only
allocates label sets if it has to retrieve a new reference.
pkg/textparse is used to do the conditional parsing and reduce
allocations from 900B/sample to 0 in the general case.
2017-01-16 12:03:57 +01:00
Fabian Reinartz
fb3ab9bdb7
pkg/textparse: add more benchmarking, align lex defs
2017-01-15 17:32:57 +01:00
Fabian Reinartz
e44d80314d
pkg/textparse: add tests and method to retrieve full labels
2017-01-14 19:30:19 +01:00
Fabian Reinartz
091a7f2395
pkg/textparse: add initial text parser
2017-01-14 16:39:04 +01:00