Monitoring
Overview
The /readyz API provides a simple way to monitor the health and status of your MetaDefender Downloader instance. This endpoint is particularly valuable for air-gapped environments where active monitoring of engine updates and system health is required.
API Endpoint
GET /readyz
Query Parameters
The API accepts an optional info query parameter with the following possible values:
| Parameter Value | Description |
|---|---|
| version | Returns the MetaDefender Downloader version |
| updater_server_connection | Checks connectivity to the updater server |
| diskspace | Reports free and total disk space for the data directory (in bytes) |
| engine | Returns status of all engine and database packages |
| update | Provides update-related information including timestamps and status |
| all | Returns all information listed above. Note: when using all , if other options also included -> it will be considered as invalid option |
Multiple values can be requested by separating them with commas (e.g., info=diskspace,version).
Default Response
When called without the info parameter, the API returns:
- Downloader version
- Connection status to updater server
Example Requests
Basic Health Check
GET /readyz
Response:
{ "updater_server": "connected", "version": "3.2.3"}Request Specific Information
GET /readyz?info=diskspace,updater_server_connection
Response:
{ "free_disk_space": 22213443584, "total_disk_space": 247882248192, "updater_server": "connected"}Request All Available Information
GET /readyz?info=all
Response:
{ "updater_server": "connected", "version": "3.2.3", "free_disk_space": 37685030912, "total_disk_space": 247882248192, "update_info": { "export_running": true, "last_update": 1746761060690, "last_update_was_successful": true, "next_update": 1746772282162, "update_running": true }, "engines": [ { "abandoned": false, "download_progress": 100, "download_time": "2025-05-09T03:24:20.750Z", "eng_id": "7z_17_windows", "eng_name": "Archive Extraction", "eng_type": "Bundled engine", "eng_ver": "6.4.0-3939", "engine_type": "archive", "pinned": false, "state": "validating", "type": "engine" }, { "abandoned": false, "download_progress": 100, "download_time": "2025-05-09T03:24:20.762Z", "eng_id": "ahnlab_1_windows", "eng_name": "AhnLab", "eng_type": "Bundled engine", "eng_ver": "3.23.3.2-1947", "engine_type": "av", "pinned": false, "state": "ready", "type": "engine" }, { "abandoned": false, "download_progress": 42, "download_time": "2025-05-09T03:24:20.805Z", "eng_id": "dlp_13_windows", "eng_name": "Proactive DLP", "eng_type": "Bundled engine", "eng_ver": "2.10.0-1639650749", "engine_type": "dlp", "pinned": false, "state": "downloading", "type": "engine" } ]}Response Codes
| Status Code | Description |
|---|---|
| 200 | Request successful |
| 400 | Invalid parameter(s) provided |
Error Handling
If an invalid info parameter is supplied, the API returns:
GET /readyz?info=invalid
Response:
{ "err": "Invalid param info"}Monitoring Best Practices
- Regular Polling: Set up automated checks every 5-15 minutes
- Alert on Failures: Configure alerts for:
- Disconnected updater server
- Low disk space (below 10% free)
- Failed update status
Implementation Notes
- Disk space is reported in bytes
- If engines are actively downloading, the updater server connection is automatically considered "connected"
