1. 事前準備
如「對智慧型住宅進行偵錯」程式碼研究室所述,我們會發布指標和記錄到您的智慧型住宅專案。指標可協助您判斷智慧家庭動作發生哪些問題,而記錄有助於深入瞭解解決這些問題。
除了我們為專案提供的指標之外,您也可以利用 Google Cloud Platform 的記錄指標產生自己的指標。這可以讓您監控記錄中的特定模式,並有效偵錯品質問題。
必要條件
- 整合支援智慧型住宅
- 完成「對智慧型住宅進行偵錯」程式碼研究室
課程內容
- 如何撰寫有效的查詢來篩選智慧型住宅錯誤記錄
- 如何建立記錄指標,依據查詢產生指標
- 如何使用記錄指標建立圖表與資訊主頁以進行監控
2. 使用記錄檔
如同我們在「對智慧型住宅程式碼研究室進行偵錯」一文中簡單介紹,處理記錄檔是專案成功的關鍵。Google Cloud Platform 提供許多絕佳的工具,可協助您監控及分析記錄檔。如要存取專案可用的所有記錄檔,您可以使用記錄檔探索工具。
存取記錄
存取記錄檔的第一步是登入 Google Cloud Platform 並選擇專案。依序前往「作業」>「Logging」>「記錄檔探索工具」,使用側邊選單前往「記錄檔探索工具」。開啟工具後,您應該會看到以下檢視畫面:
記錄檔探索工具主要分為兩個部分:頂端部分 (「查詢建構工具」) 和顯示相符結果的區域 (查詢結果)。
根據預設,Google 服務中的許多不同元件會將記錄寫入您的專案。如要尋找及使用來自智慧型住宅整合的記錄,您必須編寫自訂查詢。
撰寫查詢
記錄檔會發布至資源類型下的專案。每種資源類型都代表 Google 中的不同平台。專案的 assistant_action_project
資源類型會顯示來自智慧型住宅平台的記錄檔。
此外,系統會在建立所有記錄時指派嚴重性等級。智慧型住宅記錄採用 ERROR
層級,記錄代表錯誤和例外狀況,其他則是 DEBUG
層級。
在以下範例中,我們會編寫查詢,只針對代表錯誤的記錄篩選記錄,如下所示:
當您撰寫完查詢後,按一下「Run query」(執行查詢) 按鈕即可啟動查詢。這應該會顯示智慧型住宅整合功能的錯誤:
如您所見,過去 1 小時內出現了一些錯誤。每一行都代表一個錯誤記錄。您可以進一步點選個別記錄並展開巢狀欄位,查看其中所含的資訊。
使用直方圖
記錄檔探索工具提供實用的直方圖功能,方便您查看符合查詢的記錄檔時間分佈情形。如要啟用直方圖,請按一下右上角的「頁面版面配置」,然後勾選「直方圖」啟用這項功能。
啟用之後,您會看到與查詢相符的記錄檔分佈狀態:
如上圖所示,我們在過去一小時內發生了幾個剖析錯誤。他們似乎在下午 1:45、2:00 和 2:15 左右形成三個集群。只要檢查時間戳記值,直方圖就能協助您找出難以查看的模式。
目前所使用的查詢無法區分記錄,且會顯示所有來自智慧型住宅整合功能的錯誤。有時候,您可能會想區分錯誤,例如追蹤源自特定裝置類型或特徵的錯誤模式。為此,我們將編寫進階查詢。
進階查詢
檢查智慧型住宅事件記錄時,您會看到多種欄位可用來收集下列資訊:
action
trait
:指定使用者裝置特徵,例如 OnOff、StartStop、BrightnessactionType
:精細的特徵顆粒狀態 (例如開啟、關閉、暫停、停止、繼續)
device
deviceType
:依使用者指定裝置類型 (例如燈具、開關、洗衣機)
status
isSuccess
:是否將動作結果視為成功 (true / false)statusType
:動作結果的狀態碼 (如果失敗,會顯示錯誤代碼)externalDebugString
:動作的偵錯字串 (詳細說明錯誤)
其他欄位
您還可以從以下額外欄位取得資訊:
requestId
:與要求相關聯的專屬 ID (由 Google 產生)executionType
:要求使用的路徑 (會指出雲端或本機)latencyMsec
:Google 伺服器中的要求發生延遲時間 (以毫秒為單位)locale
:用來傳送要求的語言/區域組合 (例如 en-US、fr-FR)
如果使用上述清單中的特徵欄位,我們會修改查詢內容,僅納入來自 OnOff 特徵的錯誤,如下所示:
resource.type="assistant_action_project" AND severity=ERROR AND jsonPayload.executionLog.executionResults.actionResults.action.trait="TRAIT_ON_OFF"
執行更新的查詢後,系統會辨識記錄,並顯示相應的結果:
到目前為止,我們已手動完成所有查詢,這是快速檢查錯誤狀態的好方法,但不太能監控錯誤模式的變化。為了自動執行這個流程並擷取較長時間的資料,我們會建立記錄指標。
3. 記錄指標
如要計算一段時間內符合查詢的記錄檔數量,可以使用記錄指標。如此一來,您便能掌握各種模式及記錄,進一步掌握潛在問題。
建立記錄指標
如要建立記錄指標,請依序前往「作業」>「Logging」>「記錄指標」。畫面上就會顯示專案已有的記錄指標清單。按下「建立指標」按鈕後,畫面會顯示記錄指標建立畫面:
主要指標類型有兩種:計數器指標會計算與查詢相符的記錄檔數量。分佈指標可追蹤基礎分佈情形,並允許統計作業,例如平均值、中位數和第 95 個百分位數。
向下捲動畫面會顯示篩選器部分,請在其中輸入查詢內容。
我們會將上一節的查詢內容貼到「建立篩選器」文字區域。
resource.type="assistant_action_project" AND severity=ERROR AND jsonPayload.executionLog.executionResults.actionResults.action.trait="TRAIT_ON_OFF"
您也可以按一下「PREVIEW LOGS」按鈕,快速查看與篩選條件相符的過往記錄檔。完成後,請按一下「建立指標」按鈕,前往下一個部分。
查看記錄指標資料
記錄指標建立完成之後,您就能透過「記錄指標」頁面的「使用者定義指標」部分查看這項指標。
在記錄指標 (3 個圓點) 對應的選單中,選取「在 Metrics Explorer 中查看」,即可查看記錄指標中收集到的資料:
擷取到的新錯誤會由記錄指標擷取,並顯示在 Metrics Explorer 的圖表視窗中。
透過自訂資訊主頁進行監控
確認新的記錄指標正常運作後,您就可以將這個圖表檢視畫面儲存到自訂資訊主頁。為此,請按一下 Metrics Explorer 右上角的「Save Chart」(儲存圖表) 按鈕。系統隨即會顯示提示,方便您為圖表命名,然後選取要儲存至圖表的資訊主頁:
只要將圖表儲存至資訊主頁,就能從該處輕鬆存取。如要查看專案中可用的資訊主頁清單,請依序點選「作業」>「Monitoring」>「資訊主頁」。
我們的圖表已儲存至名為「程式碼研究室資訊主頁」的資訊主頁。開啟後會顯示以下檢視畫面:
將顯示代表記錄指標的圖表和新收集的資料一併顯示在這裡。智慧型住宅記錄檔會即時發布至您的專案。取得新記錄時,會立即計入記錄指標中。
4. 恭喜
恭喜!您已學會如何將查詢轉換成記錄指標,並儲存至自訂資訊主頁來監控。
後續步驟
建構本程式碼研究室後,您可以嘗試下列練習並瀏覽其他資源: