v2.0.0-alpha.1
Pre-release
Pre-release
VictoriaLogs is now a first-class datasource alongside ClickHouse. Add a VictoriaLogs source, query it with LogchefQL (compiled to LogsQL) or raw LogsQL, and use it with alerts and live tail — the same explorer, dashboards, and access control you already use for ClickHouse.
Highlights:
- VictoriaLogs support — LogchefQL→LogsQL or native LogsQL; alerts (condition builder or native
stats_query) and live tail on VL. - Capability-driven datasources — sources advertise what they support (histogram, field values, exports, live tail, …) instead of hardcoded backend checks.
- Built-in local auth — run Logchef with email + password, no external OIDC provider required (plus SSO auto-provisioning).
- Live tail — stream matching rows in real time, on both backends.
- Dashboards upgrade — drag-and-resize grid editing, a full-height panel builder, line/area/bar chart styles, and per-dashboard result caching.
- Query history & usage analytics — per-user history (explorer +
logchef historyCLI) and an admin Query Activity view. - Hardening — streaming for large results, per-source ClickHouse query settings, opt-in rate limiting, and trusted-proxy client-IP handling.
This is an alpha — feature-complete and running in production, but published as a pre-release while we gather feedback. Please try it and tell us what breaks.
Changelog
- 9e6dc04 Merge branch 'main' into codex/victorialogs-datasource-rfc
- d622a28 Merge v2.0 (VictoriaLogs + dashboards) into main for v2.0.0-alpha.1 (#41, #65)
- 8c64bd5 add VictoriaLogs datasource execution and explore support
- 98068d2 add victorialogs dev coverage and local seed
- af72ed1 add victorialogs testing handoff plan
- 3811457 build(docs): add starlight-llms-txt@0.7.0 for llms.txt generation (#110)
- 6c400d5 build(docs): upgrade to Astro 7 + Starlight 0.41, standardize on bun (closes #114)
- e46d015 build: fix release Docker image + trim build context
- 226d6be chore(backend): upgrade Go dependencies to latest stable
- 0a25a53 chore(cli): bump to v0.2.0
- 002b611 chore(docs): stop tracking Astro build cache
- 2b20b7e chore(explore): remove dead chip-based filter component (closes #32)
- d0c8f7f chore(frontend): upgrade dependencies to latest
- 964ab92 chore(release): cut CHANGELOG for v2.0.0-alpha.1
- 07b590e chore: add Renovate config for automated dependency updates (closes #62)
- f15e6ee chore: clear all golangci-lint debt; just check now passes (closes #83)
- fec2508 chore: remove nix flake files
- b83e0bd ci(docs): crawl-QA workflow + post-deploy smoke test (#118)
- 54000d2 clean up datasource provisioning and source forms
- 2dcba44 clean up datasource query metadata contracts
- 266e5b2 dev(e2e): VictoriaLogs browser scenario
- bf77c16 dev(e2e): survive non-ClickHouse default sources; keep smoke idempotent
- 1ce6b04 dev: host-network compose variant + API smoke suite
- d7d130e docs(blog): add three real-world use-case post drafts (#111)
- 81483a7 docs(changelog): add cache, query history/analytics, per-source CH settings, rate-limit, trusted-proxy
- 56bbb35 docs(changelog): complete the v1.7.0 entry (Library v2, tokens, UX fixes)
- 7153564 docs(changelog): lead the v2.0 notes with user-facing highlights
- 5ccf918 docs(cli): rewrite the shipped logchef skill (core + references)
- 0065697 docs(config): document [rate_limit] + the reverse-proxy caveat (#50)
- a52f310 docs(content): ClickStack comparison, VictoriaLogs + integration + migration guides (closes #115)
- af29adc docs(positioning): pitch Logchef as multi-datasource
- 9c0548b docs(readme): sharpen tagline + opening for discoverability (#113)
- 4b8c7a8 docs(rfc): reconcile the datasource RFC to as-built; close out the testing plan
- ee9cbc9 docs(roadmap): rewrite the public roadmap to reflect reality
- af1243f docs(site): fix Starlight social config for v0.33+ array format
- 24c0905 docs(v2.0): document [dashboard_cache] config + dashboard result caching
- fbd49a8 docs(victorialogs): expand multi-datasource docs
- 6afad96 docs(victorialogs): record why the explore default-sort stays (#107)
- 27216c4 document victorialogs official docker reference
- 230e6d3 drop legacy flat provisioning source fields
- f43e4e7 expose datasource capabilities across backend and UI
- 6dc347d feat(admin): authoritative usage analytics via non-pruned rollup (#127)
- 8c5de4b feat(admin): recent query activity view (#58)
- ba7d735 feat(auth): JIT auto-provisioning for allowed OIDC domains (closes #34)
- c411861 feat(auth): built-in local authentication — run Logchef without OIDC
- ae756ba feat(cli): VictoriaLogs parity, new commands, bundled skill, doctor + polish
- a6cf79c feat(cli): add
historycommand for server-side query history (#58) - a3a2364 feat(dashboards): add options.chart (bars|line|area) to panel options type
- 524e937 feat(dashboards): e2e scenario, API smoke coverage, docs (phase 4 of #56)
- b58ee08 feat(dashboards): edit mode — panel editor, layout math, dirty guards (phase 3 of #56)
- 10c7a1f feat(dashboards): finer grid, canvas polish, real states (closes #78)
- 5e03f50 feat(dashboards): full-height panel builder drawer (replaces the form sheet)
- 41d8d45 feat(dashboards): grid-canvas edit mode — direct-manipulation drag + resize
- 930c4aa feat(dashboards): line/area timeseries render modes (options.chart)
- 70462b5 feat(dashboards): list, view, and live panel rendering (phase 2 of #56)
- 0a7b91e feat(dashboards): per-dashboard TTL result cache
- 5897d06 feat(dashboards): store + CRUD API (phase 1 of #56)
- 6acad76 feat(docs): OG/Twitter/JSON-LD on marketing pages + robots, favicon, 404 (#109, #110, #111, #117)
- d3b9ca7 feat(docs): beautiful blog typography + coherent theme across landing/blog/docs
- b102630 feat(docs): blog collection + /blog routes + RSS, migrate 3 use-case posts (#112, #117)
- 433a58b feat(docs): wire llms.txt, Starlight OG/canonical head, title template (#109, #110)
- 641c83a feat(explore): client-side column filters in the data table (closes #4)
- 5e3d668 feat(explorer): server-backed query-history panel (#58, phase 2)
- a68442e feat(exports): gate exports behind a source capability
- 32420e4 feat(inspection): unify source inspection across backends
- faa2139 feat(provisioning): reject the pre-2.0 flat source format with a migration hint
- 76ecb4f feat(query): stream large preview responses instead of buffering full JSON (#51)
- d67a2f0 feat(query-history): persist per-user query history server-side (#58, phase 1)
- c6df356 feat(server): rate limiting for auth and query endpoints (#50)
- e39ab93 feat(server): trusted-proxy client-IP resolution (X-Forwarded-For)
- 9c0ea5a feat(sources): configurable per-source ClickHouse query settings (#25)
- 9c722ab feat(sources): per-source ClickHouse query settings in the source form (#25)
- abd2d01 feat(tail): live tail backend — LogTailer provider interface + SSE endpoint
- 6b475d0 feat(tail): live tail frontend — Live toggle, SSE follow mode, e2e
- d059e50 feat(victorialogs): add LogchefQL to LogsQL adapter
- 3e7ade9 feat(victorialogs): finish initial usability pass
- 14da039 fix(alerts): aggregate over a real field in condition-builder alerts
- 12858d1 fix(auth): close open-redirect, session-revocation, issuer, email, and last-admin gaps (closes #89, #90, #91, #95, #96)
- 5156153 fix(auth): delete sessions with the user; sweep expired sessions (closes #53)
- aaa2ca1 fix(cli): stop shifting --since/--from windows by the configured timezone offset (closes #86)
- 254e326 fix(clickhouse): real query-timeout detection for metrics (closes #54)
- 2f18126 fix(clickhouse): result columns were lost to variable shadowing
- a8bed47 fix(clickhouse): result columns were lost to variable shadowing
- 952b12f fix(dashboards): align cache snap with server TTL policy + correct range resolver (#122)
- 6083438 fix(dashboards): frontend hardening — XSS, locked panels, chart guards (#119, #120)
- 208e5e7 fix(dashboards): harden authorization, redaction, and validation (#119, #120)
- d6e8b3e fix(dashboards): options.chart contract — absent means line, persist explicit choice (closes #81)
- 6482a28 fix(dashboards): stop shifting table/stat panel windows for non-UTC viewers (closes #80)
- e31b61f fix(dashboards): zero-fill histogram buckets so sparse series render continuously
- c7acc32 fix(dev): stabilize victorialogs local testing flow
- aec1aa8 fix(docs): SEO — generate the sitemap, add RSS discovery + verification slots
- ea2f83b fix(docs): blog prose styling actually applies + crisp heading rhythm
- 1294d3c fix(docs): readable hero headline
- 3924bec fix(docs): restore readable doc H1s, smaller hero, blog nav link (#116)
- 04193b0 fix(explore): add datasource-aware table defaults
- 952c816 fix(explore): correct timezone double-shift in generated SQL (closes #103)
- c083183 fix(explore): kill async races + draft clobber + hydration slot (closes #101, #102)
- 70e1deb fix(explore): paginate Compact + JSON result views (closes #104)
- 3408bc9 fix(explore): resolve review findings
- 25fdc1c fix(explore): saved-query metadata edits + column-filter/resize polish (closes #105, #106)
- 47fa4bc fix(explore): stop clipping the grouped-histogram legend (closes #38)
- e672d90 fix(export): accept query_text alongside raw_sql (P0 export regression)
- 2373329 fix(logchefql): guard parser against stack-overflow DoS (closes #97)
- 166d02c fix(logchefql): quote field names VictoriaLogs requires quoting
- 1e7488f fix(security): stop returning source credentials in API responses
- b6b28fd fix(server): bound read deadlines on histogram, schema, and test-alert handlers
- 54fced3 fix(server): logchefql translate 400s on bad time formats instead of silently omitting full_sql (closes #82)
- 0170a2b fix(server): wire the ClickHouse manager into the server; survive export-worker panics
- 5b47e72 fix(tail): eliminate ClickHouse tail data-loss modes + honest server-side stream (closes #87)
- dd936e3 fix(tail): truthful client error/EOF handling + CLI cursor correctness (closes #88)
- 01c3d99 fix(victorialogs): clarify LogchefQL query behavior
- 61babba fix(victorialogs): close initial support gaps
- ca2bdba fix(victorialogs): emit a valid duration offset for non-UTC histogram timezones
- 521cfb9 fix(victorialogs): harden auth/tenant header handling and connection validation
- a4af2c6 fix(victorialogs): prevent tail decode-goroutine leak and dropped-batch on cancel
- 5539e74 fix(victorialogs): querying correctness and reliability fixes
- 4330319 fix(victorialogs): resource-bounding + secret-redaction parity with ClickHouse (closes #92, #93, #94, #98, #99, #100)
- 7903dff fix(victorialogs): sort explore results newest-first
- 9b52cd6 fix: alert no-rows warning fires; drop cached provider entry on source-create rollback (closes #85, #107)
- e6526c5 harden(dashboards): bound cache fills + fix histogram key (review)
- ec3eaa9 perf(docs): AVIF/WebP images + self-hosted fonts (#117)
- 9e23d60 prefer datasource metadata in remaining editor flows
- bcf096e refactor logchef around datasource providers
- f5817a4 refactor(alerts): decompose AlertForm.vue into sections + composable (#64)
- 1c925ce refactor(datasource): unify LogchefQL compilation behind the provider layer
- eb2511c refactor(explore): rename ClickHouse-era mode naming; gate log context by capability
- 21b6aa6 refactor(frontend): simplify context sync flows
- 39d0583 refactor(frontend): unify team source context flow
- a477952 refactor: decompose the backend god files into cohesive same-package files (#64)
- c88e6ea remove legacy query metadata contracts
- 66014d8 remove log context feature
- 1648b80 style(cli): cargo fmt (fix pre-existing drift in open.rs/timerange.rs)
- 63834c6 test(core): pin the permission/authorization matrix and alert eval wiring (#63)
- 55ff3cf test(explore): pin store mode/source-switching, relative-time, and URL contracts (#63)
- 3a17d99 test(export): guard that the export handlers accept query_text
- 786eb3d test(victorialogs): real-instance integration suite + CI job