【问题标题】:Not able to get Biztalk host instance status using Powershell无法使用 Powershell 获取 Biztalk 主机实例状态
【发布时间】:2014-10-06 23:54:50
【问题描述】:

我正在使用以下脚本从同一域中的远程服务器获取主机实例状态。

    $servers = ("usxxxxxxx01")

 function checkhostinstancestatusstarted ($server)
 {

$hostinstances = get-wmiobject MSBTS_HostInstance -namespace 'root\MicrosoftBizTalkServer'  | where {$_.runningserver -match $server -AND $_.hosttype -ne "2" -and $_.IsDisabled -ne    "True"}

write-host "Checking the state of all host instances on the server $server"

foreach ($hostinstance in $hostinstances)
    {
    $HostInstanceName = $HostInstance.hostname

    #Checks the host instance state
    if ($HostInstance.ServiceState -eq 1)
        {
        write-host "$HostInstanceName`: Stopped."
        }
    elseif ($HostInstance.ServiceState -eq 2)
        {
        write-host "$HostInstanceName`: Start pending."
        }
    elseif ($HostInstance.ServiceState -eq 3)
        {
        write-host "$HostInstanceName`: Stop pending."
        }
    elseif ($HostInstance.ServiceState -eq 4)
        {
        write-host "$HostInstanceName`: Started."
        }
    elseif ($HostInstance.ServiceState -eq 5)
        {
        write-host "$HostInstanceName`: Continue pending."
        }
    elseif ($HostInstance.ServiceState -eq 6)
        {
        write-host "$HostInstanceName`: Pause pending."
        }
    elseif ($HostInstance.ServiceState -eq 7)
        {
        write-host "$HostInstanceName`: Paused."
        }
    elseif ($HostInstance.ServiceState -eq 8)
        {
        write-host "$HostInstanceName`: Unknown."
        }
    }
write-host `n    
}

foreach ($server in $servers)
{
checkhostinstancestatusstarted $server 
}

我遇到了这个异常。但是BizTalk是在服务端配置的,主机实例处于运行状态。

Get-WmiObject : 服务器尚未配置。要配置服务器,请运行 BizTalk Server 配置向导并配置组功能。在 line:10 char:3 + Get-WmiObject -Class "MSBTS_HostInstance" -Namespace 'root\MicrosoftBizTalkSer ... + ~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~ + CategoryInfo : InvalidOperation: (:) [Get-WmiObject], COMException + FullyQualifiedErrorId : GetWMICOMException,Microsoft.PowerShell.Commands.GetWmiObjectCommand

有谁知道问题出在哪里?或者,如果您有更好的脚本版本,那么它或任何跨域脚本都会有所帮助。

注意:我的本地机器在 PSv3 上,而远程 BizTalk 服务器在 v2 上。

【问题讨论】:

  • 请注意:我尝试执行脚本的本地服务器位于 PSv3 上,而 biztalk 服务器位于 v2 上。

标签: powershell biztalk powershell-3.0 biztalk-2010


【解决方案1】:

我会使用BizTalk PowerShell Provider 来完成这项任务。 BizTalk 2010 版本 (1.2.0.4) 与 PowerShell 2 配合使用。如果您有可能使用它,您可以简单地使用以下命令来获取主机实例的状态:

cd BizTalk:
Set-Location '..\Platform Settings\Host Instances'
Get-ChildItem

样本输出:

Path: BizTalk:\Platform Settings\Host Instances

Name                Host Name           Windows Group       Running Server      Host Type           Service State
----                ---------           -------------       --------------      ---------           -------------
Microsoft BizTal... BizTalkServerApp... LABO\BizTalk App... JM-BT1              InProcess           Running
Microsoft BizTal... BizTalkServerIso... LABO\BizTalk Iso... JM-BT1              Isolated            NotApplicable
Microsoft BizTal... ReceiveHost         LABO\BizTalk App... JM-BT1              InProcess           Running
Microsoft BizTal... SendHost            LABO\BizTalk App... JM-BT1              InProcess           Running
Microsoft BizTal... ProcessHost         LABO\BizTalk App... JM-BT1              InProcess           StopPending
Microsoft BizTal... TrackingHost        LABO\BizTalk App... JM-BT1              InProcess           Running

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多