Getting configuration values
When loading configuration values for Monitors, Alerters and Loggers, you can use the get_config_option() function to perform sanity checks on the loaded config.
- get_config_option(config_options: dict, key: str[, default=None[, required=False[, required_type="str"[, allowed_values=None[, allow_empty=True[, mininum=None[, maximum=None]]]]]]])
Get a config value out of a dict, and perform basic validation on it.
- Parameters
config_options (dict) – The dict to get the value from
key (str) – The key to the value in the dict
default – The default value to return if the key is not found
required (bool) – Throw an exception if the value is not present (and default is None)
required_type (str) – One of str, int, float, bool, [int] (list of int), [str] (list of str)
allowed_values – A list of allowed values
allow_empty (bool) – Allow the empty string when required_type is “str”
minimum (integer, float or None) – The minimum allowed value for int and float
maximum (integer, float or None) – The maximum allowed value for int and float
- Returns
the fetched configuration value (or the default)
Note that the return type of the function signature covers all supported types, so you should use
typing.cast()
to help mypy understand. Do not use assert.