ホーム>source

チーム、

biztalk送信ポートインスタンスがハングし、長時間アクティブ状態のままになります。 C#を使用して、送信ポートのアクティブなインスタンスを監視したいと思います。 送信ポート(パラメーターとして渡された)がまだ実行状態にあるかどうかを確認するコードを実行するつもりです。誰でもそのコードを手伝ってくれますか?

あなたの答え
  • 解決した方法 # 1

    WMI MSBTS_ServiceInstance.ServiceStatusプロパティを使用します。

    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アダプターには、最新バージョンのFTPコードを使用する優れた方法があります。これにより、安定性の問題が解決する場合があります。

    BizTalk 2013タグから推測すると、おそらく2016バージョンを使用していないと思われます。その場合、少なくともCU3であるかを再確認してください。これにより、いくつかの重大なSFTPバグが解決されます。

  • 前へ java - JPAクエリ:サブクエリをグループ化条件に結合する
  • 次へ datetime - javaで、1970年1月1日00 - 00:00 gmtからエポック秒からミリ秒に変換する方法