Manik Rana
d80bab7705
refac: rename skipCT to skipCTSeries
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-08-05 15:24:10 +05:30
Manik Rana
6d0144c16d
refac: default skipCT to false
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-08-05 15:20:13 +05:30
Manik Rana
4a3e8d13ad
chore: rename var
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-18 17:33:08 +05:30
Manik Rana
d0d82e5d16
chore: comments
...
Co-authored-by: Arthur Silva Sens <arthursens2005@gmail.com>
Signed-off-by: Manik Rana <Manikrana54@gmail.com>
2024-07-18 17:31:41 +05:30
Manik Rana
e88a189975
chore: comments
...
Co-authored-by: Arthur Silva Sens <arthursens2005@gmail.com>
Signed-off-by: Manik Rana <Manikrana54@gmail.com>
2024-07-18 17:30:59 +05:30
Manik Rana
72acd0c58f
chore: lint
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-17 19:30:23 +05:30
Manik Rana
0572ddc1c0
fix: add NewMetricsParserWithOpts
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-17 19:26:42 +05:30
Manik Rana
3d6b522aca
fix: use p.builder in deepCopy
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-15 13:51:31 +05:30
Manik Rana
14394fb466
chore: add new label in deepCopy
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-15 13:47:13 +05:30
Manik Rana
b8fcacddda
chore: lint
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 01:07:06 +05:30
Manik Rana
5d19275c01
refac: edit expectCT struct
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 01:04:43 +05:30
Manik Rana
91f8694613
tests: add tests for CT parse failures and deepCopy
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
36e87385cb
chore: comments
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
e9a0619ede
chore: lint
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
e6f6165c9b
chore: remove mName
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
0d7ac7caf5
chore: add tests and lint fixes
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
b225050b68
refac: optimize CreatedTimestamp()
...
- Use refactored CreatedTimestamp function with bug fixes
- Remove unused code in labels.go
- Improve code documentation
Signed-off-by: Manik Rana <manikrana54@gmail.com>
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
f62664a8e9
feat: document CreatedTimestamp func
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
b768e24e26
refac: dedeuplicate labeldiff checks
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
c4b2a14590
refac: readability updates
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
84bc9d6c3f
fix: cover edgecase of gauge_created
in CreatedTimestamp()
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
e9391dd61f
feat: document deepcopyparser
...
Co-authored-by: Arthur Silva Sens <arthursens2005@gmail.com>
Signed-off-by: Manik Rana <Manikrana54@gmail.com>
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
9c4bc807be
fix: comments
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
8ea8352fdc
chore: cleanup
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
e37930d973
chore: update go fmt version
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
4102f415d3
fix: return nil when mtype doesn't match
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
50615b4b80
chore: remove unneeded comments
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
eba98775c7
fix: retore failing tests
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
7708b78a43
fix: restore previous tests
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
96e850df7e
feat: advance parser and parse histograms + summary
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
ea9c8cb5a3
fix: check if err from p.Next()
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
e841e00eed
feat: multiple changes
...
- implement changes from pair programming session
- use newParse.val()
- advance parser p if ct is found
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
188d4cc927
chore: add comments
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
cbb4e07aa2
chore: remove unneeded test
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
03f2a90394
feat: return ct after finding it
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Manik Rana
7e8899241a
feat: initial implement of createedTimestamp() with tests
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-07-12 00:48:36 +05:30
Arthur Silva Sens
07355c9199
Bump client_golang to 1.19
...
Signed-off-by: Arthur Silva Sens <arthur.sens@coralogix.com>
2024-03-06 09:11:13 -03:00
Ondrej Kokes
2e30f1231b
docs: textparse.Parser return type mismatch
...
The docs suggest the Next method returns a bool, but that's not the case (`Entry` is an int).
```
// Next advances the parser to the next sample. It returns false if no
// more samples were read or an error occurred.
Next() (Entry, error)
```
The docs were first added in d80a3de235
in 2017. Back then the signature was
indeed `func (p *Parser) Next() bool`. But then it got refactored in 76a4a46cb0
and the signature changed with it, yet docs stayed the same - and eventually made their way into the `Parser` interface.
However, the Protobuf parser does have the right wording: 5de2df752f
```
// Next advances the parser to the next "sample" (emulating the behavior of a
// text format parser). It returns (EntryInvalid, io.EOF) if no samples were
// read.
```
Changing all other implementations (and the interface itself) to match this doc.
Signed-off-by: Ondrej Kokes <ondrej.kokes@gmail.com>
2024-02-29 16:45:05 +01:00
Bryan Boreham
ba6aa95222
refactor: metrics parsing: extract common checking code
...
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2024-02-26 16:37:41 +00:00
Bryan Boreham
eff3a13e19
model/textparse: parsers take a labels SymbolTable
...
This allows strings to be interned to save memory.
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2024-02-26 11:45:25 +00:00
Bryan Boreham
93b72ec5dd
tsdb: create SymbolTables for labels as required
...
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2024-02-26 11:45:25 +00:00
Łukasz Mierzwa
5597020a60
Use github.com/klauspost/compress for gzip and zlib
...
klauspost/compress is a high quality drop-in replacement for common Go
compression libraries. Since Prometheus sends out a lot of HTTP requests
that often return compressed output having improved compression
libraries helps to save cpu & memory resources.
On a test Prometheus server I was able to see cpu reduction from 31 to
30 cores.
Benchmark results:
name old time/op new time/op delta
TargetScraperGzip/metrics=1-8 69.4µs ± 4% 69.2µs ± 3% ~ (p=0.122 n=50+50)
TargetScraperGzip/metrics=100-8 84.3µs ± 2% 80.9µs ± 2% -4.02% (p=0.000 n=48+46)
TargetScraperGzip/metrics=1000-8 296µs ± 1% 274µs ±14% -7.35% (p=0.000 n=47+45)
TargetScraperGzip/metrics=10000-8 2.06ms ± 1% 1.66ms ± 2% -19.34% (p=0.000 n=47+45)
TargetScraperGzip/metrics=100000-8 20.9ms ± 2% 17.5ms ± 3% -16.50% (p=0.000 n=49+50)
name old alloc/op new alloc/op delta
TargetScraperGzip/metrics=1-8 6.06kB ± 0% 6.07kB ± 0% +0.24% (p=0.000 n=48+48)
TargetScraperGzip/metrics=100-8 7.04kB ± 0% 6.89kB ± 0% -2.17% (p=0.000 n=49+50)
TargetScraperGzip/metrics=1000-8 9.02kB ± 0% 8.35kB ± 1% -7.49% (p=0.000 n=50+50)
TargetScraperGzip/metrics=10000-8 18.1kB ± 1% 16.1kB ± 2% -10.87% (p=0.000 n=47+47)
TargetScraperGzip/metrics=100000-8 1.21MB ± 0% 1.01MB ± 2% -16.69% (p=0.000 n=36+50)
name old allocs/op new allocs/op delta
TargetScraperGzip/metrics=1-8 71.0 ± 0% 72.0 ± 0% +1.41% (p=0.000 n=50+50)
TargetScraperGzip/metrics=100-8 81.0 ± 0% 76.0 ± 0% -6.17% (p=0.000 n=50+50)
TargetScraperGzip/metrics=1000-8 92.0 ± 0% 83.0 ± 0% -9.78% (p=0.000 n=50+50)
TargetScraperGzip/metrics=10000-8 93.0 ± 0% 91.0 ± 0% -2.15% (p=0.000 n=50+50)
TargetScraperGzip/metrics=100000-8 111 ± 0% 135 ± 1% +21.89% (p=0.000 n=40+50)
Signed-off-by: Łukasz Mierzwa <l.mierzwa@gmail.com>
2024-02-22 17:08:15 +00:00
Björn Rabenstein
ac10cd4d99
Merge pull request #13271 from ywwg/owilliams/utf8
...
UTF-8: Add partial support for parsing UTF-8 metric and label names
2024-02-16 11:42:55 +01:00
Owen Williams
a28d7865ad
UTF-8: Add support for parsing UTF8 metric and label names
...
This adds support for the new grammar of `{"metric_name", "l1"="val"}` to promql and some of the exposition formats.
This grammar will also be valid for non-UTF-8 names.
UTF-8 names will not be considered valid unless model.NameValidationScheme is changed.
This does not update the go expfmt parser in text_parse.go, which will be addressed by https://github.com/prometheus/common/issues/554/ .
Part of https://github.com/prometheus/prometheus/issues/13095
Signed-off-by: Owen Williams <owen.williams@grafana.com>
2024-02-15 14:34:37 -05:00
Ziqi Zhao
a93859a52f
Prometheus support parse exemplars from native histogram ( #13488 )
...
scrape: support parsing exemplars from native histogram
---------
Signed-off-by: Ziqi Zhao <zhaoziqi9146@gmail.com>
Signed-off-by: Björn Rabenstein <github@rabenste.in>
Co-authored-by: Björn Rabenstein <github@rabenste.in>
2024-02-14 17:24:40 +01:00
Bryan Boreham
17f48f2b3b
Tests: use replacement DeepEquals in more places
...
Signed-off-by: Bryan Boreham <bjboreham@gmail.com>
2024-02-08 19:32:33 +00:00
Björn Rabenstein
3db4596965
Merge pull request #13299 from vesari/add-unit-parser
...
protobuf: add unit parser
2024-01-09 14:47:50 +01:00
Arianna Vespri
8f07f9dd90
Avoid creating string for suffix, consider counters without _total suffix
...
Signed-off-by: Arianna Vespri <arianna.vespri@yahoo.it>
2023-12-28 15:41:38 +01:00
Arianna Vespri
9a664b515a
Correct order in error message
...
Signed-off-by: Arianna Vespri <arianna.vespri@yahoo.it>
2023-12-20 09:41:37 +01:00
Arianna Vespri
51e78d9a32
Delete debugging lines, amend error message for unit
...
Signed-off-by: Arianna Vespri <arianna.vespri@yahoo.it>
2023-12-20 09:31:58 +01:00