diff --git a/mkp/Traefik-0.2.0.mkp b/mkp/Traefik-0.2.0.mkp new file mode 100644 index 0000000..e463b53 Binary files /dev/null and b/mkp/Traefik-0.2.0.mkp differ diff --git a/traefik/agent_based/traefik_info.py b/traefik/agent_based/traefik_info.py index 5fdb09c..c975006 100644 --- a/traefik/agent_based/traefik_info.py +++ b/traefik/agent_based/traefik_info.py @@ -2,6 +2,7 @@ # pylint: disable=missing-module-docstring, unused-argument, # pylint: disable=missing-function-docstring, line-too-long + import datetime import time @@ -24,6 +25,9 @@ def get_state_upper( levels: tuple[int | float, int | float], value: int | float ) -> State: """returns OK/WARN/CRIT depending on the given parameters""" + if levels is None: + # a rule with no levels set is active, assume OK state + return State.OK warn, crit = levels if value >= crit: return State.CRIT @@ -62,6 +66,9 @@ def check_traefik_info(params, section) -> CheckResult: """the check function""" _level_type, levels = params["levels_traefik_agent_execution_time"] codename: str = section["codename"] + if codename == "": + # docker hardened image + codename = "DHI" version: str = section["version"] startdate: str = section["startdate"] startdate_seconds_since_epoch: int = section["startdate_seconds_since_epoch"] @@ -71,7 +78,6 @@ def check_traefik_info(params, section) -> CheckResult: agent_version: str = section["agent_version"] agent_runtime: float = round(section["agent_runtime"], 1) state: State = get_state_upper(levels=levels, value=agent_runtime) - yield Metric( name="traefik_agent_execution_time", value=agent_runtime,