Improve SNMP discovery item context

This commit is contained in:
Keith Smith
2026-05-26 21:08:07 -06:00
parent 6ff452a8a9
commit af72a6c563
8 changed files with 303 additions and 92 deletions
+19 -15
View File
@@ -102,6 +102,7 @@ def test_snmp_discovery_uses_profile_and_returns_friendly_results(client: TestCl
"group": "Device Health",
"label": "Device uptime",
"unit": "seconds",
"current_value": "3h 25m",
},
{
"item_id": "interface.1.status",
@@ -109,6 +110,7 @@ def test_snmp_discovery_uses_profile_and_returns_friendly_results(client: TestCl
"group": "Interface GigabitEthernet 1/0/1",
"label": "GigabitEthernet 1/0/1 status",
"unit": None,
"current_value": "admin up, oper up",
},
{
"item_id": "interface.1.traffic",
@@ -116,6 +118,7 @@ def test_snmp_discovery_uses_profile_and_returns_friendly_results(client: TestCl
"group": "Interface GigabitEthernet 1/0/1",
"label": "GigabitEthernet 1/0/1 traffic",
"unit": "bps",
"current_value": "Rate after first check",
},
{
"item_id": "interface.1.errors",
@@ -123,6 +126,7 @@ def test_snmp_discovery_uses_profile_and_returns_friendly_results(client: TestCl
"group": "Interface GigabitEthernet 1/0/1",
"label": "GigabitEthernet 1/0/1 errors and discards",
"unit": "count",
"current_value": None,
},
]
assert "private-community" not in response.text
@@ -219,12 +223,12 @@ def test_snmp_server_asset_type_uses_linux_server_mibs_and_keeps_interfaces(monk
assert discovered.capabilities["cpu"] is True
assert discovered.capabilities["memory"] is True
assert discovered.capabilities["storage"] is True
assert [(item.item_id, item.item_type, item.group, item.label, item.unit) for item in discovered.health_items] == [
("linux.load.1", "linux_load_average", "Server Health", "Load average 1 minute", None),
("linux.load.2", "linux_load_average", "Server Health", "Load average 5 minutes", None),
("linux.load.3", "linux_load_average", "Server Health", "Load average 15 minutes", None),
("linux.memory.real", "linux_memory_usage", "Server Health", "Memory used", "%"),
("linux.disk.1", "linux_disk_usage", "Storage", "Disk / usage", "%"),
assert [(item.item_id, item.item_type, item.group, item.label, item.unit, item.current_value) for item in discovered.health_items] == [
("linux.load.1", "linux_load_average", "Server Health", "Load average 1 minute", None, "1.23"),
("linux.load.2", "linux_load_average", "Server Health", "Load average 5 minutes", None, "0.97"),
("linux.load.3", "linux_load_average", "Server Health", "Load average 15 minutes", None, "0.88"),
("linux.memory.real", "linux_memory_usage", "Server Health", "Memory used", "%", "75.0% used"),
("linux.disk.1", "linux_disk_usage", "Storage", "Disk / usage", "%", "42% used"),
]
@@ -282,10 +286,10 @@ def test_snmp_server_asset_type_falls_back_to_host_resources(monkeypatch) -> Non
assert discovered.profile_key == "linux_server"
assert [(interface.name, interface.label) for interface in discovered.interfaces] == [("eth0", "eth0")]
assert [(item.item_id, item.item_type, item.group, item.label, item.unit) for item in discovered.health_items] == [
("cpu.196608.load", "cpu_load", "Device Health", "CPU load", "%"),
("storage.1.memory", "memory_usage", "Device Health", "Memory used", "%"),
("storage.31.usage", "storage_usage", "Storage", "Disk / usage", "%"),
assert [(item.item_id, item.item_type, item.group, item.label, item.unit, item.current_value) for item in discovered.health_items] == [
("cpu.196608.load", "cpu_load", "Device Health", "CPU load", "%", "17%"),
("storage.1.memory", "memory_usage", "Device Health", "Memory used", "%", "50.0% used"),
("storage.31.usage", "storage_usage", "Storage", "Disk / usage", "%", "25.0% used"),
]
@@ -341,11 +345,11 @@ def test_snmp_profile_mapping_discovers_standard_health_items(monkeypatch) -> No
assert discovered.capabilities["memory"] is True
assert discovered.capabilities["storage"] is True
assert discovered.capabilities["sensors"] is True
assert [(item.item_id, item.item_type, item.group, item.label, item.unit) for item in discovered.health_items] == [
("cpu.196608.load", "cpu_load", "Device Health", "CPU load", "%"),
("storage.1.memory", "memory_usage", "Device Health", "Memory used", "%"),
("storage.31.usage", "storage_usage", "Storage", "Disk / usage", "%"),
("sensor.10.value", "sensor_value", "Environmental", "Temperature Inlet", "C"),
assert [(item.item_id, item.item_type, item.group, item.label, item.unit, item.current_value) for item in discovered.health_items] == [
("cpu.196608.load", "cpu_load", "Device Health", "CPU load", "%", "17%"),
("storage.1.memory", "memory_usage", "Device Health", "Memory used", "%", "50.0% used"),
("storage.31.usage", "storage_usage", "Storage", "Disk / usage", "%", "25.0% used"),
("sensor.10.value", "sensor_value", "Environmental", "Temperature Inlet", "C", "310C"),
]