สามเสาหลักของการสังเกตระบบ
ทำความเข้าใจแทรซ เมทริกซ์ และบันทึก
สามเสาหลักของการสังเกตระบบ เป็นบทเรียน C# Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน C# Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส C# Academy มีบทเรียนทั้งหมด 4 บทเรียน
ความสามารถในการสังเกตระบบคืออะไร
ความสามารถในการสังเกตระบบคือความสามารถในการเข้าใจสถานะภายในของระบบจากข้อมูลที่ระบบส่งออก สำหรับบริการที่กำลังทำงาน ความสามารถนี้ช่วยตอบได้ว่าระบบมีสถานะดีหรือไม่ เหตุใดจึงทำงานช้า และอะไรล้มเหลว โดยอาศัยเสาหลักสามประการ ได้แก่ ร่องรอยการติดตาม เมตริก และบันทึก
OpenTelemetry คืออะไร
OpenTelemetry หรือ OTel คือมาตรฐานและชุดไลบรารีที่ไม่ขึ้นกับผู้จำหน่ายสำหรับสร้างและส่งออกข้อมูลการวัดระบบ ด้วยการติดตั้งเครื่องมือวัดเพียงครั้งเดียว คุณสามารถส่งข้อมูลไปยังระบบปลายทางหลายแห่ง เช่น Jaeger, Prometheus หรือ Grafana
dotnet add package OpenTelemetry.Extensions.Hostingเสาหลักที่หนึ่ง: บันทึก
บันทึกคือระเบียนเหตุการณ์แต่ละรายการที่มีการประทับเวลา เช่น "ผู้ใช้หมายเลข 42 เข้าสู่ระบบ" และ "การชำระเงินล้มเหลว" บันทึกให้บริบทโดยละเอียดที่มนุษย์อ่านเข้าใจได้ แต่เพียงอย่างเดียวอาจมีสัญญาณรบกวนมากและรวบรวมข้อมูลได้ยาก
logger.LogInformation("Order {OrderId} placed by {UserId}", orderId, userId);เสาหลักที่สอง: เมตริก
เมตริกคือค่าการวัดเชิงตัวเลขที่รวมตามช่วงเวลา เช่น จำนวนคำขอ อัตราข้อผิดพลาด ค่าเปอร์เซ็นไทล์ของเวลาแฝง และการใช้งาน CPU เมตริกจัดเก็บได้ประหยัด และเหมาะอย่างยิ่งสำหรับแดชบอร์ดและการแจ้งเตือน
เสาหลักที่สาม: ร่องรอยการติดตาม
ร่องรอยการติดตามจะติดตามคำขอเดียวขณะไหลผ่านบริการต่าง ๆ โดยแบ่งคำขอออกเป็นช่วงการติดตามย่อยที่มีการจับเวลา ร่องรอยเหล่านี้ช่วยให้เห็นว่าใช้เวลาไปกับส่วนใด และการพึ่งพาใดเป็นสาเหตุให้การทำงานช้าลง
เสาหลักทั้งสามช่วยเสริมกันอย่างไร
เมตริกบอกว่ามีบางอย่างผิดปกติ เช่น อัตราข้อผิดพลาดเพิ่มขึ้น ร่องรอยการติดตามบอกที่ใด เช่น บริการชำระเงิน ส่วนบันทึกบอกเหตุใด เช่น เกิดการอ้างอิงค่าว่างสำหรับรายการสั่งซื้อรายการหนึ่ง เมื่อนำมารวมกัน ทั้งสามส่วนจะสร้างภาพรวมสำหรับการแก้ไขข้อบกพร่อง
กุญแจสำคัญคือความเชื่อมโยง
พลังที่แท้จริงเกิดจากการเชื่อมโยงข้อมูล รหัสร่องรอยร่วมที่ประทับไว้ในบันทึกและช่วงการติดตามย่อยช่วยให้คุณข้ามจากการแจ้งเตือนของเมตริกไปยังร่องรอยที่ตรงกันและบันทึกของคำขอที่ล้มเหลวรายการนั้นได้
สัญญาณใน OpenTelemetry
OpenTelemetry เรียกเสาหลักเหล่านี้ว่าสัญญาณ ส่วน .NET จับคู่สัญญาณเหล่านี้กับองค์ประกอบพื้นฐานที่คุ้นเคย ได้แก่ ร่องรอยการติดตามใช้ Activity/ActivitySource เมตริกใช้ Meter และบันทึกใช้ ILogger
การเพิ่ม OpenTelemetry ให้กับโฮสต์
เปิดใช้สัญญาณด้วย AddOpenTelemetry() แล้วกำหนดค่าร่องรอยการติดตามและเมตริก เราจะอธิบายแต่ละส่วนโดยละเอียดในบทเรียนถัดไป
builder.Services.AddOpenTelemetry()
.WithTracing(tracing => { })
.WithMetrics(metrics => { });คุณลักษณะของทรัพยากร
ทรัพยากรใช้บรรยายหน่วยงานที่สร้างข้อมูลเทเลเมทรี เช่น ชื่อบริการ เวอร์ชัน และสภาพแวดล้อม การกำหนดค่าให้สอดคล้องกันช่วยให้ระบบปลายทางจัดกลุ่มและกรองข้อมูลของคุณได้อย่างถูกต้อง
builder.Services.AddOpenTelemetry()
.ConfigureResource(r => r.AddService(
serviceName: "checkout-api",
serviceVersion: "1.4.0"));การติดตั้งเครื่องมือวัดอัตโนมัติเทียบกับด้วยตนเอง
OpenTelemetry มีการติดตั้งเครื่องมือวัดอัตโนมัติสำหรับ ASP.NET Core, HttpClient และอื่น ๆ รวมถึงการติดตั้งด้วยตนเอง ซึ่งช่วยให้คุณเพิ่มช่วงการทำงานและตัวชี้วัดของคุณเองเพื่อรับข้อมูลเชิงลึกเฉพาะด้านธุรกิจ
ตรวจสอบอย่างรวดเร็ว
ทดสอบเสาหลักทั้งสามประการ
สรุปทบทวน
การสังเกตระบบมีเสาหลักสามประการ ได้แก่ บันทึก (เหตุการณ์ ซึ่งบอกสาเหตุ) ตัวชี้วัด (ตัวเลขที่รวมแล้ว ซึ่งบอกสิ่งที่เกิดขึ้น) และร่องรอย (ช่วงการทำงานต่อคำขอ ซึ่งบอกตำแหน่งที่เกิดขึ้น) OpenTelemetry เป็นมาตรฐานที่ไม่ผูกกับผู้จำหน่ายสำหรับส่งสัญญาณทั้งสามประเภท โดยใน .NET สัญญาณเหล่านี้เชื่อมโยงกับ Activity, Meter และ ILogger การเชื่อมโยงผ่านรหัสร่องรอยและทรัพยากรที่กำหนดค่าไว้อย่างเหมาะสมจะรวมข้อมูลทั้งหมดเข้าด้วยกัน
เรียนรู้ C# ด้วย AI tutor — ฟรี
เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป
- คอร์ส
- 93
- บทเรียน
- 346
คำถามที่พบบ่อย
บทเรียน “สามเสาหลักของการสังเกตระบบ” ฟรีหรือไม่
ใช่ — ข้อความเต็มของ “สามเสาหลักของการสังเกตระบบ” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส C# Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส C# Academy มีบทเรียนทั้งหมด 4 บทเรียน
คุณจะเรียนรู้อะไรในบทเรียน “สามเสาหลักของการสังเกตระบบ”
ทำความเข้าใจแทรซ เมทริกซ์ และบันทึก คุณปฏิบัติ C# Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน
คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน C# Academy หรือไม่
ไม่จำเป็นต้องมีประสบการณ์มาก่อน C# Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 1 จากทั้งหมด 4 บทเรียน
บทเรียน “สามเสาหลักของการสังเกตระบบ” ใช้เวลานานแค่ไหน
บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย
ฉันเขียนและรันโค้ดในบทเรียน C# Academy นี้ได้ไหม
ได้ บทเรียน C# Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ
บทเรียนทั้งหมดในหลักสูตรนี้
- สามเสาหลักของการสังเกตระบบ
- การติดตามแบบกระจาย
- การรวบรวมเมทริกซ์
- การส่งออกไปยังระบบปลายทาง