MCP Academy · บทเรียน

การบันทึกแบบมีโครงสร้างไปยังไคลเอ็นต์

ส่งข้อความบันทึกที่มีระดับผ่านโพรโทคอล

บทเรียน 3 จาก 413 ขั้นตอน

การบันทึกแบบมีโครงสร้างไปยังไคลเอ็นต์ เป็นบทเรียน MCP Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน MCP Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส MCP Academy มีบทเรียนทั้งหมด 4 บทเรียน

บันทึกที่ไคลเอ็นต์มองเห็น

การพิมพ์ข้อความไปยังเทอร์มินัลช่วยได้เฉพาะคุณเท่านั้น MCP ช่วยให้เซิร์ฟเวอร์ส่งข้อความ บันทึก ผ่านโพรโทคอล เพื่อให้แอปโฮสต์แสดงข้อความเหล่านั้นได้เช่นกัน

การแจ้งเตือนข้อความ

บันทึกจะเดินทางมาในรูปการแจ้งเตือน การแจ้งเตือน/ข้อความ ซึ่งมีระดับ ชื่อตัวบันทึกที่ใส่หรือไม่ใส่ก็ได้ และข้อมูลที่คุณต้องการบันทึก

{"method": "notifications/message",
 "params": {"level": "info", "data": "Indexing started"}}

ใช้บริบท

ภายในเครื่องมือ คุณเข้าถึงการบันทึกผ่านออบเจ็กต์ บริบท ซึ่งเป็นตัวอ้างอิงเดียวกับที่ใช้รายงานความคืบหน้า ไม่จำเป็นต้องตั้งค่าเพิ่มเติม

from mcp.server.fastmcp import Context

ctx.info สำหรับการอัปเดต

ตัวช่วยที่ใช้บ่อยที่สุดคือ ctx.info ใช้สำหรับข้อความสถานะปกติที่คาดหมายได้ เพื่อช่วยให้ผู้ใช้ติดตามว่าเครื่องมือกำลังทำอะไรอยู่

await ctx.info("Loaded 120 records from disk")

ctx.debug สำหรับรายละเอียด

ใช้ ctx.debug เมื่อคุณต้องการร่องรอยแบบละเอียด เช่น ค่าที่แยกวิเคราะห์แล้วหรือแขนงที่เลือก ซึ่งอาจมีมากเกินไปสำหรับการใช้งานทั่วไป

await ctx.debug(f"chosen strategy = {strategy}")

ctx.warning สำหรับสิ่งผิดคาด

ใช้ ctx.warning เมื่อมีบางอย่างไม่เป็นไปตามปกติแต่ยังแก้ไขต่อได้ เช่น ฟิลด์เสริมที่หายไปและคุณเติมค่าปริยายให้

await ctx.warning("timeout missing, using 30s default")

ctx.error สำหรับความล้มเหลว

เรียกใช้ ctx.error สำหรับปัญหาที่เกิดขึ้นจริง วิธีนี้จะแจ้งไคลเอ็นต์ว่าขั้นตอนหนึ่งล้มเหลว โดยแยกจากการโยนข้อยกเว้นที่ทำให้การเรียกสิ้นสุดลง

await ctx.error("upstream API returned 503")

ระดับความรุนแรงมาตรฐาน

MCP ใช้มาตราส่วน ระบบบันทึก ที่คุ้นเคย ได้แก่ debug, info, notice, warning, error, critical และระดับที่สูงกว่า ไคลเอ็นต์สามารถจัดเรียงและกำหนดสีตามระดับได้

ตั้งชื่อตัวบันทึก

ตัวช่วยจำนวนมากรับชื่อ ตัวบันทึก เพื่อจัดกลุ่มข้อความตามองค์ประกอบ คล้ายกับที่โมดูลการบันทึกมาตรฐานของ Python ทำ

await ctx.info("cache miss", logger="db")

อย่าบันทึกข้อมูลลับ

ข้อความบันทึกออกจากโพรเซสของคุณและไปถึงไคลเอ็นต์ ดังนั้นให้ถือว่าข้อความเหล่านั้นมองเห็นได้ อย่าเขียน ข้อมูลลับ เช่น โทเค็นหรือรหัสผ่านลงในบันทึก

บันทึกคือการแจ้งเตือน

เช่นเดียวกับความคืบหน้า บันทึกแต่ละรายการคือ การแจ้งเตือน จึงไม่บล็อกเครื่องมือและไม่รอคำตอบ คุณสามารถบันทึกได้อย่างอิสระขณะที่งานดำเนินไป

await ctx.info("step 1 done")
await ctx.info("step 2 done")

ตรวจสอบอย่างรวดเร็ว

เลือกตัวช่วยที่เหมาะสมสำหรับการอัปเดตสถานะตามปกติ

สรุป: การบันทึก

ตอนนี้คุณสามารถส่งบันทึกตามระดับด้วย ctx.info, debug, warning และ error ตั้งชื่อตัวบันทึก และเก็บข้อมูลลับไม่ให้รั่วไหลได้แล้ว พัฒนาไปได้ดีมากครับ/ค่ะ!

เริ่มต้นได้ฟรี

เรียนรู้ Python ด้วย AI tutor — ฟรี

เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป

คอร์ส
30
บทเรียน
120

คำถามที่พบบ่อย

บทเรียน “การบันทึกแบบมีโครงสร้างไปยังไคลเอ็นต์” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “การบันทึกแบบมีโครงสร้างไปยังไคลเอ็นต์” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส MCP Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส MCP Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “การบันทึกแบบมีโครงสร้างไปยังไคลเอ็นต์”

ส่งข้อความบันทึกที่มีระดับผ่านโพรโทคอล คุณปฏิบัติ MCP Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน MCP Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน MCP Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน

บทเรียน “การบันทึกแบบมีโครงสร้างไปยังไคลเอ็นต์” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน MCP Academy นี้ได้ไหม

ได้ บทเรียน MCP Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. ส่งความคืบหน้าสำหรับงานที่ใช้เวลานาน
  2. จัดการคำขอยกเลิก
  3. การบันทึกแบบมีโครงสร้างไปยังไคลเอ็นต์
  4. ตั้งระดับบันทึกขณะทำงาน
← กลับไปที่ MCP Academy