diff --git a/cmk/plugins/hp_proliant/agent_based/hp_proliant_da_cntlr.py b/cmk/plugins/hp_proliant/agent_based/hp_proliant_da_cntlr.py index ff408ef5c9a..c3b5e20cba3 100644 --- a/cmk/plugins/hp_proliant/agent_based/hp_proliant_da_cntlr.py +++ b/cmk/plugins/hp_proliant/agent_based/hp_proliant_da_cntlr.py @@ -187,8 +187,9 @@ def parse_hp_proliant_da_cntlr(string_table: StringTable) -> ParsedSection: def discovery_hp_proliant_da_cntlr(section: ParsedSection) -> DiscoveryResult: - if section: - yield from (Service(item=item) for item in section) + # Skip phantom placeholder rows (all-zero cells, parsed to ``None``): they + # are not real controllers and would produce a permanently UNKNOWN service. + yield from (Service(item=item) for item, data in section.items() if data is not None) def check_hp_proliant_da_cntlr(item: ControllerID, section: ParsedSection) -> CheckResult: diff --git a/tests/unit/cmk/plugins/hp_proliant/agent_based/test_hp_proliant_da_cntlr.py b/tests/unit/cmk/plugins/hp_proliant/agent_based/test_hp_proliant_da_cntlr.py index 99b446da284..25d0c4eb04e 100644 --- a/tests/unit/cmk/plugins/hp_proliant/agent_based/test_hp_proliant_da_cntlr.py +++ b/tests/unit/cmk/plugins/hp_proliant/agent_based/test_hp_proliant_da_cntlr.py @@ -27,7 +27,6 @@ def test_discovery() -> None: Service(item="0"), Service(item="3"), Service(item="6"), - Service(item="9"), ]