Releases: mr-karan/logchef
Release list
Logchef CLI v0.1.5
LogChef CLI v0.1.5
Added
- CSV export & streaming SQL — New
--output csvand--streamflags onlogchef sql. Stream large result sets directly without timing out, or pipe them to a CSV file. - v1.6.0 API compatibility — CLI works with v1.6's de-teamed collections API. Saved queries resolve from your team membership automatically.
Changed
- Product name standardized — "LogChef" → "Logchef" across all CLI help text, prompts, and the OIDC auth landing page.
Full Changelog: cli-v0.1.4...cli-v0.1.5
v1.6.0
LogChef 1.6 reorganizes saved queries around Collections — cross-team curation lists you can share with teammates. Teams now exist purely for access control. A new Editor team role sits between Member and Admin: editors can save queries and manage collections without getting full admin rights.
Heads-up: this release contains a SQL migration sequence and breaking URL changes. Read the Upgrade and Breaking changes sections before deploying.
✨ What's new
Collections
A new way to curate saved queries.
- Personal collection auto-created per user. Anything you save lands in your personal collection by default.
- Shared collections are invite-only, with two roles:
owner(full control) andmember(read + run). Items a member can't run for a source they don't have access to show with a lock icon. - Unified Saved Queries page. One page at
/logs/savedwith a collection picker (All / Personal / shared), inline search, and a flat table — replaces the old two-page layout. - "Add to Collection" drawer — open the menu on any saved query and tick the collections you want it pinned to. Create new collections inline.
- Shareable links.
/logs/saved/:queryIdis the canonical share URL. The resolver picks the right team + source automatically, so the recipient lands directly on the query.
Editor team role
A new role between Member and Admin. Editors can:
- Save and pin queries
- Create, rename, and invite members to collections
- Manage collections they own
They cannot invite team members or link sources — those stay admin-only.
Bigger result downloads
CSV / JSON exports now stream from the backend with synchronous admission control (HTTP 429 when at capacity), so very large exports no longer tip the server over.
OIDC skip_email_verified_check (#86)
Skip the email_verified ID-token claim on providers that don't propagate it — for example, Cloudflare Access in front of an upstream IdP. Off by default; opt in via config.
Native ClickHouse TLS (#88)
Configure TLS directly on the source connection. No more stunnel/sidecar to ship TLS to ClickHouse.
Calendar month/year drill-down
Faster navigation in the date picker for queries that span weeks or months.
🛠️ Fixed (vs v1.5.0)
- Very large query results no longer OOM the browser — new
[query] max_limitcap (default 100k rows). A large unbounded result set previously exhausted the renderer. - Long raw SQL in the URL no longer trips the server's HTTP header size limit.
- "No source selected" race on the explorer — queries no longer execute against a stale source while the new source's schema is loading.
- Stale-request guard on source switching — a slow in-flight
loadSourceDetailsresponse can't overwrite a fast one anymore. - Saved queries open against the right source — the query's
source_idoverrides stale?source=params in the URL. - Export job pruner is crash-safe — interrupted prunes no longer leave orphaned download files behind.
- Translate API errors are surfaced to the editor instead of failing silently.
- Export download URLs are relative, so downloads work behind reverse proxies that rewrite hostnames.
💥 Breaking changes
LogChef 1.6 retires team-scoping for queries, alerts, query shares, and export jobs. There are no compat shims — the old paths return 404.
API
| Removed / changed | New |
|---|---|
team_queries table |
saved_queries(source_id, created_from_team_id, created_by, …) |
alerts.team_id, query_shares.team_id, export_jobs.team_id columns |
dropped |
| Team-scoped saved-query endpoints | /api/v1/saved-queries |
| Team-scoped alert endpoints | /api/v1/alerts |
| — | /api/v1/collections (new) |
| Alert notification payloads | team_id / team_name removed; recipients resolve to users directly |
Admin frontend URLs
| Old | New |
|---|---|
/management/* |
/admin/* |
/profile |
/settings/profile |
/admin/sources/list |
/admin/sources |
/admin/sources/edit/:id |
/admin/sources/:id/edit |
Removed features
- Query Folders — replaced by Collections.
- Bookmarks (
is_bookmarked) — replaced by the auto-created personal collection. Your starred queries migrate over automatically.
🗃️ Migration notes
Migrations 000016 → 000021 run on first boot. Most are SQLite table rebuilds with foreign-key handling to preserve child rows.
| Migration | What it does |
|---|---|
| 000016 | Drops query_folders + query_folder_items |
| 000017 | Rebuilds team_queries → saved_queries, drops team_id, adds created_by |
| 000018 | Drops team_id from alerts, query_shares, export_jobs; adds alerts.created_by |
| 000019 | Creates collections, collection_members, collection_items |
| 000020 | Drops is_bookmarked; seeds personal collections; migrates bookmarks to collection items |
| 000021 | Adds created_from_team_id to saved_queries; backfills from team_sources |
Take a backup of your SQLite database before upgrading. Migrations are forward-only.
How to upgrade
Binary
Download the v1.6.0 binary, stop the running service, replace the binary, start the service. Migrations apply on first boot.
Docker
docker pull ghcr.io/mr-karan/logchef:v1.6.0
docker-compose down
docker-compose up -dFollow-ups
- If you run
logchef-mcpfrom the separate repo, rewire it to/api/v1/saved-queries— the old team-scoped paths are gone. - Provisionable collections are not in this release; declarative config still covers teams, users, and sources.
Contributors
Thanks to @m0nikasingh for OIDC email-verification skip (#86), native ClickHouse TLS (#88), and AI SQL insert mode fix (#89).
Full changelog: v1.5.0...v1.6.0
v1.5.0
Highlights
- Rich value autocomplete — Type
host=in LogchefQL and get instant value suggestions with occurrence counts from the field sidebar - Tailwind CSS v4 + Vega theme — New visual design with Zinc/Blue palette, sharper borders, bolder chart colors
- Unovis histograms — Brush-drag zoom, crosshair tooltips, stacked bars
- Sidebar collapsed by default — More screen space for logs
- Numeric field exploration —
status(UInt16),bytes(UInt32) now show top values in sidebar
Backend
- Backtick-quote all field names in SQL (fixes hyphenated field names like
user-identifier) ValidationErrortype returns proper HTTP 400 instead of 500- Numeric fields supported in field value queries
See full changelog for all changes.
v1.4.1
Changelog
- da26f1e feat: add canonical request logging and activity logs
- d912897 fix: add IdleTimeout and periodic QueryTracker cleanup
- 36e9060 fix: add provisioning to docs sidebar, reorganize for better discovery
- 2e09497 fix: allow team admins to manage members on managed teams
- 03a9bd8 fix: downgrade session management logs to DEBUG — only user.login stays at INFO
- 54f19ef fix: flatten slog source to file:line string
- 259e035 fix: preserve structured slog source, only shorten file path
- 3d80725 fix: rename source log key to source_name to avoid slog builtin collision
- 9b2e950 fix: shorten slog source to file:line via ReplaceAttr
- d30785b fix: standardize product name to Logchef everywhere
v1.4.0
Changelog
- e99dfba feat: add All Teams view for saved queries collections
- 5b7318c feat: add declarative provisioning for teams, sources, and access control
- 4fa99f0 fix: codex review fixes + provisioning docs
- ba5eb67 fix: highlight today's date in calendar picker
- 041d59a fix: security, correctness, and performance improvements
- 1fea918 fix: support separate provisioning.toml file
- 1d11d66 fix: use maxLimit as default in SQL mode and fix dark theme for date picker
- 6e88d05 refactor(frontend): Vue best practices improvements
- 485b23e release: v1.4.0
v1.3.0
Changelog
- 20886ad feat(backend): add variable substitution support to LogchefQL
- f485677 feat: allow team admins to manage their teams
- 639d201 feat: configurable query result limit and UI improvements
- 7eb5519 feat: implement source editing and duplication
- a9e01eb feat: persist user preferences across sessions
- 4ccdb27 fix(frontend): LogchefQL variable substitution and timeout parity
- e5c4503 fix(frontend): address security vulnerabilities and bugs
- 5e36237 fix(frontend): auto-parse embedded JSON strings
- f76c295 fix(frontend): enable text wrapping in JSON viewer log details
- ab564d5 fix(frontend): enforce timestamp order and initial loading
- 3a69dc4 fix(frontend): expand JSON rows and toggle wrapping
- 80035fd fix(frontend): remove client-side SQL validation for optional variables
- 612efd9 fix(variables): auto-apply Now button and fix initial date format
- ebe60d4 fix(variables): emit local datetime strings from date picker
- 59afe90 fix: table auto-resizes when filter sidebar closes
- 5d1e131 release: v1.3.0
LogChef CLI v0.1.4
Full Changelog: v1.3.0...cli-v0.1.4
v1.2.2
Changelog
- 5eeeb37 Merge pull request #74 from mr-karan/develop
- a20b552 chore(cli): bump version to 0.1.3
- c784f05 chore(cli): update dependencies to latest versions
- e8a2ec6 docs(cli): add pre-built binary installation instructions
- b527fc3 feat(cli): add --timeout flag to query command
- 3ebc869 feat(cli): auto-detect timezone on auth and add config versioning
- f0a82c9 fix(alerts): remove obsolete alertmanager settings from UI
- 515fba8 fix(alerts): update TLS setting description in migration
- 116b384 fix(build): inject versionString for UI sidebar display
- 8ccb087 fix(cli): correct LogChefQL syntax in query prompt example
- 91d6eb3 fix(docs): escape template syntax in changelog
LogChef CLI v0.1.3
LogChef CLI v0.1.3
Added
--timeoutflag onquery— Override the server-side query timeout from the CLI.- Timezone auto-detection on
auth—logchef authrecords your local IANA timezone in the saved context so subsequent queries use it by default. Config gained aversionfield so future schema changes can migrate. - Pre-built binary install docs —
docs/integration/clinow lists download URLs for Linux x86_64/aarch64, macOS x86_64/aarch64, and Windows.
Fixed
- LogchefQL prompt example in the interactive mode used outdated syntax (
level=errorwithout quotes). Corrected tolevel="error".
Full Changelog: cli-v0.1.2...cli-v0.1.3