分析追蹤資料及呼叫
檢查 無界限分析中的追蹤資料,您可以在其中調查 Instana 所收集的追蹤資料和呼叫。 為了協助您瞭解應用程式對每一個呼叫的行為方式,我們會監視每一個進入系統的呼叫。
檢視追蹤資料
- 在資訊看板上,按一下 應用程式。
- 在 應用程式 儀表板上,選取應用程式或服務。
- 在應用程式或服務儀表板上,按一下 分析呼叫。
- 在 分析 儀表板上,您可以依應用程式、服務及端點來分析呼叫,分別依服務、端點及呼叫名稱來細分 Instana 呈現的資料。 在 應用程式下,選取 呼叫 或 追蹤。
- 按一下群組,然後選取追蹤。
檢視追蹤分析

過濾及分組追蹤或呼叫
在 分析 儀表板上,可以使用任意標籤來過濾及分組追蹤資料或呼叫。 在「分析呼叫」中,可以使用 AND 和 OR 邏輯運算子來連接過濾器,並使用方括弧將它們分組在一起。 在「分析追蹤資料」中,只能使用 AND 運算子。

過濾資料有兩種方法:
- 查詢建置器
- 過濾器資訊看板
雖然兩者都可以自行使用,但在結合它們時,會達到最佳結果。
查詢建置器
使用「分析」儀表板頂端的「 查詢建置器 」來過濾起始結果集。 透過按一下 新增過濾器,您可以將 application.name、 service.name和 endpoint.name 標籤以及基礎架構實體標籤 (例如 agent.tag 或 host.name) 套用至呼叫的來源和目的地。 依預設,它會套用至目的地。 若要將它變更為來源,請按一下標籤名稱之前的選取器,然後選取來源。 透過結合來源與目的地,您可以建立查詢,例如 向我顯示這兩個服務之間的所有呼叫 或 向我顯示從 agent.zone 「正式作業」向 agent.zone 「測試」發出的所有呼叫。 來源或目的地的選項無法用於呼叫標籤 (例如 call.http.path 或 call.tag) ,這些標籤是呼叫本身的內容,與來源或目的地無關。
若要套用分組,請按一下 新增群組 ,然後選取其中一個標籤。 預設分組使用端點名稱 (endpoint.name) 標籤。 若要檢查符合過濾器的個別追蹤及呼叫,您可以將群組展開至尖峰結果,或按一下 將焦點放在此群組 以移除分組並依所選群組的值進一步過濾結果。 標籤可以套用至通話的來源或目的地,因此您可以表示查詢,例如 Show me all calls to this one service , broken by caller。 不符合任何群組的呼叫會顯示在名為 Tag not present的特殊群組中,例如,具有 agent.zone 的呼叫會是 沒有 'agent.zone' 標籤的呼叫。 若要從結果中移除不相符的 agent.zone ,請使用 is present 運算子套用其他過濾器。 在「分析追蹤」中也無法使用依來源和目的地分組,因為該視圖中的可用群組與任何一個特定呼叫的來源或目的地無關。
前述範例依應用程式 Catalogue (user-journey) 進行過濾,並列出依端點名稱分組的呼叫。
已知限制
依日誌標籤分組呼叫: 依 log.level 或 log.message分組呼叫時,特殊群組 Tag not present 不會像其他標籤那樣呈現。
延遲分佈
可以使用 延遲分佈 圖表來檢查追蹤及呼叫延遲。 在圖表上選取延遲範圍時,將會相應地調整圖表上方的過濾器。 將更新表格中的結果,以僅顯示指定延遲範圍內的追蹤或呼叫。

追蹤視圖
若要顯示追蹤視圖,請在 分析 儀表板上選取群組,然後按一下追蹤。 選取呼叫會在其追蹤的環境定義中顯示呼叫。

摘要詳細資料
追蹤的摘要詳細資料包括:
- 追蹤名稱 (通常是 HTTP 項目)。
- 發生它的服務名稱。
- 類型或技術。
- 核心 KPI:
- 對其他服務的子呼叫。
- 錯誤呼叫數。
- 追蹤內的錯誤數。
- 追蹤內的警告數。
- 追蹤持續時間。 追蹤中第一個呼叫開始與最後一個呼叫結束之間的間隔。
時間表
追蹤時間表會顯示下列:
- 追蹤開始的時間。
- 追蹤中被呼叫的服務時間順序。
呼叫鏈會從根元素 (span) 當掉。 在簡式三層系統上,您具有四個層次的一般深度。 相反地,在具有分散式服務或微服務架構的系統上,您可以預期看到更長的冰柱。 當您有很長的追蹤子呼叫或定期呼叫型樣 (例如每個資料庫項目一個 HTTP 呼叫) 時,時間表會提供您絕佳的呼叫結構概觀。
若要檢視跨距的詳細資料,請按一下時間表圖形內的跨距。 若要檢視特定呼叫內所花費時間的詳細資料,請將滑鼠移至時間表圖形上顯示的呼叫。
通話詳細資料包括下列類型的時間:
Self:呼叫在下游呼叫之外所花費的時間量 (亦即,在呼叫內所花費的時間)。Waiting:呼叫等待所有下游呼叫完成所花費的時間量。Network:呼叫程式的Exit Span Time與呼叫程式的Entry Span Time之間的時差。Total:呼叫的時間總計。
服務
時間表圖形下列出的服務會彙總每個服務的所有呼叫,並列出呼叫數、聚集時間及發生的錯誤。 每一個服務都有自己的顏色 (在此範例中為 shop = blue , productsearch 綠色)。 選取服務以在應用程式及服務儀表板中檢視其詳細資料。
呼叫

追蹤樹狀結構會顯示上游和下游服務呼叫的結構,以及呼叫的類型。 如果要探索特定的呼叫,請展開和收合追蹤樹狀結構的個別部分。 選取呼叫以在服務及端點儀表板中檢視其詳細資料。
孤立呼叫
如果遺漏呼叫的母項呼叫,則會將該呼叫視為孤立。 呼叫可能因各種原因而遺漏,例如尚未完成或正在傳送至另一個 APM 工具。 因為上下代關係決定呼叫樹狀結構中呼叫的位置,所以孤立呼叫的位置不明。 孤立呼叫會直接附加至根呼叫。 指示器圖示會顯示在根與孤立呼叫之間的邊緣上。

通話詳細資料
若要顯示通話詳細資訊看板,請在時間表圖形中選取通話。 顯示的詳細資料包括呼叫的來源和目的地、錯誤、狀態碼以及堆疊追蹤。
擷取日誌及錯誤
當偵測到服務傳回不正確的回應或具有 ERROR 或 WARN 層次 (或類似,視架構而定) 的日誌時, Instana 會自動擷取錯誤。
自動聚集短結束呼叫
Instana 總是努力讓您對服務互動有最好的瞭解,同時將對實際應用程式的影響降到最低。 不過,某些實務需要 Instana 捨棄資料,才能達到此目的。
系統中常見的問題是所謂的 1+N 查詢問題,它說明程式碼執行 1 個資料庫呼叫以取得項目清單,後面接著 N 個個別呼叫以擷取個別項目的狀況。 此問題通常可以透過僅執行一個呼叫並加入其他呼叫來修正。
通話名稱旁邊的圖示指出有多少要求已一起批次處理。 呼叫詳細資料符合最重要服務呼叫的那些詳細資料,例如具有最高持續時間或具有錯誤的要求。 所顯示呼叫的持續時間及錯誤計數是從所有批次呼叫聚集而來。

服務互動的聚集僅在下列限制內發生:
- 類似類型的高頻率重複存取型樣
- 個別服務呼叫花費不到 10 毫秒
- 呼叫之間的時間小於 10 毫秒
擷取參數
由於影響考量,目前 Instana 的追蹤感應器不會自動擷取方法參數或方法回覆值。 若要隨需應變擷取其他資料,請使用 SDK。
長時間執行作業
由於逾時、高負載或任何其他數目的環境狀況,呼叫可能需要很長時間才能回應。 追蹤可以包含數十個甚至數百個這類呼叫。 由於 Instana 打算盡快提供追蹤資訊給使用者,長時間執行的跨距會先取代為位置保留元。 當長時間執行跨距最終傳回時,位置保留元會再次取代為正確的呼叫資訊。
批次追蹤處理
由於跨距處理管線的高效能及近乎即時的本質,當跨距鏈結至產生的追蹤時,會對延遲到達且非同步到達的跨距進行稍微不同的處理。 「追蹤視圖」中的資訊框會呈現給使用者,並提供形態異常追蹤的相關資訊。
對於 Instana 使用者,可能會發生下列影響:
- 在「追蹤視圖」中,不會呈現追蹤的所有子呼叫。
- 列出具有相同追蹤 ID 的個別追蹤,並局部呈現整體追蹤。
- 呼叫可能不會對映至對應的「應用程式視景」,然後可能會在「無界限分析」中遺失。
- 呼叫可能不會對映至對應的「服務」,然後可能會在「無界限分析」中遺失。
- 流程對映可能顯示不一致的呼叫計數。
- 流程對映可能顯示不一致的服務對映。

在此狀況下,當已處理產生的追蹤時,有些文字段會在 2 秒間隔之後到達。 此方法呈現所有擷取的跨距,但部分相關性可能不正確。
這可能導致 Instana 資料模型中發生下列異常:
- 結束跨距及對應的進入跨距可能不會合併至單一呼叫。
- 呼叫可能未對映至正確的服務。
- 呼叫可能無法鏈結至正確的母項呼叫。
- 通話可能遺失基礎架構標籤。
- 呼叫可能未或不正確地對映至應用程式視景。
下列影像呈現類似的追蹤,其中所有文字段都在根文字段的環境定義中處理,因此以單一批次鏈結至追蹤:

大約資料
追蹤資料和呼叫會保留 7 天。 在此期間之後,您會看到大約資料指示器,指出保留的呼叫數及原始呼叫計數的估計。 在這類實務範例中,可能不會呈現很少發生的追蹤及呼叫。
附註: 如果 timepicker 中的時間範圍在過去 7 天內開始及結束,則會使用近似資料來分析整個選取的時間範圍,即使部分時間範圍會保留完整資料。 如果您想要分析完整資料集,請確定選取的時間範圍在過去 7 天內開始。

應用程式視景的精確度量值會保留過去 31 天。 當您展開群組或移除群組以查看個別呼叫時,只能查看保留的呼叫及大約資料指示器。
超過 31 天之後,度量值和呼叫都將是近似值。

