Fixed small typo in Readme, Updated zabbix-utils, Added Devcontainer, Fixed logging and class description in usermacros module, fixed Zabbix consistencycheck for Usermacros and added unit tests for usermacros.

This commit is contained in:
TheNetworkGuy
2025-06-11 20:09:53 +00:00
parent 22d735dd82
commit 8df17f208c
6 changed files with 178 additions and 19 deletions

View File

@@ -10,7 +10,7 @@ from modules.tools import field_mapper
class ZabbixUsermacros:
"""Class that represents a Zabbix interface."""
"""Class that represents Zabbix usermacros."""
def __init__(self, nb, usermacro_map, usermacro_sync, logger=None, host=None):
self.nb = nb
@@ -57,7 +57,8 @@ class ZabbixUsermacros:
macro["macro"] = str(macro_name)
if isinstance(macro_properties, dict):
if not "value" in macro_properties:
self.logger.warning(f"Usermacro {macro_name} has no value, skipping.")
self.logger.warning(f"Host {self.name}: Usermacro {macro_name} has "
"no value in Netbox, skipping.")
return False
macro["value"] = macro_properties["value"]
@@ -82,11 +83,12 @@ class ZabbixUsermacros:
macro["description"] = ""
else:
self.logger.warning(f"Usermacro {macro_name} has no value, skipping.")
self.logger.warning(f"Host {self.name}: Usermacro {macro_name} "
"has no value, skipping.")
return False
else:
self.logger.error(
f"Usermacro {macro_name} is not a valid usermacro name, skipping."
f"Host {self.name}: Usermacro {macro_name} is not a valid usermacro name, skipping."
)
return False
return macro