簡體   English   中英

無法使用Powershell獲取Biztalk主機實例狀態

[英]Not able to get Biztalk host instance status using Powershell

我正在使用以下腳本從同一域中的遠程服務器獲取主機實例狀態。

    $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配置向導並配置“組”功能。 在第10行:char +3-Get-WmiObject -Class“ MSBTS_HostInstance”-命名空間'root \\ MicrosoftBizTalkSer ... + ~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~ + CategoryInfo:InvalidOperation:(:) [Get-WmiObject],COMException + FullyQualifiedErrorId:GetWMICOMException,Microsoft.PowerShell.Commands.GetWmiObjectCommand

有人知道問題出在哪嗎? 或者,如果您有一個更好的腳本版本,那么它或任何跨域腳本也將有所幫助。

注意:我的本地計算機在PSv3上,遠程BizTalk服務器在v2上。

我將使用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

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM