Manik Rana
3e66526214
chore: comments
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-08-06 11:01:35 +05:30
Manik Rana
11aeea2d4e
refac: inline create a NewOpenMetricsParser
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-08-06 10:52:07 +05:30
Manik Rana
e372021a55
refac: extract skipCTSeries logic from parseMetricSuffix
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-08-06 10:41:51 +05:30
Manik Rana
af0481f4be
chore: lint
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-08-05 22:21:13 +05:30
Manik Rana
50c2d2ce69
refac: remove NewOpenMetricsParserWithOpts
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-08-05 22:18:28 +05:30
Manik Rana
e4a9124db0
chore: comments
...
Co-authored-by: Bartlomiej Plotka <bwplotka@gmail.com>
Signed-off-by: Manik Rana <Manikrana54@gmail.com>
2024-08-05 22:05:36 +05:30
Manik Rana
debe023afa
chore: comments and readability updates
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-08-05 21:38:05 +05:30
Manik Rana
49bf90c897
chore: formatting
...
Signed-off-by: Manik Rana <manikrana54@gmail.com>
2024-08-05 15:29:27 +05:30
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