- 收集全系統偵錯輸出與重大系統事件
- 使用規則編輯器篩選與自訂輸出
- 將輸出串流分隔至多個輸出索引標籤
- 儲存並發佈您自訂的規則與設定
- 取得詳細的處理序監視與控制
- 建立與管理分級、堆積與迷你記憶體傾印
內容
開啟 xbWatson
您可以從 GDK 命令提示字元、從 XBOX Manager,或從開始功能表搜尋 xbWatson 來開啟 xbWatson。除非在命令列上提供測試主機 IP 或主機名稱加以覆寫,否則 xbWatson 會連線至您的預設主機。 從命令列開啟 xbWatson,並使用預設主機:

設定覆寫
啟動時,xbWatson 會載入位於 %localappdata%\Microsoft\XBOX One Development Kit\xbWatson\3.0 的預設設定檔 defaultconfig.txt。此檔案會儲存輸出索引標籤的狀態、其設定、規則以及已套用的規則。此檔案可以分享給其他 GDK 使用者,讓他們能以自訂設定快速開啟 xbWatson 工作階段。您可以執行下列動作來載入共用設定:- 覆寫本機 defaultconfig.txt 檔案。
- 在 Windows 中,將 sharedconfig.txt 檔案拖放至 xbWatson.exe 上。
- 使用指向已儲存設定檔的命令列參數開啟 xbWatson.exe (例如 xbwatson.exe E:\MyConfig\sharedconfig.txt)
Loading configuration ‘C:\Users\UserName\AppData\Local\Microsoft\XBOX One Development Kit\xbWatson\3.0\defaultConfig.txt’.
功能
xbWatson 的功能可讓您在主要輸出視窗中查看與設定輸出、透過編輯器與功能表套用輸出規則、透過資料摘要功能表篩選輸出類型,以及在儀表板中管理有關記錄診斷、Game OS 處理序清單與堆疊傾印產生及管理的進階功能。主要輸出視窗
主要輸出視窗由標題列、輸出索引標籤、規則編輯器與儀表板組成,如圖 1 所示。 圖 1. xbWatson
標題列
當 xbWatson 連線至主機時,標題列會呈現綠色並顯示連線詳細資料,如圖 2 所示。 圖 2. 標題列 (已連線)
輸出索引標籤
啟動時,會有一個預設的輸出索引標籤。您可以按一下最後一個索引標籤右側的加號 (+) 來建立更多輸出索引標籤。您可以按一下輸出索引標籤右側的 x 來移除該索引標籤。您可以按一下名稱 (Output) 來重新命名索引標籤。當主機有偵錯輸出流入時,該索引標籤的活動指示燈會閃爍。您可以醒目提示或選取文字,並使用標準 Windows 複製命令在剪貼簿緩衝區之間移動,以從輸出視窗複製資料。在每個輸出索引標籤中,您都有下列選項功能表可設定該索引標籤。新增/移除規則功能表
使用新增/移除規則功能表,為目前的輸出索引標籤開啟或關閉規則,如圖 3 所示。如需建立規則的詳細資訊,請參閱本主題稍後的規則編輯器一節。 圖 3. 新增/移除規則功能表
資料摘要功能表
使用資料摘要功能表設定目前輸出索引標籤所顯示的輸出串流,如圖 4 所示。 圖 4. 資料摘要功能表

規則編輯器
規則編輯器位於主要輸出視窗的右側,如圖 6 所示。 圖 6. 規則編輯器
- 從左窗格按一下 New。系統會建立新的空白規則。
- 為規則命名。
- 新增條件。
- 符合規則運算式:輸入要評估的 regex 字串。
- 新增動作 (在成功符合條件後執行):
- Change color:開啟色彩選擇器以變更相符的文字。
- Acquire stack dump:觸發所選的堆疊傾印類型。
- Include text:只顯示該文字。
- Exclude text:不顯示該文字。
- Disable this rule:停止執行此規則。這有助於在自動化測試執行期間擷取一次堆疊傾印。
- Set trigger to break:暫停處理序並準備附加偵錯工具。
- Invasively attach:將 xbWatson 作為偵錯工具附加至處理序。
- Remove invasive attach:移除作為偵錯工具的 xbWatson。
- Flash window:在工作列中閃爍 xbWatson 圖示。
- Show banner message:在輸出視窗頂端顯示橫幅訊息,並將該索引標籤的活動指示燈變為紅色以引起您的注意。
- Clear banner message:移除輸出視窗頂端的橫幅訊息。
- Enable other rule:為此輸出索引標籤啟用指定的規則。
- Disable other rule:為此輸出索引標籤停用特定規則。
- 儲存規則。
從規則編輯器套用規則時,請注意 toggle multi-select 按鈕。只會套用目前選取的規則。
儀表板
按一下主要輸出視窗底部的向上箭號會開啟儀表板,如圖 7 所示。儀表板最小化時,視窗左下角會有儀表板狀態指示燈。這些狀態指示燈對應於儀表板項目。它們會閃爍或變更色彩,以指出資料流動或狀態變更。 圖 7. 儀表板
記錄
記錄包含與 xbWatson 本身以及 xbWatson 與開發套件之連線相關的資訊。您可以查看啟動時載入了哪個設定檔、正在聯絡哪個 IP 位址或已儲存的連接字串,以及其他有關 xbWatson 的偵錯資訊。如果與開發套件連線時發生問題,此儀表板項目會變成紅色。Game OS
當開發套件上未執行遊戲時,此儀表板項目會顯示黃色,並表示無法取得處理序資料。在沒有執行遊戲的情況下,您可以查看有關開發套件設定的最小資料集。 當遊戲正在執行時,您可以查看類似 Windows 工作管理員的擴充資料。資料列的色彩表示狀態,如下所述以及如圖 8 所示。- 綠色:處理序資料在過去五秒內發生變更。
- 紅色:處理序已結束。
- 橘色:處理序已暫停,包括偵錯 (中斷)。
- 藍色:已附加偵錯工具,包括以侵入式附加的 xbWatson。

- Terminate:按一下作用中的處理序,然後按一下 Terminate 按鈕即可結束該處理序。
- Break (debug):這會暫停處理序並準備附加偵錯工具。
- Resume:這會移除偵錯中斷並繼續執行處理序。
- Monitor:將 xbWatson 附加為侵入式偵錯工具。一次只允許一個侵入式偵錯工具附加至處理序,因此以這種方式連接 xbWatson 會讓 Visual Studio 無法連線至該處理序。多個 xbWatson 執行個體會共用此附加。如果所有 xbWatson 執行個體都已關閉,就會自動中斷附加。啟用後,處理序偵錯資料摘要 (可從設定輸出串流 UI 取得) 就會開始接收資料。附加後,輸出偵錯字串會經由處理序偵錯串流傳送。
- Detach:移除作為侵入式偵錯工具的 xbWatson。
記憶體傾印
使用記憶體傾印功能表產生記憶體傾印或存取靜止停止回應傾印。 可以為主機上目前執行的遊戲建立堆積、迷你或分級記憶體傾印。產生的傾印會儲存在主機本機,並可透過 Manual Memory Dumps 表格下方的 Download 按鈕下載。 只有在遊戲正在執行且能夠以這種方式產生記憶體傾印時,才能使用 Generate 按鈕。xbWatson 會以符合主機上已註冊之遊戲映像名稱的執行中遊戲 (處理序識別碼) 為目標。 記憶體傾印面板只有在遊戲執行時才允許管理記憶體傾印。產生與下載作業都會使儀表板忙碌指示燈閃爍,以表示正在進行活動。 如果發生暫停逾時且未附加偵錯工具,就會自動建立靜止停止回應傾印。這些傾印有助於判斷遊戲的暫停處理常式為何未在要求的時間內完成。儀表板指示燈會閃爍,表示有可用的靜止停止回應傾印。可用的停止回應傾印會列在 Quiesce Memory Dumps 表格中。使用表格下方的 Download 按鈕將靜止停止回應傾印複製到您的開發電腦。如需 Microsoft Game Development Kit (GDK) 中為偵錯遊戲生命週期支援所需之暫停與繼續處理常式所提供功能的完整說明,請參閱偵錯遊戲生命週期狀態之間的轉換。 圖 9. 記憶體與靜止停止回應傾印
遊戲記憶體
以類似工作管理員的檢視方式,呈現 xbWatson 所連線之主機的狀態。 遊戲記憶體儀表板目前著重於遊戲與工具的記憶體使用量。其他統計資料 (例如 CPU 或檔案 IO 統計資料) 將在未來的版本中新增。
