github kuvasz-uptime/kuvasz 2.0.0-alpha1
v2.0.0-alpha1

latest releases: 3.0.2, 3.0.1, 3.0.0...
pre-release4 months ago

The first build of the next major version, 2.0.0.

Docker hub: kuvaszmonitoring/kuvasz:2.0.0-alpha1

Updated docs will come with the first stable 2.x.x release!

Breaking changes

  • Native image build logic has been removed: Native images will not be supported in the future due to their higher level of unpredictability, and the achieved performance gain/resource saving in exchange is not so significant.
  • PostgreSQL 15+ is the minimum supported DB version.
  • The HTTP communication log has been removed, because it was an unnecessary overhead in the network pipeline, and a built-in solution is also available now.

Features

  • New Monitor attributes (every default value also applies for the existing monitors):
    • requestMethod: GET or HEAD. The latter is generally faster, but be aware that certain targets might not support it (default GET)
    • latencyHistoryEnabled: true or false. If set to false latency will be not logged or returned in the monitors' metrics -> Better for a snappier experience on a slow machine (default true)
    • forceNoCache: true or false. If set to true, a Cache-Control: no-cache header will be sent with the request (default true)
    • followRedirects: true or false. If set to true, Kuvasz will follow redirects during uptime checks, and the last, non-redirected URL will be evaluated (default true)
  • Option to disable authentication (useful in a home-lab, probably) via ENABLE_AUTH. true or false, default true
  • Optimization of the uptime scheduling logic: the first uptime check will be scheduled randomly between 1 second and the configured interval of the monitor to prevent hitting the HTTP client with a lot of requests right after the startup.
  • Optimization of the uptime checker:
    • Increased the client's thread-pool's size and unassigned the IO executor from it
    • Made the error handling more robust by handling exceptions that come from invalid response format (e.g. invalid status code)
    • Increased the client's read timeout to 30s
    • Added support for non-absolute redirect URLs (a redirect location of /path/something-else on https://example.com will be resolved as https://example.com/path/something-else
  • Improvement of the DOWN event's error formatting both for showing and saving it. Non-visible/printable characters, and long response errors are now sanitised and might be redacted. If the uptime check fails with a standard HTTP status code and a standard error response, then the HTTP status and its name will be the error's "label" (e.g. 403 Forbidden)

Chore

  • Removed jOOQ's Pojos, DAOs, and simplified the injection of the DSL context
  • Simplified the logging configuration by moving it to Micronaut's own config file
  • Changed the base image to liberica-runtime-container:jre-17 and reduced the compressed image size by ~23%
  • Build arm64 images too
  • Bumped Micronaut to 4.8.0
  • Bumped Kotlin to 2.1.20
  • Updated Gradle to 8.13

Bugfixes

Full changelog

New Contributors

  • Surprise me next time ;)

Full Changelog: 1.1.0...2.0.0-alpha1

Don't miss a new kuvasz release

NewReleases is sending notifications on new releases.