set logging per trigger

This commit is contained in:
2025-03-14 15:42:22 +01:00
parent 7d826b97af
commit 81af6180db
5 changed files with 12 additions and 3 deletions
+3
View File
@@ -12,6 +12,7 @@ from cpu_governor_auto_adjust.logger import getLogger
class TriggerTuple(NamedTuple):
name: str
loglevel: str
type: str
interval_in_seconds: int
governor: str
@@ -82,6 +83,7 @@ class Config:
_trigger_elements = self._get_multiple_elements_by_xpath('triggers/trigger')
for trigger_elem in _trigger_elements:
name = self._get_single_text_value_from_xpath('name', trigger_elem)
loglevel = self._get_single_text_value_from_xpath('logLevel', trigger_elem)
type = self._get_single_text_value_from_xpath('type', trigger_elem)
interval_in_seconds = self._get_single_text_value_from_xpath('intervalInSeconds', trigger_elem)
governor = self._get_single_text_value_from_xpath('governor', trigger_elem)
@@ -93,6 +95,7 @@ class Config:
custom_config = OrderedDict({})
_new_trigger = TriggerTuple(
name=name,
loglevel=loglevel,
type=type,
interval_in_seconds=int(interval_in_seconds),
governor=governor,
+1
View File
@@ -9,6 +9,7 @@ class Trigger(AppClass):
def __init__(self, _config: Config) -> None:
super().__init__(_config)
self.active: bool = False
self.log.setLevel(self.config.loglevel.upper())
def __hash__(self):
return super().__hash__(hash(self.name))
@@ -53,7 +53,7 @@ class CpuLoadTrigger(Trigger):
elif current_active and not new_active:
if (current_time - timedelta(minutes=self.cooldown_period_in_minutes)) < self.timestamp_last_governor_change:
self.log.info("cooldown period, staying on governor: %s, current load: %s", self.governor.name, self.current_load)
self.log.debug("cooldown period, staying on governor: %s, current load: %s", self.governor.name, self.current_load)
return
self.log.info(