使用 Application Insights 監視應用程式
當您的金融組織的應用程式出現問題時,導致客戶無法存取其帳戶。 如果應用程式問題無法快速解決,則客戶滿意度會受到負面影響。 您的組織希望在移至 Azure 時,能夠避免發生這些問題。
此單元描述如何將 Azure 監視器 Application Insights 與應用程式整合。 您可以使用 Application Insights 來檢查應用程式的健康情況,並更快速地解決問題。
使用 Application Insights 來:
- 分析並解決影響應用程式健康情況和效能的問題。
- 改善應用程式的開發生命週期。
- 評估使用者體驗,並分析使用者的行為。
將 Application Insights 與您的應用程式整合
若要整合 Application Insights 與您的應用程式,您可以在 Azure 入口網站中啟用 Application Insights,或使用 Application Insights 檢測您的應用程式。 檢測是指使用代理程式或 SDK,啟用從應用程式收集監視資料的功能。 根據應用程式的語言和平台,檢測的方法會有所不同。
在許多情況下,您可以在 Azure 入口網站中使用無程式碼連結或使用代理程式實作檢測,而不需要存取應用程式原始程式碼。 例如,針對裝載於 Azure App Service 上的 .NET 和 .NET Core 應用程式,您可以使用 Azure 入口網站中的切換開關,啟用使用 Application Insights 收集監視資料的功能。
Application Insights 會自動收集有關應用程式效能和健康情況的資料,並且在 Azure 入口網站中顯示此資料。 您可以在 Application Insights 左側導覽中選取 [失敗],以取得針對您的應用程式收集的所有失敗清單,並鑽研每個失敗。
若要繼續調查錯誤或例外狀況的根本原因,您可以鑽研至有問題的交易,取得詳細的端對端交易檢視,其中包含相依性和例外狀況詳細資料。
Application Insights 也會自動偵測應用程式相依性,以支援分散式追蹤並建立應用程式拓撲檢視。 您可以在 Application Insights 左側導覽中選取 [應用程式對應] 來查看此拓撲。
您可以選取對應中的每個元件,以檢視其詳細資料。 例如,您可以檢視執行個體的最慢要求,並進一步調查效能。 這些詳細分析有助於您更加了解應用程式,並回應其需求。
監視應用程式的效能
您可以進一步調查緩慢的交易,識別緩慢的要求和伺服器端相依性。 從應用程式對應中選取 [調查效能],或從 Application Insights 左側導覽中選取 [效能] 來向下切入。
在 [效能] 畫面上,您可以藉由選取時間範圍、作業名稱和感興趣的持續時間,隔離緩慢的交易。 系統也會提示您交易中自動識別的異常和共通性。 您可以從這裡切入到個別交易,取得交易詳細資料的端對端檢視,其中包含相依性的甘特圖。
如果您使用 Application Insights 檢測網頁,您也可以看到網頁檢視,以及瀏覽器作業和相依性。 收集此瀏覽器資料需要將指令碼新增至您的網頁。 在您新增指令碼之後,您可以藉由選取 [瀏覽器] 切換開關,存取網頁檢視及其相關聯的效能計量。
分析使用者行為
使用 Application Insights 檢測網頁會收集使用方式資訊,以增強伺服器端監視功能。 相同瀏覽器端 JavaScript 檢測提供使用方式資料,包括使用者、工作階段、事件、瀏覽器版本、作業系統版本和位置等數目。 此使用方式資料顯示您應用程式的哪些頁面最熱門、使用者在何處離開,以及特定頁面的轉換和保留率。
上述範例顯示最熱門的瀏覽器和版本。 您可以使用這種類型的資訊,為配置功能和效能測試資源制定旁徵博引的決定。
監視應用程式的可用性
您可以使用 Application Insights [可用性] 頁面持續監視應用程式健康情況,並檢查來自不同地理位置的應用程式健康情況。
建立可用性測試之後,您可以使用 [可用性] 頁面查看應用程式在不同位置的執行情況。 [散佈圖] 圖表上的每個點都代表已執行的測試。 紅點表示測試失敗。
選取紅點以查看測試失敗的詳細明細,包括造成此問題可能原因的資訊。 您可以使用此資訊進行適當回應。
當您建立可用性測試時,可以指定頻率、應用程式的 URL 及其測試位置等詳細資料。 下列範例顯示測試的組態,每隔五分鐘從五個地理位置傳送要求到應用程式。
取得通知並採取動作
您可以設定 Application Insights 警示規則來監視應用程式的效能和可用性。 您可以指定應觸發警示的條件以及規定如何處理警示。 例如,Application Insights 可以在指定數目的位置無法使用或發生特定數目的例外狀況時傳送警示。
您也可以指定要通知警示的人員。 Application Insights 可以透過電子郵件或簡訊傳送通知,或者使用 Runbook 和 Webhook 以自動化方式回應警示。