Host attribute change triggering a hook

Hello. I’m trying to implement storage state monitoring, for our FUSE-based SDS. The way i see it: there is a monitoring cycle it catches a wrong state, publishes it to Opennebula, Nebula reacts executing the fencing hook.
I’ve implemented systemd-services state reflection as a HOST attribute, as the beginning, and i’m stuck. I found two ways of triggering the hooks: API calls and HOST state(which i thought i need), but either seem to not have an option i’m looking for.
Are there any hints, or direction you could point me out?

This post seems to be related: Failed VM deployment vs. host state

After a day of attempts i came to the easiest way. I just edited /var/lib/one/remotes/im/kvm-probes.d/kvm.rb, added a couple of strings checking local stage. So if the storage is functional host checks resolved to True and return required values, otherwise it returns False and host goes to the Error state. Later host-hook handles it to fence the broken node.