1. ก่อนเริ่มต้น
Codelab นี้ออกแบบมาสำหรับพาร์ทเนอร์และนักพัฒนาแอป Google Home ที่มีการผสานรวมกับระบบคลาวด์เพื่อปรับปรุงคุณภาพของระบบนิเวศและประสบการณ์ของผู้ใช้
สิ่งที่คุณจะได้เรียนรู้
แดชบอร์ด Google Home Vitals ทำหน้าที่เป็นแหล่งข้อมูลที่เชื่อถือได้เพียงแหล่งเดียวสำหรับนักพัฒนาแอปและพาร์ทเนอร์ในการตรวจสอบสถานะการทำงานของการผสานรวม Google Home ในระบบนิเวศที่ประสบการณ์ของผู้ใช้กำหนดโดยเวลาในการตอบสนองและความน่าเชื่อถือ Google Home Vitals คือพอร์ทัลบริการตนเองที่มีข้อมูลวิเคราะห์เชิงลึกทั้งหมดที่จำเป็นสำหรับการเปลี่ยนจากการแก้ปัญหาเชิงรับเป็นการจัดการคุณภาพเชิงรุก
- วิธีคำนวณคะแนนคุณภาพของการผสานรวม
- วิธีอ่านและใช้แดชบอร์ด
- วิธีแก้ไขข้อบกพร่องของเมตริกคุณภาพต่ำ
สิ่งที่คุณต้องมี
- มีการผสานรวม Google Home กับระบบคลาวด์
ตั้งค่า
วิธีไปที่แดชบอร์ด Google Home Vitals
- เปิด Google Cloud Platform
- Monitoring > แดชบอร์ด
- คลิกแดชบอร์ด "Google Home Vitals (Cloud)"
2. วิธีอ่านแดชบอร์ด
การคำนวณคะแนนคุณภาพ - มาตรฐาน "ดี" เทียบกับ "ไม่ดี"
แดชบอร์ดจะอธิบายรายละเอียดการให้คะแนนคุณภาพ ระบบจะกำหนดคะแนนคุณภาพตามความละเอียดระดับประเภทอุปกรณ์ การผสานรวมประเภทอุปกรณ์จะถือว่าดี ก็ต่อเมื่อเป็นไปตามเกณฑ์ 4 ข้อพร้อมกัน
- อัตราความสำเร็จทั่วโลก: อัตราความสำเร็จโดยรวมของการเรียกจากพาร์ทเนอร์ไปยัง Google ต้องมีค่า >=99.5%
หมายเหตุ: หากไม่เป็นไปตามอัตราความสำเร็จทั่วโลก (>=99.5%) ระบบจะให้คะแนน ไม่ดี โดยอัตโนมัติทั่วทั้งโปรเจ็กต์ ไม่ว่าอุปกรณ์แต่ละเครื่องจะมีประสิทธิภาพเป็นอย่างไร - ความน่าเชื่อถือของคำสั่ง: อัตราความสำเร็จของ QUERY และ EXECUTE ต้องมีค่า >=99.5% สำหรับอุปกรณ์ทุกประเภท
- เวลาในการตอบสนอง: เวลาในการตอบสนองเปอร์เซ็นไทล์ที่ 90 สำหรับ QUERY และ EXECUTE ต้องมีค่า <=1000 มิลลิวินาทีสำหรับอุปกรณ์ทุกประเภท
- ความถูกต้องสมบูรณ์ของสถานะ: ความแม่นยำของสถานะต้องมีค่า >=99.5%
เหตุผลที่เมตริกเหล่านี้มีความสำคัญ
- อัตราความสำเร็จทั่วโลก: การเรียกจากพาร์ทเนอร์ไปยัง Google ในระดับการผสานรวมจะวัดสถานะการทำงานของการเรียกจากระบบคลาวด์ไปยัง Google อัตราความสำเร็จ >= 99.5% ช่วยให้มั่นใจได้ว่า Google Home จะใช้สถานะอุปกรณ์ที่ถูกต้อง ตัวอย่างเช่น การตรวจสอบว่าได้เพิ่มและนำอุปกรณ์ออกแล้ว การทำงานอัตโนมัติทริกเกอร์ และเหตุการณ์ในประวัติปรากฏในแท็บกิจกรรมของแอป Google Home
- ความน่าเชื่อถือของคำสั่ง: ระบบจะวัดอัตราความสำเร็จของ QUERY และ EXECUTE ในระดับประเภทอุปกรณ์ โดยอัตราความสำเร็จ >=99.5% ช่วยให้มั่นใจได้ว่าระบบจะดำเนินการตามคำสั่งของผู้ใช้ได้อย่างถูกต้อง (เช่น หลีกเลี่ยงการตอบกลับของ Assistant เช่น "ฉันเข้าถึงอุปกรณ์ไม่ได้" หรือยืนยันคำสั่งที่ไม่ถูกต้องซึ่งไม่ได้ดำเนินการ)
- เวลาในการตอบสนอง: ระบบจะวัดเวลาในการตอบสนองของ QUERY และ EXECUTE ในระดับประเภทอุปกรณ์เช่นกัน โดยเวลาในการตอบสนอง <=1000 มิลลิวินาทีต่อประเภทอุปกรณ์ช่วยให้มั่นใจได้ว่าผู้ใช้ไม่ต้องรอนานเกินไปเพื่อให้ได้การดำเนินการที่ต้องการ (เช่น รอ 2-3 วินาทีเพื่อให้ไฟดับ)
- ความถูกต้องสมบูรณ์ของสถานะ: ความแม่นยำของสถานะจะวัดความถูกต้องของสถานะที่จัดเก็บไว้ในระบบของ Google และใช้เพื่อตอบคำค้นหาของผู้ใช้ หากตัวเลขเหล่านี้ต่ำ ผู้ใช้อาจเห็นผลลัพธ์ที่ไม่ถูกต้องสำหรับอุปกรณ์เมื่อดูสถานะของอุปกรณ์หรือใช้ฟีเจอร์ AI เช่น ถาม Google Home การทำงานอัตโนมัติอาจไม่เริ่มทำงานและรายการประวัติอาจไม่ปรากฏในกิจกรรมในเวลาที่เหมาะสม
วิธีอ่านแดชบอร์ด
เริ่มต้นในส่วนเมตริกคะแนนคุณภาพ ซึ่งทำหน้าที่เป็นตัวบ่งชี้สถานะการทำงานหลักสำหรับการผสานรวม การจัดประเภทระดับอุปกรณ์ที่ดีเป็นไปตามเงื่อนไขที่เมตริกทั้งหมดในส่วนนี้ต้องเป็นไปตามเกณฑ์ความสำเร็จสีเขียว ข้อกำหนดทางเทคนิคโดยละเอียดและคำจำกัดความของเมตริกมีอยู่ใน เอกสารประกอบของ Developer Center
ส่วน "คะแนนเมตริกคุณภาพ" ที่ด้านบนของแดชบอร์ด Google Home Vitals จะแสดงเมตริกที่ใช้ในการคำนวณคะแนนคุณภาพของการผสานรวม
คำอธิบายสัญลักษณ์
- สีเขียว (ดี): เมตริกเป็นไปตามเกณฑ์คุณภาพ
- สีแดง (ไม่ดี): เมตริกไม่เป็นไปตามเกณฑ์คุณภาพ
ตัวอย่าง
ในตัวอย่างด้านล่าง คุณจะเห็นว่าประเภทอุปกรณ์ AC_UNIT เป็นไปตามเกณฑ์คุณภาพในอัตราความสำเร็จของ QUERY และ EXECUTE รวมถึงส่วนเวลาในการตอบสนองของ QUERY แต่ไม่ผ่านเกณฑ์แถบเวลาในการตอบสนองของ EXECUTE (สีแดง) ซึ่งหมายความว่าคำสั่งสำเร็จตามอัตราที่ผ่านเกณฑ์ แต่เวลาในการตอบสนองของ EXECUTE ช้าเกินไป 36 มิลลิวินาที ส่วนสถานะการทำงานของระบบแสดงอัตรา 98.92% ที่ไม่ผ่านเกณฑ์สำหรับเมธอดที่รวบรวมไว้ในการผสานรวม ซึ่งหมายความว่ายังมีโอกาสในการปรับปรุงเพื่อให้มั่นใจว่าสถานะอุปกรณ์ของผู้ใช้มีความแม่นยำสำหรับ Google Home ซึ่งหมายความว่าการเรียก 1.08% (DeleteAgentUser, Query, ReportStateAndNotification, RequestSyncDevices หรือ Sync) แสดงรหัสการตอบกลับที่ไม่เท่ากับ 2xx หรือ 5xx (เช่น ข้อผิดพลาด 404) เมตริกสุดท้ายที่ใช้ในการวัดคุณภาพที่ผ่าน/ไม่ผ่านเกณฑ์สำหรับประเภทอุปกรณ์ AC_UNIT คือความแม่นยำของสถานะ ในตัวอย่างนี้ เราเห็นอัตราความสำเร็จ 77.43% ซึ่งหมายความว่าผู้ใช้มีแนวโน้มที่จะเห็นผลลัพธ์ที่ไม่ถูกต้องสำหรับอุปกรณ์ เมื่อพิจารณาจากเมตริก 3 รายการนี้ คะแนนโดยรวมสำหรับ AC_UNIT คือไม่ดีและต่ำกว่าเกณฑ์คุณภาพ

การคำนวณคุณภาพแต่ละรายการเหล่านี้สอดคล้องกับส่วนการแก้ไขข้อบกพร่องด้านล่าง เปิดขั้นตอนที่ยุบไว้เพื่อแก้ไขข้อบกพร่องเพิ่มเติม
หากต้องการแก้ไขข้อบกพร่องของอัตราความสำเร็จและเวลาในการตอบสนองของ QUERY/EXECUTE ให้ไปที่ "ขั้นตอนที่ 1: ตรวจสอบการเรียกใช้ระบบคลาวด์"
หากต้องการแก้ไขข้อบกพร่องของอัตราความสำเร็จจากพาร์ทเนอร์ไปยัง Google ให้ไปที่ "ขั้นตอนที่ 2: ตรวจสอบการเรียกใช้ Google"
หากต้องการแก้ไขข้อบกพร่องของความแม่นยำของสถานะสำหรับอุปกรณ์แต่ละประเภท ให้ไปที่ "ขั้นตอนที่ 3: ปรับปรุงความแม่นยำของสถานะ"


3. ขั้นตอนที่ 1 ในการแก้ไขข้อบกพร่อง: ตรวจสอบการเรียกใช้ระบบคลาวด์
ขั้นตอนที่ 1: ภาพรวม
ส่วนนี้มุ่งเน้นที่การเรียกใช้ระบบคลาวด์ ซึ่งเป็นเมตริกที่วัดสถานะการทำงานของการสื่อสารจาก Google ไปยังแบ็กเอนด์ระบบคลาวด์ของคุณ (หรือที่เรียกว่าเมตริกจาก Google ไปยังพาร์ทเนอร์) ซึ่งรวมถึงคำสั่งต่างๆ เช่น Query, Execute
เราจะติดตามอัตราความสำเร็จและเวลาในการตอบสนองสำหรับ QUERY และ EXECUTE (ซึ่งเป็นปัจจัยในการคำนวณคะแนนคุณภาพของประเภทอุปกรณ์)
ภาพรวมด้านล่างแสดงอัตราความสำเร็จและข้อผิดพลาดโดยรวมของ QUERY และ EXECUTE ในระดับการผสานรวม ขั้นตอนที่ 1ก-1ง แสดงรายละเอียดของเมตริกเหล่านี้ในระดับประเภทอุปกรณ์/ลักษณะ 
ขั้นตอนที่ 1ก และ 1ข แสดงแนวโน้มจำนวนคำขอการดำเนินการ จำนวนข้อผิดพลาดเมื่อเวลาผ่านไป และสถานะข้อผิดพลาดที่เฉพาะเจาะจง
ขั้นตอนที่ 1ก: ตรวจสอบข้อผิดพลาดของ Query

ขั้นตอนที่ 1ข: ตรวจสอบข้อผิดพลาดของ Execute
ขั้นตอนที่ 1ค และ 1ง แสดงรายละเอียดของเปอร์เซ็นไทล์ที่ 90 และ 50 สำหรับเมตริกเหล่านี้ทั้งในระดับการผสานรวมและระดับประเภทอุปกรณ์
ขั้นตอนที่ 1ค: ตรวจสอบเวลาในการตอบสนองของ Query
ขั้นตอนที่ 1ง: ตรวจสอบเวลาในการตอบสนองของ Execute

4. ขั้นตอนที่ 2 ในการแก้ไขข้อบกพร่อง: ตรวจสอบการเรียกใช้ Google
ขั้นตอนที่ 2: ภาพรวม
หลังจากแก้ไขข้อบกพร่องของการเรียกจาก Google ไปยังพาร์ทเนอร์แล้ว ขั้นตอนที่ 2 นี้จะครอบคลุมการแก้ไขข้อบกพร่องของการเรียกจากระบบคลาวด์ของพาร์ทเนอร์ไปยัง Google ส่วนนี้ครอบคลุมเมตริกในระดับการผสานรวมของพาร์ทเนอร์ ไม่ใช่ระดับประเภทอุปกรณ์ ซึ่งรวมถึงรหัสการตอบกลับ เช่น 400 Bad Request, 404 Not Found และ 429 Resource Exhausted

ขั้นตอนที่ 2ก: แก้ไขข้อบกพร่องเกี่ยวกับโควต้า
Google Home จำกัดการจัดสรรและการใช้ทรัพยากร รวมถึงบังคับใช้โควต้าที่เหมาะสมในระดับโปรเจ็กต์ Google ใช้ขีดจำกัดเริ่มต้นที่ 6,000 คำขอต่อ 60 วินาทีกับการเรียก API แบบรวมของ Query, Delete, Report State และ Asynchronous Request Sync ในระดับการผสานรวมแบบคลาวด์ต่อคลาวด์
ปัญหาเกี่ยวกับ โควต้า อาจส่งผลเสียต่อความแม่นยำของ Report State เนื่องจากหากอัปเดตสถานะไม่สำเร็จอาจทำให้เกิดความไม่ตรงกัน ด้านล่างนี้เป็นแผนภูมิที่มีรายละเอียดที่แสดงข้อผิดพลาดของ Report State และ Request Sync, รายละเอียดเมธอด API ของจำนวนและข้อผิดพลาด รวมถึงเปอร์เซ็นต์การใช้โควต้าโดยเฉพาะ หากแผนภูมิเหล่านี้แสดงการเข้าชมที่เพิ่มขึ้นอย่างไม่คาดคิด ให้ตรวจสอบการผสานรวมเพื่อดูว่าการเปลี่ยนแปลงใดทำให้มีการส่งการเข้าชมไปยัง Home Graph API มากขึ้น
ในบางสถานการณ์ เช่น การเข้าชมเพิ่มขึ้นตามธรรมชาติเมื่อเวลาผ่านไป (เช่น การเพิ่มขึ้นสอดคล้องกับการเพิ่มขึ้นของจำนวนอุปกรณ์ การเปิดตัวอุปกรณ์ประเภทใหม่ หรือการเปิดตัวอื่นๆ ที่คาดไว้) การเพิ่มโควต้าสำหรับการผสานรวมอาจเหมาะสม หากต้องการขอเพิ่มโควต้า ให้ทำตามขั้นตอนในเอกสารประกอบสำหรับนักพัฒนาแอป


5. ขั้นตอนที่ 3 ในการแก้ไขข้อบกพร่อง: ปรับปรุงความแม่นยำของสถานะ
ขั้นตอนที่ 3: ภาพรวม
เมื่อแก้ไขข้อบกพร่องทั้งในขั้นตอนที่ 1 และ 2 แล้ว ขั้นตอนที่ 3 จะครอบคลุมความแม่นยำของ Report State ซึ่งเป็นสถานะอุปกรณ์ที่จัดเก็บไว้ในระบบของ Google และใช้เพื่อตอบคำค้นหาของผู้ใช้ รายละเอียดตามลักษณะและประเภทอุปกรณ์แสดงอยู่ด้านล่าง ขั้นตอนที่ 3ก และ 3ข ครอบคลุมข้อผิดพลาด 2 รายการที่พบบ่อยสำหรับ Report State ได้แก่ ข้อผิดพลาด "ฟิลด์ขาดหายไป" และข้อผิดพลาด "ไม่ถูกต้อง"

ขั้นตอนที่ 3ก: ข้อผิดพลาด "ฟิลด์ขาดหายไป"
ข้อผิดพลาด "ฟิลด์ขาดหายไป" เกิดขึ้นเมื่อชุดฟิลด์เพย์โหลดแตกต่างกันระหว่างการตอบกลับ QUERY กับคำขอสถานะที่รายงานสำหรับอุปกรณ์หนึ่งๆ ชุดฟิลด์ภายในเพย์โหลดของอุปกรณ์แต่ละเครื่องต้องเหมือนกัน ข้อผิดพลาดนี้อาจเกิดขึ้นหากตรรกะในการคำนวณเพย์โหลดแตกต่างกันระหว่างการตอบกลับ QUERY กับการตอบกลับสถานะที่รายงาน ใช้แผนภูมิด้านล่างเพื่อติดตามประเภทอุปกรณ์และลักษณะที่มีการตอบกลับ QUERY และสถานะที่รายงานไม่ตรงกัน

ขั้นตอนที่ 3ข: ข้อผิดพลาด "ไม่ถูกต้อง"
ข้อผิดพลาด "ไม่ถูกต้อง" เกิดขึ้นเมื่อชุดฟิลด์เพย์โหลดเหมือนกันระหว่างการตอบกลับ QUERY กับคำขอสถานะที่รายงานสำหรับอุปกรณ์หนึ่งๆ แต่ค่าสถานะแตกต่างกัน ข้อผิดพลาดนี้อาจเกิดขึ้นหากพลาดการรายงานสถานะหรือตรรกะในการคำนวณสถานะแตกต่างกันระหว่าง QUERY กับการรายงานสถานะ ใช้แผนภูมิด้านล่างเพื่อติดตามประเภทอุปกรณ์และลักษณะที่มีการตอบกลับ QUERY และสถานะที่รายงานไม่ตรงกัน


6. เอกสารประกอบและแหล่งข้อมูลอื่นๆ
- หากต้องการส่งความคิดเห็นหรือรายงานปัญหาสำหรับแดชบอร์ดนี้ ให้ยื่นปัญหาในเครื่องมือติดตามปัญหาแบบสาธารณะ Issue Tracker
- หากต้องการยื่นคำขออุทธรณ์ ให้ยื่นปัญหาโดยใช้ แบบฟอร์มอุทธรณ์เมตริกคุณภาพ ของเรา
- หากต้องการทราบคุณภาพของการผสานรวมอยู่เสมอ ให้กำหนดค่าการแจ้งเตือน Google Cloud Platform เพื่อรับการแจ้งเตือนเมื่อเมตริกต่ำกว่าเกณฑ์ที่ยอมรับได้ วิธีนี้จะช่วยให้คุณทราบปัญหาเป็นคนแรก
- สำหรับข้อมูลอื่นๆ ทั้งหมด โปรดดูข้อมูลเพิ่มเติมในเอกสารประกอบสำหรับนักพัฒนาแอป – https://developers.home.google.com/tools/analytics/home-vitals


