使用 Azure 服務對應解決方案

服務對應會自動在 Windows 及 Linux 系統上探索應用程式元件,並對應服務之間的通訊。 有了服務對應,您可將伺服器視為可提供重要服務的互連系統。 服務對應顯示以下各項之間的連線:伺服器、處理序、傳入與傳出連線延遲,以及任何連接 TCP 結構的連接埠。 除了安裝代理程式外,無需任何設定。

重要

將於 2025 年 9 月 30 日淘汰服務對應。 若要監視伺服器、程序、輸入和輸出連線延遲的連線,或任何 TCP 連線結構間的連接埠,請務必在此日期前移轉至 Azure 監視器 VM 深入解析

本文說明如何部署並使用服務對應。 本解決方案的先決條件是:

注意

若您已部署服務對應,您現在也可透過 VM 深入解析來檢視對應,其中包含更多功能,可用來監視 VM 的健康情況與效能。 若要深入了解,請參閱 VM 深入解析概觀。 若要了解服務對應解決方案與 VM 深入解析對應功能之間的差異,請參閱常見問題集

登入 Azure

登入 Azure 入口網站

啟用服務對應

  1. Azure Marketplace 啟用服務對應解決方案。 或參考從方案庫新增監視解決方案,使用其中所述處理序。

  2. 針對您想取得資料的每部電腦,在 Windows 安裝相依性代理程式,或在 Linux 安裝相依性代理程式。 相依性代理程式可監視直接相鄰的連線,因此您可能不需在每部電腦安裝代理程式。

  3. 從 Log Analytics 工作區,透過 Microsoft Azure 入口網站存取服務對應。 從左窗格中選取 [ 舊版解決方案 ] 選項。

    螢幕擷取畫面顯示了在工作區選取解決方案選項。

  4. 從解決方案清單,選取服務對應 (工作區名稱)。 在服務對應解決方案概觀頁面,選取服務對應摘要動態磚。

    螢幕擷取畫面顯示了服務對應摘要動態磚。

使用案例︰讓 IT 處理序可以感知相依性

探索

服務對應會自動建置跨伺服器、處理程序和協力廠商服務的一般相依性參考對應。 這會搜索並對應所有 TCP 依存性。 可識別意外連線、您依賴的遠端協力廠商系統,以及對網路傳統暗區 (例如 Active Directory) 的相依性。 若受控系統嘗試建立網路連線但失敗,服務對應會搜索該連線。 這項資訊可協助識別潛在伺服器設定錯誤、服務中斷及網路問題。

事件管理

服務對應會顯示系統如何連線並彼此影響,有助在隔離問題時免除猜測。 除了識別失敗的連線外,其也有助識別設定錯誤的負載平衡器、重要服務的意外或過度負載,以及惡意用戶端 (例如開發人員電腦跟生產系統的溝通)。 您也可以使用整合變更追蹤的工作流程,以查看後端機器或服務上的變更事件是否能夠說明事件的根本原因。

移轉保證

透過使用服務對應,您可有效規劃、加速並驗證 Azure 移轉,協助確保無任何內容遭遺漏,同時不發生意外中斷。 您可以:

  • 搜索所有需要一起遷移的相互依存系統。
  • 評定系統設定與容量。
  • 識別正在執行的系統是否仍為使用者提供服務,或是屬於應解除名單而無需移轉。

當移動完成之後,您可檢查用戶端負載與身分識別,驗證測試系統是否跟客戶連線。 若子網路規劃與防火牆定義發生問題,服務對應會透過連線失敗對應為您指出需連線的系統。

業務持續性

若您使用 Azure Site Recovery,您需要協助才能針對應用程式環境定義復原順序,服務對應可自動顯示系統如何彼此依賴。 這項資訊有助確保您的復原計畫具備可靠性。

藉由選擇重要伺服器或群組並檢視其用戶端,可以識別在伺服器還原並可用之後要復原的前端系統。 相反地,藉由查看重要伺服器的後端相依性,可以識別在焦點系統還原之前要復原的系統。

修補程式管理

服務對應會向您顯示哪些其他團隊與伺服器依賴您的服務,評定系統更新來增強您的使用效能。 如此一來,在關閉系統進行修補之前,您可事先通知他們。 服務對應也可增強修補程式管理,會向您顯示服務是否可供使用,以及在修補並重新啟動之後,是否已正確連線。

對應概觀

在伺服器安裝服務對應代理程式之後,會針對伺服器的所有 TCP 連線處理序收集相關資訊。 也會針對所有處理序的傳入與傳出連線收集詳細資料。

在左窗格的清單中,可以選取具有服務對應代理程式的機器或群組,將它們在指定時間範圍內的相依性視覺化。 機器相依性對應聚焦特定機器。 會顯示 TCP 直接用戶端的所有機器或機器的伺服器。 機器群組對應會顯示伺服器集合與其相依性。

螢幕擷取畫面顯示了服務對應概觀。

對應內的機器可以展開,以顯示所選時間範圍內具有作用中網路連線的執行中處理序群組與處理序。 展開具有服務對應代理程式的遠端機器以顯示處理序詳細資料時,只會顯示與焦點機器通訊的處理序。

連線到焦點機器的無代理程式前端機器計數,會顯示在所連線的處理序左側。 若焦點機器正連線到無代理程式的後端機器,則會將後端伺服器納入伺服器連接埠群組。 此群組也包括相同連接埠號碼的其他連線。

根據預設,服務對應會顯示最近 30 分鐘的對應相依性資訊。 您可利用左上角的時間控制項來查詢對應 (可查詢最多一小時內的歷史記錄),查看過去的相依性情況。 例如,您可能想要查看事件發生期間的情況或發生變更之前的情況。 服務對應資料會在付費工作區儲存 30 天,在免費工作區儲存 7 天。

狀態徽章和框線色彩

在對應的每部伺服器底部,可能會出現狀態徵章清單,顯示伺服器狀態資訊。 徽章代表其中一項解決方案整合功能包含伺服器的相關資訊。

選取徽章即可直接前往右窗格狀態的詳細資料。 目前可用的狀態徽章包括警示服務台變更安全性更新

根據狀態徽章的嚴重性,機器節點框線會呈現紅色 (重大)、黃色 (警告) 或藍色 (資訊)。 色彩可代表任何狀態徽章最嚴重的狀態。 灰色框線代表沒有狀態指標的節點。

螢幕擷取畫面顯示了狀態徽章。

處理序群組

處理序群組結合一般產品或服務的相關處理序為單一處理序群組。 當展開機器節點時,會顯示獨立處理序以及處理序群組。 在處理序群組內,若傳入或傳出至處理序的連線失敗,則整個處理序群組的連線會顯示為失敗。

機器群組

機器群組可讓您以一組伺服器為中心來查看對應,而不僅是單一伺服器。 如此一來,您可在單一對應查看多層應用程式或伺服器叢集的所有成員。

使用者可選取伺服器所屬的群組,並選擇該群組的名稱。 然後,您可選擇檢視群組及其所有處理序與連線。 您也可僅檢視特定處理序與連線,若與群組其他成員直接相關。

螢幕擷取畫面顯示了機器群組。

建立機器群組

建立群組:

  1. 機器清單選取您要的一或多部機器,然後選取加入群組

    螢幕擷取畫面顯示了建立群組。

  2. 選取建立新群組並為群組命名。

    螢幕擷取畫面顯示了命名群組。

注意

電腦群組是限制為 10 部伺服器。

A足re足檢視群組

在建立部分群組之後,您可進行檢視。

  1. 選取 [群組] 索引標籤。

    螢幕擷取畫面顯示了群組分頁。

  2. 選取群組名稱,檢視該機器群組的對應。

    螢幕擷取畫面顯示了機器群組對應。

    屬於群組的機器在對應內以白色外框顯示。

  3. 展開群組,列出組成機器群組的機器。

    螢幕擷取畫面顯示了機器群組的機器。

依處理序篩選

您可切換對應檢視,顯示群組的所有處理序與連線,或僅顯示與機器群組直接相關的處理序與連線。 預設檢視會顯示所有處理序。

  1. 選取對應上方的篩選圖示可變更檢視。

    螢幕擷取畫面顯示正在篩選群組。

  2. 選取所有處理序,查看群組內每部機器的對應,包含所有處理序與連線。

    螢幕擷取畫面顯示了所有機器群組處理序選項。

  3. 若要建立簡化檢視,請將檢視變更為僅顯示連接群組的處理序。 然後縮小對應範圍,僅顯示直接連線群組其他機器的處理序及連線。

    螢幕擷取畫面顯示了機器群組篩選處理序。

將機器加入群組

若要將機器加入現有群組,請在所需機器旁勾選核取方塊,然後選取加入群組。 然後選取群組來加入機器。

從群組移除機器

群組清單展開群組名稱,列出機器群組內的機器。 在您要移除的機器旁選取省略符號功能表,然後選取移除

螢幕擷取畫面顯示了從群組刪除機器。

移除或重新命名群組

群組清單選取群組名稱旁的省略符號功能表。

螢幕擷取畫面顯示了機器群組功能表。

角色圖示

某些處理序會在機器上扮演特定角色,例如網頁伺服器、應用程式伺服器及資料庫。 服務對應會為程序和機器方塊加上角色圖示註解,以協助您一下就識別出程序或伺服器所扮演的角色。

角色圖示 描述
網頁伺服器 網頁伺服器
應用程式伺服器 應用程式伺服器
資料庫伺服器 資料庫伺服器
LDAP 伺服器 LDAP 伺服器
SMB 伺服器 SMB 伺服器

螢幕擷取畫面顯示了角色圖示。

失敗的連線

失敗的連線會在服務對應顯示於處理序與電腦對應。 紅色虛線表示用戶端系統無法連接程式或連接埠。

已部署服務對應代理程式的系統如果就是嘗試進行失敗連線的系統,則會報告失敗的連線。 服務對應會觀察無法建立連線的 TCP 通訊端,藉以衡量此處理序。 連線失敗的原因可能是防火牆、用戶端或伺服器設定不正確,或遠端服務無法使用。

螢幕擷取畫面顯示了服務對應的一部分,突出顯示了紅色虛線,表示 backup.pl 處理序與連接埠 4475 之間的連線失敗。

了解失敗的連線有助於疑難排解、移轉驗證、安全性分析和整體架構理解。 連線失敗有時無關緊要,但通常直接指出問題。 在雲端移轉之後,可能突然無法存取容錯移轉環境,或是兩個應用程式層級可能無法溝通。

用戶端群組

用戶端群組是對應的選項,代表沒有相依性代理程式的用戶端機器。 單一用戶端群組代表個別處理序或機器的用戶端。

螢幕擷取畫面顯示了用戶端群組。

若要查看用戶端群組伺服器的 IP 位址,請選取群組。 群組的內容會列在 [用戶端群組屬性] 窗格中。

螢幕擷取畫面顯示了用戶端群組屬性。

伺服器連接埠群組

伺服器連接埠群組的選項在沒有相依性代理程式的伺服器代表伺服器連接埠。 此方塊包含伺服器連接埠,以及與該連接埠連線的伺服器數目。 展開方塊可查看個別伺服器和連線。 如果選項只有一部伺服器,則會顯示名稱或 IP 位址。

螢幕擷取畫面顯示了伺服器連接埠群組。

捷徑功能表

選取任何伺服器右上方的省略符號 (...),可顯示伺服器的內容功能表。

螢幕擷取畫面顯示了服務對應伺服器的載入伺服器對應及顯示自我連結選項。

載入伺服器對應

選取載入伺服器對應可移至新對應,以所選伺服器作為新的焦點機器。

選取顯示自我連結可重新繪製伺服器節點,包括任何自我連結,這些自我連結是在伺服器處理序開始及結束的 TCP 連線。 如果顯示自我連結,則功能表命令會變更為隱藏自我連結,以便您可加以關閉。

電腦摘要

[機器摘要] 窗格包含伺服器作業系統的概觀、相依性計數,以及其他解決方案的資料。 這些資料包括效能計量、服務台票證、變更追蹤、安全性和更新。

螢幕擷取畫面顯示機器摘要窗格。

電腦和處理序屬性

當您在服務對應瀏覽對應時,選取機器及處理序可取得有關屬性的更多內容。 機器會提供有關 DNS 名稱、IPv4 位址、CPU 和記憶體容量、VM 類型、作業系統和版本、上次重新開機時間,以及其 OMS 和服務對應代理程式識別碼的資訊。

螢幕擷取畫面顯示了機器屬性窗格。

對於正在執行處理序的作業系統,您可從其中繼資料收集處理序詳細資訊。 詳細資料包括處理序名稱、處理序描述、使用者名稱及 Windows 網域、公司名稱、產品名稱、產品版本、工作目錄、命令列與處理序開始時間。

螢幕擷取畫面顯示了處理序屬性窗格。

處理序摘要窗格提供有關處理序連線的詳細資訊,包括其連線連接埠、傳入及傳出連線,以及失敗的連線。

螢幕擷取畫面顯示了處理序摘要窗格。

警示整合

服務對應會與 Azure 警示整合,以顯示所選時間範圍內針對所選伺服器觸發的警示。 如果有最新警示,伺服器會顯示圖示,且 [機器警示] 窗格會列出警示。

螢幕擷取畫面顯示了機器警示窗格。

若要讓服務對應顯示相關警示,請建立針對特定電腦觸發的警示規則。 若要建立適當的警示︰

  • 包含按照電腦分組的子句。 例如依電腦間隔 1 分鐘
  • 選擇依據計量量值來發出警示。

記錄事件整合

服務對應會與記錄搜尋整合,以顯示所選時間範圍期間,適用於所選伺服器的所有可用記錄事件計數。 您可選取事件計數清單的任一列,以跳至「記錄搜尋」並查看個別記錄事件。

螢幕擷取畫面顯示了機器記錄檔事件窗格。

服務台整合

當「服務對應」和「IT 服務管理連接器」這兩個解決方案皆已在 Log Analytics 工作區中啟用並設定,便會自動進行整合。 服務對應中的整合會標示為「服務台」。如需詳細資訊,請參閱使用 IT 服務管理連接器集中管理 ITSM 工作項目

[機器服務台] 窗格會列出所選時間範圍內所選伺服器的所有 IT 服務管理事件。 如果有最新項目,伺服器會顯示圖示,且 [機器服務台] 窗格會列出這些項目。

螢幕擷取畫面顯示了機器服務台窗格。

若要在連線的 ITSM 解決方案開啟項目,請選取檢視工作項目

若要檢視記錄搜尋項目的詳細資料,請選取顯示於記錄搜尋。 連線計量會寫入記錄分析的兩個新資料表。

變更追蹤整合

當「服務對應」和「變更追蹤」這兩個解決方案皆已在 Log Analytics 工作區中啟用並設定,便會自動進行整合。

機器變更追蹤窗格會列出所有變更,包括最新變更,可向下展開至「記錄搜尋」取得詳細資訊的連結。

螢幕擷取畫面顯示了機器變更追蹤窗格。

以下映像是 ConfigurationChange 事件的詳細檢視,您可能會在選取 顯示於記錄分析之後看到事件。

螢幕擷取畫面顯示了 ConfigurationChange 事件。

效能整合

[機器效能] 窗格會顯示所選伺服器的標準效能計量。 這些計量包含 CPU 使用率、記憶體使用率、傳送和接收的網路位元組,以及按照傳送和接收的網路位元組排序的前幾個處理序清單。

螢幕擷取畫面顯示了機器效能窗格。

若要查看效能資料,您可能需要啟用適當的記錄分析效能計數器。 您要啟用的計數器:

Windows:

  • Processor(*)\% Processor Time
  • Memory\% Committed Bytes In Use
  • Network Adapter(*)\Bytes Sent/sec
  • Network Adapter(*)\Bytes Received/sec

Linux:

  • Processor(*)\% Processor Time
  • Memory(*)\% Used Memory
  • Network Adapter(*)\Bytes Sent/sec
  • Network Adapter(*)\Bytes Received/sec

安全性整合

當「服務對應」和「安全性與稽核」這兩個解決方案皆已在 Log Analytics 工作區中啟用並設定,便會自動進行整合。

[機器安全性] 面板會顯示安全性與稽核解決方案中針對所選伺服器的資料。 此窗格會列出所選時間範圍內伺服器任何未處理之安全性問題的摘要。 選擇任何安全問題都會深入記錄搜尋,以獲取詳細資訊。

螢幕擷取畫面顯示了機器安全性窗格。

更新整合

當「服務對應」和「更新管理」這兩個解決方案皆已在 Log Analytics 工作區中啟用並設定,便會自動進行整合。

[機器更新] 面板會顯示更新管理解決方案中針對所選伺服器的資料。 此窗格會列出所選時間範圍內伺服器所缺少之任何更新的摘要。

螢幕擷取畫面顯示了機器更新窗格。

Log Analytics 記錄

服務對應的電腦和處理序清查資料可供在 Log Analytics 中進行搜尋。 您可以將此資料套用至各種案例,包括移轉規劃、容量分析、探索和隨選效能疑難排解。

除了當處理序或電腦啟動時或是新增到服務對應時所產生的記錄外,每小時還會為每個唯一的電腦和處理序產生一筆記錄。 這些記錄具有下表中的屬性。

ServiceMapComputer_CL 事件的欄位及值對應到 ServiceMap Azure Resource Manager API 的電腦資源欄位。 ServiceMapProcess_CL 事件的欄位及值對應到 ServiceMap Azure Resource Manager API 的處理序資源欄位。 Resourcename_s 欄位即為對應 Azure Resource Manager 資源的名稱欄位。

注意

在服務對應功能增加之際,這些欄位可能會隨之變更。

您可使用內部產生的屬性來識別唯一的處理序與電腦:

  • 電腦:使用 ResourceIdResourceName_s 可單獨識別 Log Analytics 工作區的電腦。
  • 流程:使用 ResourceId 來唯一識別 Log Analytics 工作區的流程。 ResourceName_s 的內容在執行 MachineResourceName_s 處理序的機器不會重複。

因為在指定時間範圍內可以有多筆指定處理序和電腦的記錄,針對相同電腦或處理序的查詢可能會傳回多筆記錄。 若只要包含最新記錄,請在查詢中新增 "| dedup ResourceId"

連接

連線計量會寫入記錄分析名為 VMConnection 的新資料表。 此表格提供有關機器傳入及傳出連線的資訊。 連線計量也會透過 API 來公開,這類 API 會提供方法來取得某個時間範圍內的特定計量。

在接收通訊端接收所產生的 TCP 連線為傳入連線。 因連線指定 IP 及連接埠而建立的連線為傳出連線。 連線的方向由 Direction 屬性表示,可設定為 inboundoutbound

這些資料表中的記錄都是從 Dependency Agent 所報告的資料產生的。 每筆記錄均代表在一分鐘時間間隔內的觀測。 TimeGenerated 屬性指示時間間隔的開始。 每筆記錄包含的資訊都可識別各個實體 (即連線或連接埠) 以及該實體的關聯計量。 目前,僅報告經由 IPv4 使用 TCP 所發生的網路活動。

為了管理成本及複雜性,連線記錄不代表個別實體網路連線。 將多個實體網路連線群組為一個邏輯連線,其接著會反映於各自的資料表中。 因此,VMConnection 資料表的記錄代表邏輯群組,而非觀察到的個別實體連線。

在指定的一分鐘間隔期間,對下列屬性共用相同值的實體網路連線,會彙總為 VMConnect 的單一邏輯記錄。

屬性 描述
Direction 連線方向。 值為 inboundoutbound
Machine 電腦的 FQDN。
Process 啟動或接受連線的處理序識別或處理序群組。
SourceIp 來源 IP 位址。
DestinationIp 目的地 IP 位址。
DestinationPort 目的地連接埠號碼。
Protocol 用於連線的通訊協定。 值為 tcp

為了考慮分組的影響,記錄的下列屬性提供的資訊跟群組實體連線數量有關。

屬性 描述
LinksEstablished 在報告時間內建立的實體網路連線數量。
LinksTerminated 在報告時間內終止的實體網路連線數量。
LinksFailed 在報告時間範圍內失敗的實體網路連線數目。 此資訊目前僅適用於輸出連線。
LinksLive 在報告時間結束時開啟的實體網路連線數量。

計量

除了連接計數計量外,對於在特定邏輯連線或網路連接埠傳送及接收的資料量,相關資訊也包含在記錄的下列屬性。

屬性 描述
BytesSent 在報告時間內傳送的位元組總數。
BytesReceived 在報告時間內接收的位元組總數。
Responses 已在報告時間範圍內觀測到的回應數目。
ResponseTimeMax 在報告時間內觀察到的最大回應時間 (以毫秒為單位)。 如果沒有值,則屬性為空白字元。
ResponseTimeMin 在報告時間內觀察到的最短回應時間 (以毫秒為單位)。 如果沒有值,則屬性為空白字元。
ResponseTimeSum 在報告時間內觀察到的所有回應時間總和 (以毫秒為單位)。 如果沒有值,則屬性為空白字元

報告的第三種資料是回應時間。 對於透過連線傳送的處理及回覆請求,呼叫者需要等待遠端端點多長時間?

所報告的回應時間是基礎應用程式通訊協定的真正回應時間估計值。 會觀察介於實體網路連線來源與目標端之間的資料流量,根據下列透過啟發學習法進行計算,,。

就概念上來說,回應時間是下列時間差,即請求的最後位元組離開傳送者的時間,以及回應的最後位元組返回傳送者的時間。 這兩個時間戳記用於描述特定實體連線的請求及回應事件。 它們之間的差異代表單一要求的回應時間。

於首次發佈此功能時,我們的演算法為近似值,成功率可能有所不同,具體取決於特定網路連線實際採用的應用程式通訊協定。 例如,目前的方法適合基於要求與回應的通訊協定,例如 HTTP/HTTPS。 但是這種方法不適合單向或基於訊息佇列的通訊協定。

此處有一些需要考慮的重要事項:

  • 如果處理序會在同一個 IP 位址但透過多個網路介面來接受連線,則將會報告每個介面的個別記錄。
  • 使用萬用字元 IP 的記錄將不會包含任何活動。 包含這些連線代表機器的連接埠對傳入流量開放。
  • 為了減少詳細程度及資料量,當特定 IP 位址具有相符的記錄 (相同處理序、連接埠及通訊協定) 時,如 IP 包含萬用字元會省略其記錄。 當 IP 包含萬用字元而記錄遭到省略時,具有特定 IP 位址的 IsWildcardBind 記錄屬性將設定為 True.代表通訊埠會公開於報告機器的每個介面。
  • 僅限於特定介面的連接埠會將 IsWildcardBind 設定為 False

命名與分類

為方便起見,RemoteIp 屬性包含遠端連線的 IP 位址。 對於傳入連線,RemoteIpSourceIp 相同,而對於傳出連線,則與 DestinationIp 相同。 RemoteDnsCanonicalNames 屬性代表機器針對 RemoteIp 報告的 DNS 規範名稱。 保留 RemoteDnsQuestionsRemoteClassification 屬性作為將來使用。

地理位置

VMConnection 還在記錄的以下屬性包括每個連線記錄的遠端地理位置資訊。

屬性 描述
RemoteCountry 代管 RemoteIp 的國家/地區名稱。 例如美國
RemoteLatitude 地理位置緯度。 例如 47.68
RemoteLongitude 地理位置經度。 例如 -122.12

惡意 IP

VMConnection 資料表的每個 RemoteIp 屬性都會根據一組具有已知惡意活動的 IP 進行檢查。 如果 RemoteIp 經識別為惡意,則會在記錄的下列屬性填入下列屬性 (當 IP 不被視為惡意時,則屬性為空)。

屬性 描述
MaliciousIp RemoteIp 位址。
IndicatorThreadType 偵測到的安全威脅指標是下列值的其中之一:Botnet, C2CryptoMiningDarknetDDosMaliciousUrlMalwarePhishingProxyPUAWatchlist.
Description 觀察到的威脅的說明。
TLPLevel 流量燈號協議 (TLP) 等級是其中一個定義值:白色綠色橙色紅色
Confidence 值為 0 – 100
Severity 值為 0 — 5 ,其中 5 最嚴重,0 為不嚴重。 預設值為 3
FirstReportedDateTime 提供者第一次回報指標。
LastReportedDateTime Interflow 最後一次看到指標。
IsActive 使用 TrueFalse 值表示指標停用。
ReportReferenceLink 與指定的可預見值相關之報告的連結。
AdditionalInformation 針對觀察到的安全威脅提供詳細資訊 (如適用)。

ServiceMapComputer_CL 記錄

類型為 ServiceMapComputer_CL 的記錄會有伺服器 (具有服務對應代理程式) 的清查資料。 這些記錄具有下表中的屬性。

屬性 描述
Type ServiceMapComputer_CL
SourceSystem OpsManager
ResourceId 工作區中機器的唯一識別碼
ResourceName_s 工作區中機器的唯一識別碼
ComputerName_s 電腦 FQDN
Ipv4Addresses_s 伺服器的 IPv4 位址清單
Ipv6Addresses_s 伺服器的 IPv6 位址清單
DnsNames_s DNS 名稱的陣列
OperatingSystemFamily_s Windows 或 Linux
OperatingSystemFullName_s 作業系統的完整名稱
Bitness_s 機器的運算位元數 (32 位元或 64 位元)
PhysicalMemory_d 實體記憶體 (MB)
Cpus_d CPU 數目
CpuSpeed_d CPU 速度 (MHz)
VirtualizationState_s unknownphysicalvirtualhypervisor
VirtualMachineType_s hypervvmware 等等
VirtualMachineNativeMachineId_g VM 識別碼 (由其 Hypervisor 指派)
VirtualMachineName_s VM 的名稱
BootTime_t 開機時間

ServiceMapProcess_CL 類型記錄

類型為 ServiceMapProcess_CL 的記錄會有伺服器 (具有服務對應代理程式) 上 TCP 連線處理程序的清查資料。 這些記錄具有下表中的屬性。

屬性 描述
Type ServiceMapProcess_CL
SourceSystem OpsManager
ResourceId 工作區中處理序的唯一識別碼
ResourceName_s 針對執行處理程序的機器處理序提供唯一識別碼
MachineResourceName_s 機器的資源名稱
ExecutableName_s 處理序可執行檔的名稱
StartTime_t 處理序集區的開始時間
FirstPid_d 處理序集區中的第一個 PID
Description_s 處理序的描述
CompanyName_s 公司的名稱
InternalName_s 內部名稱
ProductName_s 產品的名稱
ProductVersion_s 產品版本
FileVersion_s 檔案版本
CommandLine_s 命令列
ExecutablePath _s 可執行檔的路徑
WorkingDirectory_s 工作目錄
UserName 執行處理序的帳戶
UserDomain 執行處理序的網域

記錄搜尋範例

本節列出記錄搜尋範例。

列出所有已知的機器

ServiceMapComputer_CL | summarize arg_max(TimeGenerated, *) by ResourceId

列出所有受控電腦的實體記憶體容量

ServiceMapComputer_CL | summarize arg_max(TimeGenerated, *) by ResourceId | project PhysicalMemory_d, ComputerName_s

列出電腦名稱、DNS、IP 和 OS

ServiceMapComputer_CL | summarize arg_max(TimeGenerated, *) by ResourceId | project ComputerName_s, OperatingSystemFullName_s, DnsNames_s, Ipv4Addresses_s

在命令列中尋找具有「sql」的所有處理程序

ServiceMapProcess_CL | where CommandLine_s contains_cs "sql" | summarize arg_max(TimeGenerated, *) by ResourceId

以資源名稱尋找機器 (最新的記錄)

search in (ServiceMapComputer_CL) "m-4b9c93f9-bc37-46df-b43c-899ba829e07b" | summarize arg_max(TimeGenerated, *) by ResourceId

以 IP 位址尋找機器 (最新的記錄)

search in (ServiceMapComputer_CL) "10.229.243.232" | summarize arg_max(TimeGenerated, *) by ResourceId

列出指定機器上的所有已知處理序

ServiceMapProcess_CL | where MachineResourceName_s == "m-559dbcd8-3130-454d-8d1d-f624e57961bc" | summarize arg_max(TimeGenerated, *) by ResourceId

列出所有執行 SQL 的電腦

ServiceMapComputer_CL | where ResourceName_s in ((search in (ServiceMapProcess_CL) "\*sql\*" | distinct MachineResourceName_s)) | distinct ComputerName_s

列出資料中心內所有唯一 curl 產品版本

ServiceMapProcess_CL | where ExecutableName_s == "curl" | distinct ProductVersion_s

為所有執行 CentOS 的電腦建立電腦群組

ServiceMapComputer_CL | where OperatingSystemFullName_s contains_cs "CentOS" | distinct ComputerName_s

摘要說明來自機器群組的輸出連線

// the machines of interest
let machines = datatable(m: string) ["m-82412a7a-6a32-45a9-a8d6-538354224a25"];
// map of ip to monitored machine in the environment
let ips=materialize(ServiceMapComputer_CL
| summarize ips=makeset(todynamic(Ipv4Addresses_s)) by MonitoredMachine=ResourceName_s
| mvexpand ips to typeof(string));
// all connections to/from the machines of interest
let out=materialize(VMConnection
| where Machine in (machines)
| summarize arg_max(TimeGenerated, *) by ConnectionId);
// connections to localhost augmented with RemoteMachine
let local=out
| where RemoteIp startswith "127."
| project ConnectionId, Direction, Machine, Process, ProcessName, SourceIp, DestinationIp, DestinationPort, Protocol, RemoteIp, RemoteMachine=Machine;
// connections not to localhost augmented with RemoteMachine
let remote=materialize(out
| where RemoteIp !startswith "127."
| join kind=leftouter (ips) on $left.RemoteIp == $right.ips
| summarize by ConnectionId, Direction, Machine, Process, ProcessName, SourceIp, DestinationIp, DestinationPort, Protocol, RemoteIp, RemoteMachine=MonitoredMachine);
// the remote machines to/from which we have connections
let remoteMachines = remote | summarize by RemoteMachine;
// all augmented connections
(local)
| union (remote)
//Take all outbound records but only inbound records that come from either //unmonitored machines or monitored machines not in the set for which we are computing dependencies.
| where Direction == 'outbound' or (Direction == 'inbound' and RemoteMachine !in (machines))
| summarize by ConnectionId, Direction, Machine, Process, ProcessName, SourceIp, DestinationIp, DestinationPort, Protocol, RemoteIp, RemoteMachine
// identify the remote port
| extend RemotePort=iff(Direction == 'outbound', DestinationPort, 0)
// construct the join key we'll use to find a matching port
| extend JoinKey=strcat_delim(':', RemoteMachine, RemoteIp, RemotePort, Protocol)
// find a matching port
| join kind=leftouter (VMBoundPort 
| where Machine in (remoteMachines) 
| summarize arg_max(TimeGenerated, *) by PortId 
| extend JoinKey=strcat_delim(':', Machine, Ip, Port, Protocol)) on JoinKey
// aggregate the remote information
| summarize Remote=makeset(iff(isempty(RemoteMachine), todynamic('{}'), pack('Machine', RemoteMachine, 'Process', Process1, 'ProcessName', ProcessName1))) by ConnectionId, Direction, Machine, Process, ProcessName, SourceIp, DestinationIp, DestinationPort, Protocol

REST API

服務對應中所有的伺服器、處理序及相依性資料,都可透過服務對應 REST API 取得。

診斷和使用量資料

Microsoft 會透過您使用服務對應自動收集使用情況及效能資料。 Microsoft 會利用此資料來提供服務對應並改善其品質、安全性及完整性。

為了提供準確且有效的疑難排解功能,這些資料包含軟體的設定資訊。 這項資訊可能是作業系統及版本、IP 位址、DNS 名稱與工作站名稱。 Microsoft 不會收集姓名、地址或其他連絡資訊。

如需有關資料收集與使用方式的詳細資訊,請參閱 Microsoft 線上服務隱私權聲明

後續步驟

深入了解 Log Analytics 中的記錄搜尋,以擷取服務對應所收集的資料。

疑難排解

如果您在安裝或執行服務對應時遇到任何問題,本節內容可以提供協助。 如果仍然無法解決問題,請聯絡 Microsoft 支援服務。

Dependency Agent 安裝問題

本節解決相依性代理程式的安裝問題。

安裝程式提示重新開機

通常在安裝或移除相依性代理程式時不需重新開機。 在極少數情況下,Windows 伺服器需要重新開機才能繼續安裝。 因檔案鎖定而需要重新啟動相依系統 (通常是 Microsoft Visual C++ 可轉散發套件) 時,便會發生這個問題。

顯示「無法安裝 Dependency Agent︰無法安裝 Visual Studio 執行階段程式庫 (程式碼 = [code_number])」訊息

Microsoft Dependency Agent 建置於 Microsoft Visual Studio 執行階段程式庫之上。 如果程式庫安裝期間發生問題,就會出現訊息。

執行階段程式庫安裝程式會在 %LOCALAPPDATA%\temp 資料夾中建立記錄。 該檔案為 dd_vcredist_arch_yyyymmddhhmmss.log,其中 archx86amd64yyyymmddhhmmss 是建立記錄時的日期及時間 (24 小時制)。 記錄會提供導致無法安裝之問題的詳細資料。

如果可以先行安裝最新的執行階段程式庫,將會十分有用。

下表列出代碼和建議的解決方式。

程式碼 描述 解決方案
0x17 程式庫安裝程式會要求尚未安裝的 Windows 更新。 查看最新的程式庫安裝程式記錄。

如果 Windows8.1-KB2999226-x64.msu 的參照後方有 Error 0x80240017: Failed to execute MSU package, 資料行,則您無須完成安裝 KB2999226 的先決條件。 請依照 Windows 通用 C 執行階段文章在前提條件部分的指示進行操作。 您可能需要執行 Windows 更新並多次重新開機,才能安裝必要條件。

再次執行 Microsoft Dependency Agent 安裝程式。

安裝後問題

本節解決安裝後的問題。

伺服器未出現在服務對應中

如果 Dependency Agent 安裝成功,但是在服務對應解決方案中沒有看到您的機器︰

  • Dependency Agent 是否安裝成功? 檢查是否已安裝服務並正在執行。

    • Windows︰尋找名稱為 Microsoft Dependency Agent 的服務。
    • Linux:尋找執行中的處理序 microsoft-dependency-agent
  • 您位於 Log Analytics 免費層嗎? 免費方案允許最多五個唯一的服務對應機器。 任何後續機器則不會顯示在服務對應中,即使先前五個機器不會再傳送資料。

  • 您的伺服器是否會將記錄檔和效能資料傳送至 Azure 監視器記錄? 移至 [Azure 監視器\記錄],然後為您的電腦執行下列查詢︰

    Usage | where Computer == "admdemo-appsvr" | summarize sum(Quantity), any(QuantityUnit) by DataType
    

您是否在結果中取得各種事件? 是否為最新的資料? 如果是,您的 Log Analytics 代理程式會正確運作並與工作區通訊。 如果沒有,請檢查您機器的代理程式。 請參閱Windows 疑難排解記錄分析代理程式Linux 疑難排解記錄分析代理程式

伺服器顯示在服務對應中,但是沒有任何處理序

您可在服務對應看到您的機器,但沒有處理程序或連線資料。 該行為表示已安裝並執行相依性代理程式,但並未載入核心驅動程式。

檢查 Windows 的 C:\Program Files\Microsoft Dependency Agent\logs\wrapper.log file 或 Linux 的 /var/opt/microsoft/dependency-agent/log/service.log file。 檔案的最後幾行應該會指出未載入核心的原因。 例如,若您更新過核心,在 Linux 上可能會不受支援。

建議

您對「服務對應」或這份文件有任何意見反應要提供給我們嗎? 請參閱我們的使用者語音頁面,您可在其中提出建議功能或針對現有建議進行投票。