Releases: go-faster/oteldb
Releases · go-faster/oteldb
v0.11.1
v0.11.0
Changelog
CI/CD updates
Updates to tests
Other work
- a2ded9d: --- (@dependabot[bot])
- 380d0a6: --- (@dependabot[bot])
Docker images
ghcr.io/go-faster/oteldb:v0.11.0
v0.10.0
Changelog
New Features
- d51c1b8: feat(chstorage): offload sampling to Clickhouse (@tdakkota)
- ef690b6: feat(logql): parse
or
in line filters (@tdakkota) - 2250aa6: feat(logql): parse logfmt flags (@tdakkota)
- df1dc3a: feat(logql): parse pattern line filters (@tdakkota)
- f29231d: feat(logql-compliance-tester): add a flag to print diffs to stdout (@tdakkota)
- 46887fc: feat(logql-compliance-tester): add an option to exclude unsupported (@tdakkota)
- bce26df: feat(logql-compliance-tester): add tool to test LogQL compliance (@tdakkota)
- d6da84e: feat(logql-compliance-tester): count unsuccessful results (@tdakkota)
- 07bdbf0: feat(logql-compliance-tester): generate logs outside the query range (@tdakkota)
- 2ce3c99: feat(logql-compliance-tester): print diff of incompatiable results (@tdakkota)
- 57b524b: feat(logqlabels): add label utilities package (@tdakkota)
- b781f38: feat(logqlmetric): implement
absent_over_time
(@tdakkota) - 7498c4b: feat(logqlmetric): implement
rate_counter
(@tdakkota) - bb3c124: feat(logqlpattern): support line filter patterns (@tdakkota)
- d25e5d1: feat(lokicompliance): add more fields to generated logs (@tdakkota)
- a6a326b: feat(lokicompliance): add package to test LogQL engine compliance (@tdakkota)
- 6b0d5ca: feat(lokicompliance): add responses to resulting json (@tdakkota)
- 0d46f36: feat(lokicompliance): add simple log generator (@tdakkota)
- fd40d8d: feat(lokicompliance): add unexpected non-empty result to report (@tdakkota)
- db662d2: feat(lokicompliance): check if result is empty (@tdakkota)
- c5e4fb5: feat(lokicompliance): detect template args automatically (@tdakkota)
- 748eb1b: feat(lokicompliance): disallow unknown config fields (@tdakkota)
- 9b5755a: feat(lokicompliance): emit more fields (@tdakkota)
- d7fb867: feat(lokicompliance): generate IP labels (@tdakkota)
- bc1f436: feat(lokicompliance): generate duration and bytes labels (@tdakkota)
- caeb80f: feat(otelbench): add SubmitReport stub (@ernado)
- 097737a: feat(otelbench): add
otel logs
benchmark (@tdakkota) - 64762cb: feat(otelbench): init submitReport (@ernado)
- 5f7d972: feat(otelbench): report written entries and bytes per second (@tdakkota)
- e6dce74: feat(oteldb): enable chstorage optimizer (@tdakkota)
- 3539891: feat(prometheusremotewrite): map exemplars too (@tdakkota)
- a5bb9bf: feat(prometheusremotewrite): support native histograms (@tdakkota)
- adc6b2b: feat(prompb): implement exemplar and histogram parsing (@tdakkota)
- 30cedaf: feat(prompb): implement timestamp getters (@tdakkota)
Bug fixes
- e3817d1: fix(chstorage): do not offload heap aggregation sampling (@tdakkota)
- b7a7e5a: fix(chstorage): do not offload new line filters (@tdakkota)
- 7d7c2ef: fix(chstorage): do not optimize sampling for unwrapped range aggregation (@tdakkota)
- c949711: fix(chstorage): insert observed timetamp in case if timestamp is zero (@tdakkota)
- 3059bfc: fix(chstorage): map grouping labels too (@tdakkota)
- 4073dd8: fix(chstorage): properly instrument sample query (@tdakkota)
- 63f1c76: fix(chstorage): remove async metric batching (@ernado)
- a721e64: fix(chstorage): use right field name for log message (@tdakkota)
- dd7d201: fix(logql): allow single
=
when parsing IP label matcher (@tdakkota) - ddc2c07: fix(logql): binary expression can be applied only to metric expressions (@tdakkota)
- fbb5ade: fix(logql): properly parse rename in
label_format
(@tdakkota) - 4fc933f: fix(logql): properly parse right-assoc operators (@tdakkota)
- ebb92a4: fix(logql-compliance): add non-literal queries (@tdakkota)
- 0e9c2a1: fix(logql-compliance): adjust Loki query limit (@tdakkota)
- 9f321f5: fix(logql-compliance): collect logs from promtail (@tdakkota)
- 62c9eb1: fix(logql-compliance): remove invalid queries (@tdakkota)
- a7c61c7: fix(logql-compliance-tester): do not try to read
nil
result (@tdakkota) - 37980bd: fix(logql-compliance-tester): print actual total (@tdakkota)
- 302b214: fix(logql-compliance-tester): print test summary anyway (@tdakkota)
- b2e4186: fix(logql-compliance-tester): properly expand test cases (@tdakkota)
- e430dbc: fix(logql-compliance-tester): respect
output-passing
flag (@tdakkota) - 5b5d31a: fix(logql-compliance-tester): respect parallelism setting (@tdakkota)
- 41b7fad: fix(logql-compliance-tester): use exponential back off when pinging (@tdakkota)
- 7765ec3: fix(logql-compliance-tester): use predicatable log generator (@tdakkota)
- 33eb5c6: fix(logql-compliance-tester): use proper time range to do ping query (@tdakkota)
- 284a6d0: fix(logql-compliance-tester): wait until ingester is available (@tdakkota)
- 445e781: fix(logql-compliance-tester): wait until instance gets some data (@tdakkota)
- 8dda095: fix(logqlabels): sort entries after adding a new one (@tdakkota)
- 4b76a40: fix(logqlengine): do not set message as label (@tdakkota)
- 39bcfb9: fix(logqlengine): include one step after end (@tdakkota)
- b08f77d: fix(logqlengine): make otel adapter opt-in (@tdakkota)
- d75a852: fix(logqlengine): remove unwrap label from sampled entry (@tdakkota)
- 09724e8: fix(logqlengine): remove unwrap label from sampled entry (@tdakkota)
- fc5759d: fix(logqlengine): respect direction parameter (@tdakkota)
- 1c0e7ad: fix(logqlengine): restore otel adapter (@tdakkota)
- 650fc73: fix(logqlengine): sort labels before computing hash (@tdakkota)
- d7f11b3: fix(logqlengine): truncate range by step (@tdakkota)
- c8ee43d: fix(logqlmetric): do not group vector aggregation by default (@tdakkota)
- 87ce232: fix(logqlmetric): make range aggregation Loki-compatiable (@tdakkota)
- 585e4e1: fix(logqlmetric): properly handle
bool
modifier (@tdakkota) - d51b6fb: fix(logqlpattern): validate UTF-8 in pattern (@tdakkota)
- efea944: fix(lokiapi): return all errors as JSON string (@tdakkota)
- daabe93: fix(lokicompliance): add more expand variables (@tdakkota)
- e1f28e5: fix(lokicompliance): convert fpoint strings to floats (@tdakkota)
- 49eae85: fix(lokicompliance): exclude
absent_over_time
from simple range aggregations (@tdakkota) - d6ece80: fix(lokicompliance): ignore stats (@tdakkota)
- 75ae255: fix(lokicompliance): properly handle not implemented errors (@tdakkota)
- 2d626a9: fix(lokicompliance): sort collected variant args (@tdakkota)
- 51f7842: fix(lokicompliance): sort response data before compare (@tdakkota)
- d9bbeb8: fix(lokicompliance): use only valid quantiles (@tdakkota)
- 2c14d78: fix(lokihandler): properly handle unsupported error (@tdakkota)
- 57c2fde: fix(oas): remove log entries limit from spec (@tdakkota)
- aa18f7e: fix(otelbench): report formatting (@tdakkota)
- 052a57e: fix(otelbench): run clickhouse reporter (@tdakkota)
- af125d8: fix(otelbench): wait for receiver readiness (@tdakkota)
- 8ba294f: fix(prometheusremotewrite): update code due to collector changes (@tdakkota)
- a2c0505: fix(prometheusremotewritereceiver): do not use deprecated error (@tdakkota)
- 1ff96e6: fix(prompb): re-use timeseries (@tdakkota)
###...
v0.9.0
Changelog
Benchmarks
- a100443: ci(bench): fix cache key (@ernado)
- 2a0d03c: ci(bench): set GITHUB_TOKEN env (@ernado)
- 60fb6da: feat(otelbench): add ping path (@ernado)
- 976d3fb: feat(otelbench): bootstrap api implementation (@ernado)
- f5ea3ea: feat(otelbench): init db for benchmark results (@ernado)
- 7adb4cf: feat(otelbench.api): also check github token (@ernado)
- ced08b6: feat(otelbench.promql): add query id (@ernado)
- 63c2115: feat(otelbench.promql.bench): add --concurrent mode (@ernado)
- 7ec5a62: feat(otelbench.promrw.replay): add --report flag (@ernado)
Bug fixes
Performance updates
- a3eb073: perf(chstorage): do not make an unnecessary copy of encoded attributes (@tdakkota)
- d06609c: perf(chstorage): pass
lazyAttributes
by value (@tdakkota) - bb12960: perf(oteldb): add default.pgo (@ernado)
- 19c47a6: perf(oteldb): upd default.pgo (@ernado)
- a4d3c17: perf(oteldb): update default.pgo (@ernado)
- 5206cfa: perf(otelstorage): add
Hash
benchmark (@tdakkota) - 60b8d63: perf(otelstorage): optimize allocations in
Hash
(@tdakkota) - b596b06: perf(otelstorage): optimize sorting in
Hash
(@tdakkota)
CI/CD updates
- 044fbeb: ci(deploy): enable ingress for otelbot (@ernado)
- 84edf76: ci(deploy): fix image tag again (@ernado)
- 1fae6a8: ci(goreleaser): reorder categories, add test category (@ernado)
- 422a0d1: ci(goreleaser): update categories (@ernado)
- 978f474: ci: add otelbench api invocation test (@ernado)
- d52da25: ci: fix image tag (@ernado)
- c9d358c: ci: trimpath (@ernado)
Helm chart updates
Docker images
ghcr.io/go-faster/oteldb:v0.9.0
v0.8.0
Changelog
New Features
- de11402: feat(otelbench): allow multiple targets and instances (@ernado)
- 43aec22: feat(otelbench): improve traces handling (@ernado)
- 51cad9b: feat(otelbench.promql.bench): add --warmup and --count flags (@ernado)
- 237cc13: feat(otelreciever): add attributes, resource, metricstransform processors (@ernado)
Performance updates
- 7f67481: perf(chstorage): just use json everywhere (@ernado)
- 4e48171: perf(chstorage): use attr arrays (@ernado)
- 1e2f1f8: perf(chstorage): use raw values for keys instead of cityhash (@ernado)
- e67ee0e: perf(chstorage.metrics): speed up queries with index (@ernado)
- f0f14c6: perf(remotewrite): use optimized protobuf (@ernado)
Bug fixes
CI/CD updates
- 45aaeaa: ci(bench): also analyze (@ernado)
- 2ff1699: ci(bench): also warmup (@ernado)
- 32bede5: ci(bench): decrease warmup iterations (@ernado)
- 85fc98d: ci(bench): download pwq (@ernado)
- 76f52c2: ci(bench): fix traces exporter (@ernado)
- 388653f: ci(bench): upload report (@ernado)
- bc4c340: ci: add promql benchmark (@ernado)
- 69f2ed3: ci: mirror images to ghcr (@ernado)
- 472f26e: ci: update clickhouse to 23.12 (@ernado)
Other work
- 5c52547: perf: add idx to other tables (@ernado)
- e782f08: perf: add more memory pools (@ernado)
- b15bdd7: perf: batch inserts in background (@ernado)
- 1e5efaa: perf: update idx definition (@ernado)
- 6d69639: perf: use chpool again (@ernado)
- 9006555: perf: use custom low-cardinality column for attr (@ernado)
- 3eea5d3: perf: use gomaxprocs as batcher count (@ernado)
- b9d76dd: test(chstorage): add Benchmark_metricsBatch (@ernado)
Docker images
ghcr.io/go-faster/oteldb:v0.8.0
v0.7.0
Changelog
New Features
- ac22714: feat(chstorage): write explicit 128-bit attr hash (@ernado)
- d87d897: feat(chstorage): write resource hashes to separate table (@ernado)
- d870db1: feat(chstorage.metrics): use maps for attributes (@ernado)
- eacd76c: feat(otelbench): improve error handling for target check (@ernado)
- d4042cf: feat(otelbench.promrw): add compression protocol flag (@ernado)
- 5b43ad4: feat(promrw): request writer (@ernado)
Performance updates
- 20d47fa: perf(chotel): reduce self-induced tracing (@ernado)
- a97c7c8: perf(chstorage.metrics): order by name_normalized (@ernado)
- ebd6479: perf(otelbench): add analyze command (@ernado)
- 74fa703: perf(otelbench): add promql query sender (@ernado)
- ac6e108: perf(otelbench): add traces capture (@ernado)
- 27556a6: perf(otelbench.promql): rework reports (@ernado)
- d4ab3b1: perf(otelbench.promql): sort report (@ernado)
- d7e4997: perf(otelbench.promql.analyze): print read rows (@ernado)
- 693ac99: perf(otelbench.promql.bench): add allow-empty flag (@ernado)
- f3c46d9: perf(otelbench.promql.bench): add time overrides (@ernado)
- f8252b6: perf(otelbench.promql.bench): add warmup (@ernado)
- b4236dc: perf(otelbench.promrw.record): allow disabling validation (@ernado)
- 295baf0: perf(promproxy): implement query recording (@ernado)
- 8984a81: perf(promrw): implement data load (@ernado)
- bdf07ef: perf(promrw): rewrite (@ernado)
Bug fixes
- a77cc1a: fix(chstorage): don't pool clickhouse clients (@ernado)
- 5858566: fix(chstorage): force setting meter provider (@ernado)
- c0d4f48: fix(chstorage): insert only mapped series names (@tdakkota)
- 05a0417: fix(chstorage): query normalized label values (@tdakkota)
- 1e554d6: fix(chstorage): store normalized metric name to query by (@tdakkota)
- 661af3e: fix(otelbench.promql): correctly compute duration (@ernado)
- 2e062a6: fix(promrw): fix target parsing (@ernado)
- c3a75d1: fix: correct schema for ttl (@ernado)
- b3d0860: fix: drop table if exists (@ernado)
- de4659d: fix: readiness probe path (@ernado)
- 796b0c8: fix: use toDateTime for ttl field (@ernado)
Documentation updates
CI/CD updates
- 30a4613: ci(deploy): increase timeout (@ernado)
- 2679fed: ci: deploy with helm (@ernado)
- 41da4a6: ci: don't apply service (@ernado)
- 1637413: ci: fix helm path (@ernado)
- fa7fa03: ci: remove tempo from otelcol cfg (@ernado)
- 66a7053: ci: set ttl (@ernado)
- ab6e789: ci: skip benchmarks in codecov (@ernado)
- 5c9e193: ci: skip testing suites (@ernado)
- eb75f79: ci: use helm deployment by default (@ernado)
Helm chart updates
Other work
- 9931e47: perf: fix start/end override parsing (@ernado)
- 25accd3: refactor(chstorage): do not use cryptic field name for normalized attribute name (@tdakkota)
- 7bdc283: refactor: move prombench to promrw (@ernado)
- 1f001a7: refactor: move promrw to otelbench binary (@ernado)
- 09ccdce: test(prome2e): query series by mapped name (@tdakkota)
- f58afe3: test(prome2e): update integration test due to inserter changes (@tdakkota)
Docker images
ghcr.io/go-faster/oteldb:v0.7.0
v0.6.1
v0.6.0
Changelog
New Features
- debed3a: feat(chstorage): support TTL and CLUSTER (@ernado)
- a6588aa: feat(chstorage.metrics): add metric name mapping (@ernado)
- d07515e: feat(ddl): init DDL helper (@ernado)
- a996d15: feat(helm): add config (@ernado)
- 40bf46a: feat(helm): update ports, image (@ernado)
- 6e83c0f: feat: add TTL to cfg (@ernado)
- 4291632: feat: add health checks (@ernado)
Bug fixes
CI/CD updates
Other work
- 24adfd7: docs(readme): add missing links (@ernado)
- a555470: docs(readme): add more references and license (@ernado)
- 85e9000: docs(readme): fix otelcol-contrib link (@ernado)
- f6f32d9: docs(readme): mention ClickHouse license (@ernado)
- 1570f45: docs(readme): not production ready (@ernado)
- 8ad23f3: docs(readme): reword (@ernado)
- cf1705f: docs(readme): upd (@ernado)
- 9bfd24c: docs(roadmap): add otel collector (@ernado)
- 3f1e529: docs(roadmap): init (@ernado)
- 2bcdb8b: docs(roadmap): upd attributes (@ernado)
- c237b7d: docs: add benchmarking (@ernado)
- b55a099: refactor(chstorage.metrics): use Columns (@ernado)
- cb8e635: test(ddl): use ColumnType.Sub (@ernado)
Docker images
ghcr.io/go-faster/oteldb:v0.6.0
v0.5.2
Changelog
Performance updates
Other work
- 41ff31f: Update hpa.yaml (@mk-raven)
- d302532: Update hpa.yaml (@mk-raven)
- 7a41c08: Update hpa.yaml (@mk-raven)
- 214ecf3: Update values.yaml (@mk-raven)
- 63758ea: refactor(chstorage): drop histogram and summary tables (@tdakkota)
Docker images
ghcr.io/go-faster/oteldb:0.5.2