Automatic Application of Configuration Changes
uberAgent monitors its configuration source for changes and applies updated configurations automatically. This is called Automatic Application of Configuration Changes (AACC).
In the default configuration, Automatic Application of Configuration Changes (AACC) is enabled. To disable AACC, set the value of both configuration settings Configuration_Settings > ConfigCachePollInterval and Configuration_Settings > ConfigChangeRestartTimeoutSec to
Applies to configuration sources: central config file management (CCFM).
uberAgent regularly checks the CCFM file share for updated configurations. The refresh interval is configurable via the setting Configuration_Settings > ConfigCachePollInterval. To evenly distribute the load on the CCFM file share, each agent adds a randomized offset to the refresh interval (between 0 and 50% of
Setting Configuration_Settings > ConfigCachePollInterval to
0 disables monitoring of remote configuration sources for changes.
uberAgent waits for a specified time before applying an updated configuration. This wait time is configurable via the setting Configuration_Settings > ConfigChangeRestartTimeoutSec.
Setting Configuration_Settings > ConfigChangeRestartTimeoutSec to
0 disables monitoring of local configuration sources for changes.
This section lists the locations uberAgent monitors for configuration updates. Please note that new configurations are applied only if a meaningful change is detected (see below).
If uberAgent uses a configuration from a file share via central config file management, it monitors the entire CCFM directory structure for new or modified configurations. uberAgent updates its configuration in the following two cases:
- Current location is modified: uberAgent finds a configuration archive with a changed timestamp in the currently used subdirectory of the CCFM file share. Please note that the timestamp doesn’t have to be newer, just different. This makes it possible to roll back a configuration update simply by replacing the newer configuration archive with the previous version.
- Better-matching location is available: uberAgent finds a better-matching configuration in another subdirectory of the CCFM base path. In this case, the archive’s timestamp is ignored. See this document for details on what constitutes a better match.
If uberAgent uses local config files, it monitors the local configuration files for changes.
If uberAgent is configured via Group Policy, it registers for Group Policy refresh notifications.
The configuration source can be switched dynamically between all supported configuration options.
When uberAgent detects an updated configuration (see above), it doesn’t immediately apply the updated configuration. Instead, it performs two types of checks:
- It loads the updated configuration in test mode and checks it for validity.
- It then compares the updated with the current configuration for meaningful changes.
A meaningful change is an actual change to a configuration setting. Modifying a comment, for example, does not constitute a meaningful change.
uberAgent monitors for changes only its configuration sources (e.g. configuration files, Group Policy), but not the scripts that are mentioned therein. Should such scripts have changed, one can force a configuration change detection by setting the value of Configuration_Settings > Version to a random string or changing it from its previous value.
The following matrix helps to understand in which cases Automatic Application of Configuration Changes applies a configuration update.
|Config source||Change event?||Better-matching subdir found?||Meaningful change detected?||uberAgent behavior|
|Local||yes||n/a||yes||Configuration is applied, the uberAgent service/daemon restarts automatically.|
|CCFM||yes||no||yes||Configuration is applied, the uberAgent service/daemon restarts automatically.|
|CCFM||no||yes||yes||Configuration is applied, the uberAgent service/daemon restarts automatically.|
|Group Policy||yes||n/a||yes||Configuration is applied, the uberAgent service/daemon restarts automatically.|
Depending on the config source, Change event means different things:
- Local: a file change notification was received from the OS.
- CCFM: the timestamp of the configuration archive in the current configuration’s directory changed (to a newer or older value).
- Group Policy: a Group Policy refresh notification was received.