Overriding winperf_processor plugin no longer works in Checkmk 2.5

CMK version: 2.5.0p16 Pro
OS version: RHEL8

CMK version: 2.5.0p16 Pro
OS version: RHEL 8

In Checkmk 2.4, we used a modified version of the winperf_processor plugin by placing it here:

~/local/lib/python3/cmk/plugins/collection/agent_based/winperf_processor.py

After upgrading to 2.5, we noticed that the original plugin had moved from collection to windows.

We therefore moved our modified version to:

~/local/lib/python3/cmk_addons/plugins/windows/agent_based/winperf_processor.py

Both cmk -U and cmk-validate-plugins run without any errors, but our modified version is not being used (after cmk -O).

We also noticed that there is no __pycache__ directory under:

~/local/lib/python3/cmk_addons/plugins/windows/agent_based/

We have another modified plugin (multipath) in the collection folder, which still works as expected.

Does anyone have an idea what we might be doing wrong or how we can troubleshoot this?

Best regards,
Thomas

The complete set of winperf… and windows plugins can only be overwritten all together.
Not a single one.
You need to decide if this is worth the hassle of update changes and so on.

The reason:
→ inside ~/lib/python3/cmk/plugins/windows/agent_based
you find an __init__.py file.
What this means is described here.
Plugin APIs — Checkmk's Plug-in APIs documentation → Overriding plugin families and the role of __init__.py
It is clear what this should do but for normal checks i find this plainly stupid as it makes it nearly impossible to test and fix problems inside checks. Or as in your case to use a modified version of the plugin.