监控 Biztalk 发送端口服务实例的 "active state"

Monitor the "active state" of Biztalk send port service instance

团队,

我的 biztalk 发送端口实例挂起并长时间保持活动状态。我想在 C# 的帮助下监视发送端口活动实例。 我打算 运行 一个代码来检查发送端口(作为参数传递)是否仍处于 运行ning 状态。谁能帮我处理那段代码?

使用 WMI MSBTS_ServiceInstance.ServiceStatus Property:

public static int GetRunningServiceInstanceCount()
{
    int countofServiceInstances = 0;
    try
    {
        ManagementObjectSearcher searcher = new ManagementObjectSearcher("root\MicrosoftBizTalkServer", "SELECT * FROM MSBTS_ServiceInstance WHERE ServiceStatus = 1 or ServiceStatus = 2");
        countofServiceInstances = searcher.Get().Count;
        return countofServiceInstances;
    }
    catch (ManagementException exWmi)
    {
        throw new System.Exception("An error occurred while querying for WMI data: " + exWmi.Message);
    }
}

要解决您的实际问题:BizTalk 2016 中的 SFTP 适配器有一个 great way 使用最新版本的 FTP 代码。这可能会解决稳定性问题。

假设你的 BizTalk 2013 标签,你可能没有使用 2016 版本,在这种情况下,仔细检查你至少在 CU3 因为那个解决了一些关键的 SFTP错误。