共用方式為


Get-CsDiagnosticHeaderConfiguration

 

上次修改主題的時間: 2012-03-23

傳回組織目前所使用的診斷標頭組態設定的相關資訊。診斷標頭組態設定決定 SIP 訊息是否伴隨著標頭資訊。此資訊在疑難排解和報告錯誤時很有用。

語法

Get-CsDiagnosticHeaderConfiguration [-Identity <XdsIdentity>] [-LocalStore <SwitchParameter>]

Get-CsDiagnosticHeaderConfiguration [-Filter <String>] [-LocalStore <SwitchParameter>]

詳細描述

傳送 SIP (工作階段初始通訊協定) 訊息時,您可以在每則訊息上附加 ms-diagnostics 標頭。此訊息 (一般使用者看不到) 包含有助於疑難排解連線問題或報告錯誤的資訊。例如,診斷標頭可包含啟用用戶端應用程式 (例如 Microsoft Lync 2010) 的錯誤代碼,以在發生特定情況時採取預先決定動作。

若是在內部網路內傳送的 SIP 訊息,有幾個理由可以不包含這些診斷標頭:它們對訊息大小的影響最小,且對於要解決連線問題的系統管理員來說可能是沒價值的工具。但是,診斷標頭也包含了一些您可能不想讓內部網路以外人員看到的資訊,像是 SIP 伺服器的完整網域名稱 (FQDN)。因此,診斷標頭組態設定可讓您決定是否傳送診斷標頭給外部網路使用者 (例如,同盟網域的使用者) 和/或外部使用者 (外部使用者係指從內部網路之外進行連線,且尚未經過驗證的使用者)。

依預設,標頭不會包含在傳送給外部網路或未驗證的使用者的訊息中。不過,您可以修改通用診斷標頭設定,以將標頭包含在給外部網路和/或未驗證的使用者的訊息中。或者,您可以在站台範圍或服務範圍 (針對 Edge Server 或登錄器服務) 建立自訂設定。這樣一來,您就可以選擇包含從某一個站台或經由某一個 Edge Server 傳送的訊息診斷標頭,同時不允許從其他站台或經由其他 Edge Server 傳送的訊息診斷標頭。

Get-CsDiagnosticHeaderConfiguration 指令程式提供方法,讓您擷取目前組織中使用的診斷標頭組態設定的相關資訊。

誰可以執行此 Cmdlet:下列群組的成員預設會獲授權可以在本機上執行 Get-CsDiagnosticHeaderConfiguration Cmdlet:RTCUniversalUserAdmins、RTCUniversalServerAdmins。若要傳回所有獲指派此 Cmdlet 的角色存取控制 (RBAC) 角色清單 (包括您自行建立的自訂 RBAC 角色),請在 Windows PowerShell 提示字元中執行下列命令:

Get-CsAdminRole | Where-Object {$_.Cmdlets –match "Get-CsDiagnosticHeaderConfiguration"}

參數

參數 必要 類型 描述

Identity

選用

Xds 識別身份

要傳回的診斷標頭組態設定的唯一識別碼。若要傳回在此站台範圍設定的設定,請使用如下的語法:-Identity "site:Redmond"。若要傳回在服務範圍設定的設定,請使用如下的語法:-Identity "service:EdgeServer:atl-edge-001.litwareinc.com"。若要傳回通用設定,請使用此語法:-Identity global。

如果未指定此參數,則會傳回目前使用中的所有診斷標頭組態設定。

Filter

選用

字串

可讓您在指定要傳回的設定集合時使用萬用字元。例如,此語法會傳回站台範圍設定的所有設定:-Filter "site:*"。此語法會傳回所有在服務範圍內所做的設定:-Filter "service:*"。

請注意,您不能在同一個命令中同時使用 Filter 和 Identity 參數。

LocalStore

選用

切換參數

從中央管理存放區本機複本擷取診斷標頭組態資料,而不是從中央管理存放區本身擷取。

輸入類型

無。Get-CsDiagnosticHeaderConfiguration 不會接受管線傳送的輸入。

傳回類型

Get-CsDiagnosticHeaderConfiguration 會傳回 Microsoft.Rtc.Management.WritableConfig.Settings.Diagnostics.DiagnosticHeaderSettings 物件的執行個體。

範例

-------------------------- 範例 1 ------------------------

Get-CsDiagnosticHeaderConfiguration

前面的命令會傳回組織目前使用的所有診斷標頭組態設定的相關資訊。作法是呼叫 Get-CsDiagnosticHeaderConfiguration 且不用任何參數。

-------------------------- 範例 2 ------------------------

Get-CsDiagnosticHeaderConfiguration -Identity site:Redmond

在範例 2 中,會傳回診斷標頭組態設定的單一集合:集合的 Identity 為 site:Redmond。

-------------------------- 範例 3 ------------------------

Get-CsDiagnosticHeaderConfiguration -Filter "service:*"

範例 3 所示的命令會傳回所有在服務範圍設定的診斷標頭設定。作法是呼叫 Get-CsDiagnosticHeaderConfiguration 和 Filter 參數;篩選值 "service:*" 可確保只傳回 Identity 是以字元 "service:" 開頭的設定。

-------------------------- 範例 4 ------------------------

Get-CsDiagnosticHeaderConfiguration | Where-Object {$_.SendToExternalNetworks -eq $True}

範例 4 會傳回所有允許傳送至外部網路的診斷標頭組態設定。為了執行此工作,命令先呼叫 Get-CsDiagnosticHeaderConfiguration 且不用任何參數,這樣會傳回目前使用中的所有診斷標頭設定的集合。接著將此集合傳送給 Where-Object 指令程式,這樣只會選取 SendToExternalNetworks 屬性等於 True 的設定。

-------------------------- 範例 5 ------------------------

Get-CsDiagnosticHeaderConfiguration | Where-Object {$_.SendToExternalNetworks -eq $True -or $_.SendToOutsideUnauthenticatedUsers -eq $True}

範例 5 所示的命令會傳回至少符合下列條件之一的診斷標頭組態設定的相關資訊:1) SendToExternalNetworks 屬性等於 True;且/或 2) SendToOutsideUnauthenticatedUsers 等於 True。為達成此目的,此命令會先用 Get-CsDiagnosticHeaderConfiguration 傳回目前使用中的所有診斷標頭設定集合。接著將此集合傳送給 Where-Object,這會挑出 SendToExternalNetworks 和/或 SendToOutsideUnauthenticatedUsers 屬性為 True 的設定。

-or 運算子指定傳回的設定只需符合指定條件之一。若要求設定必須符合兩個指定條件,則要改用 -and 運算子:

Where-Object {$_.SendToExternalNetworks -eq $True -and $_.SendToOutsideUnauthenticatedUsers -eq $True}