llms.txt
Search Documentation
Search through all documentation pages
v4.x

v4.0.16 Changelog

See what's new in Kener v4.0.16, including new features, improvements, and bug fixes

New features

gRPC monitor

Kener now supports monitoring gRPC services using the standard gRPC Health Check Protocol (grpc.health.v1). (#505)

Configuration:

Field Required Description
Host Yes gRPC server hostname or IP
Port Yes gRPC server port (default 50051)
Service No Fully qualified service name (e.g. my.package.ServiceName). Leave empty to check overall server health
TLS No Enable TLS/SSL encrypted connections
Timeout No Request timeout in milliseconds (default 10000)

Status mapping:

Health status Kener status
SERVING UP
NOT_SERVING DOWN
Timeout DOWN
UNKNOWN DEGRADED

Page monitor ordering

Monitors on a status page can now be reordered using up/down arrows in the page editor. Previously, monitors were displayed in creation order. A new position column in the database controls the display sequence.

CSRF protection

Added origin-based CSRF protection for all state-changing form submissions (POST, PUT, PATCH, DELETE). When an Origin header is present, the server validates it against the expected host and rejects mismatched requests with HTTP 403. Combined with the existing SameSite=Lax cookie policy, this prevents cross-site form attacks. (#570)

Zeabur deployment

Added a one-click deployment template for Zeabur that provisions Kener with PostgreSQL and Redis pre-configured.

Bug fixes

JSON settings merge in monitor API

Fixed the PUT /api/v4/monitors/{tag} endpoint not correctly merging monitor_settings_json when the existing value was already a parsed object. The field is now always stringified before storage, preventing data loss during partial updates. (#654)

Improvements

Traditional Chinese locale

Added full Traditional Chinese (zh-TW) translation with 1000+ keys covering the entire UI.