57 lines
3.2 KiB
Markdown
57 lines
3.2 KiB
Markdown
# Changelog
|
|
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
## [0.6.0] - 2025-12-20
|
|
### Added
|
|
- **SSL**: Added support for simplified SSL configuration (`ssl: required`) for Managed/Cloud databases and updated Wizard/Config.
|
|
- **Safety**: Added automatic cleanup of `housekeeper` table during init (targeted) and conflict detection during maintenance.
|
|
- **CLI**: Added short flags for all arguments (`-vv`, `-f`, `-d`, `-s`, `-w`).
|
|
- **Validation**: Enforced strict unit validation for retention periods and strict table existence checks.
|
|
- **Error Handling**: Improved error reporting used to identify specific tables causing configuration errors.
|
|
|
|
### Changed
|
|
- **CLI**: Refactored `--init` and `--fast-init` into mutually exclusive standalone commands (Breaking Change).
|
|
- **CLI**: Reorganized argument parsing logic for better maintainability.
|
|
- **Safety**: Updated initialization warnings to explicitly mention duration ("SEVERAL HOURS") and disk space requirements.
|
|
- **Logic**: Refined housekeeper conflict check to only warn about tables actively configured for partitioning.
|
|
|
|
## [0.5.0] - 2025-12-16
|
|
### Added
|
|
- **Wizard**: Added interactive configuration wizard (`--wizard`).
|
|
- **CLI**: Added `--fast-init` flag to skip table scanning during initialization, instead of config option.
|
|
- **Monitoring**: Added `--stats` argument to output JSON statistics (Size, Count, Days Left).
|
|
- **Template**: Updated `zabbix_mysql_partitioning_template.yaml` to use Master/Dependent items for efficient stats collection.
|
|
|
|
### Changed
|
|
- **Config**: Removed `initial_partitioning_start` from configuration file (moved to `--fast-init`).
|
|
- **Template**: Replaced legacy check item with comprehensive stats master item.
|
|
- **CLI**: Removed legacy `--check-days` argument (replaced by `--stats`).
|
|
|
|
## [0.4.1] - 2025-12-16
|
|
### Added
|
|
- **CLI**: Added `--verbose` / `-v` flag to switch between INFO (default) and DEBUG logging levels.
|
|
- **CLI**: Added `-r` short flag for `--dry-run`.
|
|
|
|
## [0.4.0] - 2025-12-16
|
|
### Added
|
|
- **Monitoring**: Added `--discovery` argument for Zabbix Low-Level Discovery (LLD) of partitioned tables.
|
|
- **Monitoring**: Added `--check-days` argument to calculate days remaining until partition buffer exhaustion.
|
|
- **CLI**: Added `--version` / `-V` flag to display script version.
|
|
- **Docker**: Added `RUN_MODE=discovery` and `RUN_MODE=check` support to `entrypoint.py`.
|
|
- **Templates**: Added Zabbix 7.0 compatible template `zabbix_partitioning_template.yaml`.
|
|
|
|
### Removed
|
|
- **CLI**: Removed unimplemented `--delete` / `-d` argument.
|
|
|
|
## [0.3.0] - 2025-12-14
|
|
### Changed
|
|
- **Refactor**: Complete rewrite of `zabbix_partitioning.py` using Class-based structure (`ZabbixPartitioner`).
|
|
- **Configuration**: Extended comments in the configuration file (`zabbix_partitioning.conf`). The config file is self-explanatory now.
|
|
- **Docker**: Introduced Docker container support (`Dockerfile`, `entrypoint.py`). The script can be run in a stateless manner using Docker.
|
|
|
|
### Added
|
|
- **Optimization**: Added `initial_partitioning_start` option (`db_min` vs `retention`) to speed up initialization on large DBs. |