檢視程式碼最佳化結果
既然您已在應用程式上設定並設定程式碼優化,請存取並檢視您收到的任何見解。
存取碼優化
您可以透過兩個主要進入點來存取程式代碼優化:
透過程式代碼優化合併概觀頁面 (預覽)
透過 程式代碼優化概觀頁面檢視您的程式代碼優化結果。 在此合併概觀中,您可以跨多個 Application Insights 資源的多個訂用帳戶存取結果。
您可以搜尋篩選欄位來篩選合併的結果,或設定下列篩選:
篩選 | 描述 | 預設 |
---|---|---|
時間範圍 | 選取您想要檢視程式代碼優化結果的時間範圍。 | 過去 24 小時 |
角色 | 指派給 Reporting Services 電腦或工作負載的角色名稱。 可透過 Application Insights 組態更新。 | 所有角色 |
訂用帳戶 | 深入解析所屬的訂用帳戶。 您可以選取一個以上。 | N/A |
Application Insights | 應用程式相關聯的 Application Insights 資源。 您可以選取一個以上。 | N/A |
深入解析類型 | 問題類型,例如 CPU、記憶體或封鎖。 | 所有類型 |
然後,您可以根據所需的檢視來排序深入解析結果中的數據行,包括:
- 效能問題
- 父方法的完整名稱
透過個別 Application Insights 資源
您可以從該資源的左側功能表中,存取個別 Application Insights 資源特有的程式碼優化。 單擊 [調查>效能],然後從頂端功能表中選取 [程序代碼優化] 按鈕。
您可以搜尋篩選欄位來篩選合併的結果,或設定下列篩選:
篩選 | 描述 | 預設 |
---|---|---|
時間範圍 | 選取您想要檢視程式代碼優化結果的時間範圍。 | 過去 24 小時 |
角色 | 指派給 Reporting Services 電腦或工作負載的角色名稱。 可透過 Application Insights 組態更新。 | 所有角色 |
深入解析類型 | 問題類型,例如 CPU、記憶體或封鎖。 | 所有類型 |
然後,您可以根據所需的檢視來排序深入解析結果中的數據行,包括:
- 效能問題
- 包含該問題的配置檔數目
- 父方法的完整名稱
解譯估計的記憶體和CPU尖峰使用量百分比
預估的 CPU 和記憶體是根據應用程式中的活動量來決定。 除了記憶體和 CPU 百分比之外,程式碼最佳化也包括:
- 實際配置大小 (以位元組為單位)
- 呼叫的配置型別明細
記憶體
針對記憶體,此數位是追蹤內所有配置百分比。 例如,如果問題需要 24% 的記憶體,您花費了該呼叫內所有配置中的 24%。
CPU
在 CPU 部分,百分比是以您機器中的 CPU 數目 (四核心、八核心等) 和追蹤時間為基礎。 例如,假設您的追蹤長度為 10 秒,而您有 4 個 CPU:所以總共有 40 秒的 CPU 時間。 如果深入解析指出程式碼行使用 5% 的 CPU,則表示使用 40 秒的 5% 或 2 秒。
檢視深入解析
排序和篩選程式碼最佳化結果之後,您就可以選取每個深入解析,在窗格中檢視下列詳細資料:
- 效能錯誤深入解析的詳細描述。
- 完整呼叫堆疊。
- 修正效能問題的建議。
- 問題趨勢影響和閾值的時間軸。
深入解析
[深入解析] 索引 標籤 提供:
- 所選問題的簡短描述。
- 資源記憶體或 CPU 使用量的目前條件。
- AI 產生的修正問題建議。
注意
如果您沒有看到任何深入解析,則程式碼最佳化服務可能不會注意到您的程式碼中的任何效能瓶頸。 繼續回來查看是否有任何深入解析彈出。
呼叫堆疊
在深入解析詳細資料窗格的 [呼叫堆疊] 標題底下,您可以:
- 選取 [展開],以檢視有關效能問題的完整呼叫堆疊
- 選取 [複製] 以複製呼叫堆疊。
時間軸
在詳細數據窗格中,您也可以在 [時程表] 下檢視表,描述特定效能問題影響和閾值的時間軸。 結果會根據您設定的篩選而有所不同。 例如,過去 24 小時內所見的記憶體「效率不佳 String.SubString()
」效能問題的深入解析可能如下所示: