Added
- Add
/healthand/metrics(Prometheus-compatible) HTTP endpoints, with aHEALTHCHECKin the Dockerfile, see #164. Listens on port 8090 by default (configurable viahealthcheck_port, set tonullto disable) - Add
files.preprocessconfig option (defaultfalse) to preprocess static monitor files as Tera templates before parsing, allowing use ofget_envand other Tera functions inside JSON/TOML monitor files. Thejson_escape/json_unescapeandtoml_escape/toml_unescapefilters are provided for safe value embedding, closes #187
Changed
- Docker container/service listing failures no longer abort the entire sync — a warning is logged and the sync continues, see #116
- Snippet argument parse errors now include the snippet name and container/service name to help identify the offending label, see #128
- Switch Docker containers to distroless base image to minimize attack surface, fixes #183
Fixed
- Fix type-specific default settings (e.g.
group.notification_name_list) not overriding wildcard defaults (e.g.*.notification_name_list), see #175 - Fix SQLite UNIQUE constraint violation on
stat_hourlycaused by a double monitor restart when creating monitors with tags or notifications — notifications are now sent in the initialaddcall and tags are applied directly without a follow-upeditMonitor, see #166 - Fix manual maintenance creation failing due to missing
schedulefield in theManualvariant, fixes #185