𝗢𝗯𝘀𝗲𝗿𝘃𝗮𝗯𝗶𝗹𝗶𝘁𝘆 𝗳𝗼𝗿 𝗘𝗺𝗮𝗶𝗹 𝗔𝗴𝗲𝗻𝘁𝘀
คุณไม่สามารถเฝ้าดูการทำงานของ email agent แบบเรียลไทม์ได้
แต่คุณสามารถดูทุกอย่างที่มันทำเมื่อวานนี้ได้ด้วยการเรียก API เพียงครั้งเดียว
การสร้าง agent บนอีเมลช่วยให้คุณมีการสังเกตการณ์ (observability) มาให้ในตัว ระบบอัตโนมัติส่วนใหญ่ต้องใช้เครื่องมือเพิ่มเติมสำหรับการทำ tracing และ logs แต่อีเมล agent จะได้รับสิ่งเหล่านี้ฟรี เพราะกล่องจดหมายคือบันทึกข้อมูล (record)
นี่คือวิธีที่คุณสามารถใช้อีเมลเพื่อตรวจสอบ agent ของคุณ:
การตรวจสอบ Input (Input Monitoring) ทุกข้อความขาเข้าจะกระตุ้น (trigger) เหตุการณ์
message.createdสิ่งนี้จะให้ thread ID ที่คุณจำเป็นต้องใช้ในการสร้างบทสนทนาขึ้นมาใหม่ หากข้อความมีขนาดใหญ่เกินไป ให้มองหา triggermessage.created.truncatedซึ่งจะบอกให้คุณไปดึงเนื้อหาฉบับเต็มผ่าน IDการตรวจสอบ Output (Output Monitoring) แพลตฟอร์มจะรายงานทุกการส่ง ติดตาม 3 trigger เหล่านี้เพื่อดูความสมบูรณ์ของการส่ง (delivery health): •
message.send_success: เซิร์ฟเวอร์ของผู้รับยอมรับอีเมลแล้ว •message.send_failed: กฎหรือนโยบายบางอย่างได้บล็อกอีเมลขาออก •message.bounce_detected: เซิร์ฟเวอร์ปลายทางปฏิเสธอีเมล
การเพิ่มขึ้นของจำนวน send_failed คือสัญญาณแรกของปัญหา ซึ่งหมายความว่ามีกฎหรือโควตาบางอย่างกำลังจำกัดการทำงานของ agent ของคุณ
การตรวจสอบสถานะ (State Monitoring) โฟลเดอร์ในกล่องจดหมายทำหน้าที่เป็น state machine • Junk folder: แสดงให้เห็นว่าตัวกรองสแปมของคุณตรวจจับอะไรได้บ้าง • Drafts folder: ทำหน้าที่เป็นคิวรอการอนุมัติสำหรับการออกแบบระบบแบบ human-in-the-loop หากมีฉบับร่างค้างอยู่นานเกินไป แสดงว่ากระบวนการอนุมัติของคุณกำลังติดขัด • Sent folder: ให้บันทึกการตรวจสอบ (audit log) ที่สมบูรณ์แบบ บันทึกนี้ไม่มีทางขัดแย้งกับความเป็นจริง เพราะอีเมลคือความจริง
การตรวจสอบการกำกับดูแล (Governance Monitoring) หาก agent พลาดข้อความใดไป ให้ตรวจสอบการประเมินกฎ (rule evaluations) คุณสามารถสอบถามได้ว่าทำไมกฎถึงปฏิเสธข้อความในระดับ SMTP สิ่งนี้จะเปลี่ยนจากการคาดเดาเป็นการใช้ข้อมูลแทน
ข้อจำกัดหนึ่งที่ต้องจำไว้คือ: คุณสามารถติดตามการส่งได้ แต่คุณไม่สามารถติดตามได้ว่ามนุษย์เปิดอ่านหรือคลิกลิงก์ผ่าน API นี้หรือไม่ นอกจากนี้คุณยังจำเป็นต้องบันทึกเหตุผล (reasoning) ของคุณเองด้วย กล่องจดหมายจะแสดงว่า agent ทำอะไร แต่คุณต้องบันทึกว่าทำไม agent ถึงตัดสินใจทำเช่นนั้น
เริ่มต้นด้วยการติดตาม 3 สิ่งนี้:
message.send_successmessage.send_failedmessage.bounce_detected
ความล้มเหลวของ Input นั้นชัดเจนและสังเกตง่าย ส่วนความล้มเหลวของ Output นั้นเงียบเชียบ การติดตามสัญญาณเหล่านี้จะช่วยให้คุณพบข้อผิดพลาดได้ภายในไม่กี่นาทีแทนที่จะเป็นสัปดาห์
Source: https://dev.to/qasim157/observability-for-email-agents-4egn
Optional learning community: https://t.me/GyaanSetuAi