-
Notifications
You must be signed in to change notification settings - Fork 0
Releases: tsouza/cerberus
v1.0.0-rc.9
4453ae8 See CHANGELOG.md for the full list of changes.
What's Changed
- fix(promql): anchor instant range-vector window to time=T, not now64 wall-clock (rc.8 empty-window bug) by @tsouza in #956
Full Changelog: v1.0.0-rc.8...v1.0.0-rc.9
Docker image: docker pull ghcr.io/tsouza/cerberus:1.0.0-rc.9
Assets 8
v1.0.0-rc.8
50fae3f See CHANGELOG.md for the full list of changes.
What's Changed
- fix(prom): histogram_quantile sum_over_time, range/scalar, slash-name resolution (rc.7 GCP) by @tsouza in #954
- test(e2e): de-flake Traces-Drilldown init-race reconciler — capture ds/query body at request time by @tsouza in #955
Full Changelog: v1.0.0-rc.7...v1.0.0-rc.8
Docker image: docker pull ghcr.io/tsouza/cerberus:1.0.0-rc.8
Assets 8
v1.0.0-rc.7
71da2ff See CHANGELOG.md for the full list of changes.
What's Changed
- test(e2e): de-flake drilldown-apps at source (third-party init/teardown races) by @tsouza in #950
- fix(e2e): gateway waits for ClickHouse query-readiness (#82) + re-gate dashboard smoke shards by @tsouza in #951
- fix(e2e): gateway init must authenticate to ClickHouse (unbreak dashboard lane) by @tsouza in #952
- fix(promql): resolve standalone _sum/_count gauges instead of returning 0 series by @tsouza in #953
Full Changelog: v1.0.0-rc.6...v1.0.0-rc.7
Docker image: docker pull ghcr.io/tsouza/cerberus:1.0.0-rc.7
Assets 8
v1.0.0-rc.6
a485351 See CHANGELOG.md for the full list of changes.
What's Changed
Full Changelog: v1.0.0-rc.5...v1.0.0-rc.6
Docker image: docker pull ghcr.io/tsouza/cerberus:1.0.0-rc.6
Assets 8
v1.0.0-rc.5
44c2630 See CHANGELOG.md for the full list of changes.
What's Changed
- test(e2e): reconcile Traces Drilldown primarySignal-init race in drilldown-apps sweep by @tsouza in #946
- feat(prom): project OTel ResourceAttributes as Prometheus labels by @tsouza in #947
- fix(promql): keep native rate path live under rc.5 resource-attr merge + backfill chdb seeds by @tsouza in #948
Full Changelog: v1.0.0-rc.4...v1.0.0-rc.5
Docker image: docker pull ghcr.io/tsouza/cerberus:1.0.0-rc.5
Assets 8
v1.0.0-rc.4
f4a0cd5 See CHANGELOG.md for the full list of changes.
What's Changed
Full Changelog: v1.0.0-rc.3...v1.0.0-rc.4
Docker image: docker pull ghcr.io/tsouza/cerberus:1.0.0-rc.4
Assets 8
v1.0.0-rc.3
b1198aa See CHANGELOG.md for the full list of changes.
What's Changed
- fix(ddl): create the database over a bootstrap connection to
default(+ AUTO_CREATE_DATABASE gate) by @tsouza in #943 - fix(ddl): emit explicit ReplicatedMergeTree under a Replicated database by @tsouza in #944
Full Changelog: v1.0.0-rc.2...v1.0.0-rc.3
Docker image: docker pull ghcr.io/tsouza/cerberus:1.0.0-rc.3
Assets 8
v1.0.0-rc.2
3689560 See CHANGELOG.md for the full list of changes.
What's Changed
- docs(bench): replace rate-range ×ばつ2 matrix with a 3-strategy table by @tsouza in #937
- fix(e2e): gate telemetrygen on otel-collector-gateway readiness (#82) by @tsouza in #938
- fix: cold-cluster boot — REQUIREMENTS_CHECK no longer fatally exits on a missing database; AUTO_CREATE_SCHEMA creates it by @tsouza in #939
- refactor(chsql,ddl): typed DDL builder; parameterise the database engine (Replicated) by @tsouza in #940
- feat(config): wire CERBERUS_SCHEMA_* auto-create knobs + per-signal TTL by @tsouza in #941
- feat(config): accept Prometheus duration syntax for schema TTL (90d/2w/1y) by @tsouza in #942
Full Changelog: v1.0.0-rc.1...v1.0.0-rc.2
Docker image: docker pull ghcr.io/tsouza/cerberus:1.0.0-rc.2
Assets 8
v1.0.0-rc.1
f10ffbb Drop-in Prometheus / Loki / Tempo HTTP gateway for ClickHouse. Keep Grafana, alerting, and your CLI tooling — swap the backend.
This is the first release of cerberus. There is no prior version to diff against, so this note describes what the project is and where it stands rather than listing every change.
⚠️ Experimental — not production-ready. Cerberus is early and under active development. The differential harnesses run on every PR and score parity against real Prometheus / Loki / Tempo, but correctness, performance, and operational behaviour are still being shaken out and the surface is evolving. Validate it against your own corpus before pointing anything real at it, and expect breaking changes before GA.
What it is
Cerberus speaks the upstream Prometheus, Loki, and Tempo HTTP wire formats, so Grafana sees it as three drop-in datasources. Each query is parsed with that backend's reference parser, lowered into a shared plan IR, run through a rule-based optimizer, and emitted as parameterised ClickHouse SQL. One Go binary, one ClickHouse cluster — three observability query languages over a single columnar store.
- PromQL —
/api/v1/query,query_range,series,labels,label_values - LogQL — log + metric queries, line/label filters, structured-metadata labels
- TraceQL — span/trace search, structural operators, metrics queries
Highlights in this RC
- Three reference-parser heads over one shared plan IR + typed ClickHouse SQL emitter (no string-concatenated SQL).
- Differential parity, no allow-lists — every PR scores cerberus against a real Prometheus / Loki / Tempo on a seeded corpus. PromQL runs the CNCF PromQL Compliance Tester at 574/574 passing.
- Resilience — per-head circuit breaker with active background recovery, bounded query timeouts, admission control, and a full ClickHouse connection-config surface (
CERBERUS_CH_*). - Performance work — single-pass range aggregations, fan-out collapse for
*_over_time/histogram_quantile, N-ary set-op flattening, and PREWHERE / late-materialisation optimizer rules.
Install
Container image (linux/amd64 + arm64):
docker pull ghcr.io/tsouza/cerberus:1.0.0-rc.1
Binaries — download the tarball for your platform from the assets below (darwin/linux, amd64/arm64), verify against checksums.txt, extract, and run cerberus. Each release artifact ships with SLSA build provenance.
See the README for configuration and a quick start, and CHANGELOG.md for what has landed so far.