mirror of
https://github.com/rajnandan1/kener.git
synced 2026-06-23 04:10:22 +00:00
chore(docs): include v4.1.1 changelog with new features and improvements
This commit is contained in:
@@ -311,6 +311,10 @@
|
||||
"group": "v4.x",
|
||||
"collapsible": false,
|
||||
"pages": [
|
||||
{
|
||||
"title": "v4.1.1",
|
||||
"content": "v4/changelogs/v4.1.1"
|
||||
},
|
||||
{
|
||||
"title": "v4.1.0",
|
||||
"content": "v4/changelogs/v4.1.0"
|
||||
|
||||
@@ -0,0 +1,51 @@
|
||||
---
|
||||
title: v4.1.1 Changelog
|
||||
description: See what's new in Kener v4.1.1, including new features, improvements, and bug fixes
|
||||
---
|
||||
|
||||
## New features {#new-features}
|
||||
|
||||
### Display events inline {#display-events-inline}
|
||||
|
||||
A new **Display Events Inline** toggle in **Manage → Site Configurations** controls how active events surface on the public site.
|
||||
|
||||
- **On** — ongoing incidents, ongoing maintenances, and upcoming maintenances render as inline sections directly on the home, custom, and monitor pages, alongside a dedicated events list.
|
||||
- **Off** (default) — events stay in the notifications popover in the top bar.
|
||||
|
||||
The two surfaces are mutually exclusive: when inline events are enabled the notifications popover is hidden so events aren't shown twice.
|
||||
|
||||
### Public RSS feeds {#rss-feeds}
|
||||
|
||||
Kener now publishes a public **RSS 2.0** feed of incidents and scheduled maintenance, so users can subscribe without email.
|
||||
|
||||
- Routes: `GET /rss.xml` (default page), `GET /{page_path}/rss.xml` (named page), and `GET /monitors/{monitor_tag}/rss.xml` (single monitor).
|
||||
- The public layout emits a `<link rel="alternate" type="application/rss+xml">` in `<head>`, scoped to the current view, so browsers and readers auto-discover the right feed.
|
||||
- An RSS icon button appears next to the Subscribe / share controls, gated on a new **`showRssFeed`** option (default on) under **Manage → Site Configurations → Monitor Sub Menu Options**.
|
||||
- Coverage mirrors the events page — past (last 90 days) and upcoming maintenance windows — and site-wide maintenances show as `Affected: All monitors`. Responses are cached for 5 minutes.
|
||||
|
||||
## Improvements {#improvements}
|
||||
|
||||
### Path-based heartbeat URLs {#heartbeat-url-format}
|
||||
|
||||
Heartbeat monitors now use a path-separated endpoint, `/ext/heartbeat/{tag}/{secret}`, instead of the old `{tag}:{secret}` form. Legacy colon-style URLs are automatically rewritten, so existing heartbeats keep working without changes. See [Heartbeat Monitor](/docs/v4/monitors/heartbeat).
|
||||
|
||||
### "Started" column on incidents {#incident-started-column}
|
||||
|
||||
The **Manage → Incidents** table gained a **Started** column showing when each incident began, and date formatting across the incidents UI is now standardized for consistent display in cells and tooltips.
|
||||
|
||||
### Isolated web and worker database pools {#db-pool-isolation}
|
||||
|
||||
Background jobs can no longer starve page loads of database connections. The connection pool is split by execution context (routed via `AsyncLocalStorage`):
|
||||
|
||||
- **Web pool** — `DATABASE_POOL_MAX` (default 10) — serves HTTP requests.
|
||||
- **Worker pool** — `DATABASE_WORKER_POOL_MAX` (default 5, new) — serves schedulers and BullMQ workers.
|
||||
|
||||
This fixes `KnexTimeoutError: Timeout acquiring a connection` errors seen when monitor bursts overlapped page loads. See [Environment Variables](/docs/v4/setup/environment-variables).
|
||||
|
||||
### Faster monitor-bars aggregation {#monitor-bars-index}
|
||||
|
||||
Added a covering index `(monitor_tag, timestamp, status, latency)` on `monitoring_data` so the daily status aggregation behind the status-page bars is served entirely from the index. This removes per-row table lookups and cuts multi-second queries on large instances (~1M+ rows) to near-instant.
|
||||
|
||||
## Bug fixes {#bug-fixes}
|
||||
|
||||
- **Redis writes recover after replica failover.** Clients now reconnect on `READONLY` errors, so after a primary failover writes resume without restarting Kener. Point `REDIS_URL` at the writer/primary endpoint when your provider exposes separate reader and writer URLs.
|
||||
Reference in New Issue
Block a user