Persist changes to the list of monitored servers
When a server is added to a monitor, an supplementary configuration file is generated to persist this information. This will allow dynamic modifications to server lists which will survive restarts and unexpected downtime. The monitor will only add new servers to its list of monitored servers. This prevents duplicate entries in the list and makes it safe to persist all used servers to the supplementary configuration file instead of only the ones that are not listed in the main configuration.
This commit is contained in:
@ -233,6 +233,22 @@ connect_result_t mon_connect_to_db(MONITOR* mon, MONITOR_SERVERS *database);
|
||||
void mon_log_connect_error(MONITOR_SERVERS* database, connect_result_t rval);
|
||||
void mon_log_state_change(MONITOR_SERVERS *ptr);
|
||||
|
||||
/**
|
||||
* @brief Serialize a monitor to a file
|
||||
*
|
||||
* This partially converts @c monitor into an INI format file. Only the servers
|
||||
* of the monitor are serialized. This allows the monitor to keep monitoring
|
||||
* the servers that were added at runtime even after a restart.
|
||||
*
|
||||
* NOTE: This does not persist the complete monitor configuration and requires
|
||||
* that an existing monitor configuration is in the main configuration file.
|
||||
* Changes to monitor parameters are not persisted.
|
||||
*
|
||||
* @param monitor Monitor to serialize
|
||||
* @return False if the serialization of the monitor fails, true if it was successful
|
||||
*/
|
||||
bool monitor_serialize_servers(const MONITOR *monitor);
|
||||
|
||||
/**
|
||||
* Check if a monitor uses @c servers
|
||||
* @param server Server that is queried
|
||||
|
Reference in New Issue
Block a user