我正在使用 SCOM 2019,并尝试编写一个新规则,该规则是基于探针的脚本(性能),其中包含返回属性包的 vbscript。该规则被分配给运行 SCOM 代理的对象,并且我已在目标上本地测试了该脚本。
我的挑战是我无法让规则在目标上本地运行,证据是脚本记录到 SCOM 管理服务器的事件日志中。此外,当我编辑管理包 xml 并使用 Remotable="false" 设置规则时,我会在 SCOM 管理服务器上收到以下事件日志:
为 ID 为“{id}”的远程实例“{instance}”运行的规则/监视器“{ruleid}”将被禁用,因为它不可远程。管理组“{mg}”。
我是否在这里遗漏了一些东西来让规则在目标本地运行?
编辑:目标是一个组,我想我开始理解脚本将参考该组而不是组成该组的元素来运行。如果是这种情况,我是否需要以某种方式创建一个以 Microsoft.Windows.Computer 作为基础的类(而不是组)?
正如我怀疑的那样,确认了当针对一个组时,脚本运行时会引用该组而不是该组的元素。解决方案是创建一个填充所需目标的类,然后将规则定位到该组。
这里有很多很棒的片段展示了如何创建类(类和发现): https://github.com/thekevinholman/FragmentLibrary