我正在寻找一种简单的方法来监视来自SCOM的RabbitMQ队列。特别是,当特定队列(用于“死信”的队列)不为空时,我希望得到通知。
RabbitMQ有一个JSON ( RESTful管理HTTP ),它将返回所需的数据;它只支持JSON。我已经在一个.NET库中完成了对它的调用。我已经编写了一个PowerShell脚本来在它和SCOM之间进行接口,但是我们的网络管理员无法让它工作。他更喜欢VBScript解决方案。
我可以将.NET库公开给COM并从VBScript调用它。这似乎非常复杂。有更简单的方法吗?
发布于 2012-02-17 00:53:16
您的网络管理员不只是从VBScript调用powershell脚本的任何原因吗?我知道这无助于荒谬的复杂性,但这可能是最简单的解决办法。告诉他编写一个包含这段简单vbs的自定义监视器:
Set objShell = CreateObject("WScript.Shell")
strPoSHCmd = "powershell.exe -noprofile -command C:\path\to\script.ps1"
objShell.Run strPoSHCmd编辑C:\path\to\script.ps1以满足您的需要。还可以让vbscript将来自PowerShell的值(假设PS脚本返回一个值)返回到SCOM,方法是创建一个MOM.ScriptAPI propertyBag,如下所示:
Set oAPI = CreateObject("MOM.ScriptAPI")
Set oBag = oAPI.CreatePropertyBag()
Set objShell = CreateObject("WScript.Shell")
strPoSHCmd = "powershell.exe -noprofile -command C:\path\to\script.ps1"
PSReturn = objShell.Run strPoSHCmd
Call oBag.AddValue("Output",PSReturn)
Call oAPI.Return(oBag)https://serverfault.com/questions/355129
复制相似问题