0Pricing
Cloud & IT Cert Prep · บทเรียน

Application Insights

เพิ่มเครื่องมือให้เว็บแอปพลิเคชันด้วย SDK ของ Application Insights สำรวจแผนผังแอปพลิเคชัน และใช้ Live Metrics Stream เพื่อวินิจฉัยปัญหาแบบเรียลไทม์

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

Application Insights คืออะไร

Application Insights คือฟีเจอร์ของ Azure Monitor ที่ให้บริการ การตรวจสอบประสิทธิภาพแอปพลิเคชัน (APM) สำหรับเว็บแอปพลิเคชันที่กำลังทำงานอยู่ โดยรวบรวมข้อมูลการวัดและส่งเกี่ยวกับคำขอ การพึ่งพา ข้อยกเว้น การดูหน้า และเหตุการณ์แบบกำหนดเอง ต่างจากเมตริกแพลตฟอร์มที่อธิบายสถานะของโครงสร้างพื้นฐาน Application Insights จะอธิบายว่าโค้ดแอปพลิเคชันของคุณกำลังทำอะไร และผู้ใช้ปลายทางได้รับประสบการณ์อย่างไร รองรับ .NET, Node.js, Java, Python และ JavaScript ในเบราว์เซอร์

การเพิ่มการตรวจวัดให้แอปพลิเคชัน

คุณสามารถเพิ่ม Application Insights ลงในแอปพลิเคชันได้โดยติดตั้ง SDK หรือใช้ การตรวจวัดอัตโนมัติ (เรียกอีกอย่างว่าการเชื่อมต่อโดยไม่ใช้โค้ด) สำหรับ App Service การเปิดใช้ Application Insights จากพอร์ทัลจะติดตั้งเอเจนต์โดยอัตโนมัติโดยไม่ต้องแก้ไขโค้ด สำหรับแอปพลิเคชันที่จัดการด้วยตนเอง คุณต้องเพิ่มแพ็กเกจ SDK และระบุ สตริงการเชื่อมต่อจากทรัพยากร Application Insights ของคุณ ซึ่งเป็นวิธีที่แนะนำมากกว่าคีย์การตรวจวัดแบบเก่า

# Enable Application Insights on an App Service app
az webapp config appsettings set \
  --name myApp \
  --resource-group myRG \
  --settings APPLICATIONINSIGHTS_CONNECTION_STRING='InstrumentationKey=...' \
             ApplicationInsightsAgent_EXTENSION_VERSION='~3'

แผนผังแอปพลิเคชัน

Application Map คือโทโพโลยีแบบภาพของคอมโพเนนต์และการพึ่งพาของแอปพลิเคชัน แต่ละโหนดแสดงคอมโพเนนต์หนึ่งรายการ (แอปของคุณ API ปลายทาง ฐานข้อมูล หรือบริการ Azure) และเส้นเชื่อมจะแสดงความสัมพันธ์ของการเรียกใช้ พร้อมกำกับด้วย เวลาเฉลี่ยในการตอบสนอง อัตราคำขอ และ อัตราความล้มเหลว คุณสามารถคลิกโหนดหรือเส้นเชื่อมใดก็ได้เพื่อดูรายละเอียดการติดตามคำขอแต่ละรายการ และระบุว่าความหน่วงหรือความล้มเหลวเริ่มต้นจากที่ใด

สตรีมเมตริกแบบสด

Live Metrics Stream ให้มุมมองประสิทธิภาพของแอปพลิเคชันแบบเรียลไทม์ในระดับต่ำกว่าหนึ่งวินาทีโดยแทบไม่มีความหน่วง คุณสามารถดูอัตราคำขอขาเข้า เวลาในการตอบสนอง อัตราความล้มเหลว และการใช้งาน CPU ได้ทันทีที่เกิดขึ้น ซึ่งมีความสำคัญอย่างยิ่งระหว่างการนำระบบไปใช้งานจริงหรือการตรวจสอบเหตุการณ์ Live Metrics ใช้การเชื่อมต่อขาออกที่ปลอดภัยจากแอปของคุณไปยัง Application Insights จึงไม่จำเป็นต้องเปลี่ยนกฎไฟร์วอลล์ขาเข้า

การติดตามแบบกระจายและธุรกรรมตั้งแต่ต้นจนจบ

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

เหตุการณ์และเมตริกแบบกำหนดเอง

นอกเหนือจากข้อมูลการวัดและส่งอัตโนมัติแล้ว คุณยังสามารถติดตาม เหตุการณ์แบบกำหนดเอง และ เมตริกแบบกำหนดเอง โดยใช้ SDK เรียกใช้ trackEvent() เพื่อบันทึกเหตุการณ์ระดับธุรกิจ เช่น 'CheckoutCompleted' หรือ 'FeatureFlagEnabled' เรียกใช้ trackMetric() เพื่อบันทึกค่าการวัดเฉพาะของแอปพลิเคชัน เช่น ความลึกของคิวหรืออัตราการพบข้อมูลในแคช ข้อมูลการวัดและส่งแบบกำหนดเองจะปรากฏในตาราง Log Analytics เดียวกัน และสามารถค้นหาด้วย KQL ร่วมกับข้อมูลแพลตฟอร์มได้

// Node.js SDK example — tracking a custom event
const appInsights = require('applicationinsights');
appInsights.defaultClient.trackEvent({
  name: 'CheckoutCompleted',
  properties: { userId: '42', plan: 'premium' },
  measurements: { orderValue: 99.99 }
});

การตรวจจับอัจฉริยะและความผิดปกติของความล้มเหลว

Smart Detectionจะวิเคราะห์ข้อมูลการวัดและส่งของคุณโดยอัตโนมัติด้วยการเรียนรู้ของเครื่อง และแจ้งเตือนรูปแบบที่ผิดปกติ เช่น อัตราความล้มเหลวเพิ่มขึ้นอย่างฉับพลัน เวลาตอบสนองของเซิร์ฟเวอร์แย่ลง หรือจำนวนข้อยกเว้นเพิ่มขึ้นผิดปกติ ต่างจากการแจ้งเตือนตามขีดจำกัดที่คุณกำหนดด้วยตนเอง กฎ Smart Detection จะปรับให้เข้ากับพฤติกรรมปกติของแอปพลิเคชันโดยอัตโนมัติ การแจ้งเตือนจะถูกส่งไปยังเจ้าของ subscription และปรากฏในบานหน้าต่าง Smart Detection

การทดสอบความพร้อมใช้งาน

การทดสอบความพร้อมใช้งาน (เรียกอีกอย่างว่าการทดสอบเว็บ) จะส่งคำขอ HTTP จำลองไปยังแอปพลิเคชันของคุณจากภูมิภาค Azure หลายแห่งทั่วโลกตามกำหนดเวลา (ถี่ได้ถึงทุกหนึ่งนาที) การทดสอบจะตรวจสอบว่าปลายทางสาธารณะตอบกลับด้วยรหัสสถานะ HTTP ที่คาดไว้ภายในระยะหมดเวลาหรือไม่ หากการทดสอบล้มเหลวจากหลายตำแหน่งพร้อมกัน การแจ้งเตือนจะเริ่มทำงาน วิธีนี้ช่วยให้คุณตรวจสอบระบบจากภายนอกเข้าสู่ภายในได้อย่างอิสระจากโครงสร้างพื้นฐานภายในของคุณ

# Create a URL ping availability test via CLI
az monitor app-insights web-test create \
  --name 'HomepagePing' \
  --resource-group myRG \
  --app-component myAppInsightsResource \
  --defined-web-test-kind ping \
  --request-url 'https://myapp.azurewebsites.net/' \
  --locations '[{"Id":"us-ca-sjc-azr"},{"Id":"emea-gb-db3-azr"}]' \
  --frequency 300 \
  --timeout 30

การสุ่มตัวอย่างเพื่อควบคุมปริมาณข้อมูล

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

การวิเคราะห์ผู้ใช้และเซสชัน

Application Insights มี การวิเคราะห์การใช้งานในตัวสำหรับแอปพลิเคชันที่ติดตั้งเครื่องมือวัดบนเบราว์เซอร์ เบลด Users แสดงจำนวนผู้ใช้ที่ไม่ซ้ำกัน ส่วน Sessions ติดตามเส้นทางการใช้งานของผู้ใช้ Funnels แสดงภาพการลดลงของผู้ใช้ในขั้นตอนต่าง ๆ และแผนภูมิ Retention แสดงจำนวนผู้ใช้ที่กลับมาใช้งานในช่วงเวลาต่าง ๆ เครื่องมือเหล่านี้มีประโยชน์อย่างยิ่งสำหรับทีมผลิตภัณฑ์ที่ต้องการเพิ่มประสิทธิภาพอัตราการเปลี่ยนเป็นลูกค้าและการมีส่วนร่วมของผู้ใช้ ควบคู่ไปกับการตรวจสอบการทำงานของระบบ

ตาราง Application Insights และ Log Analytics

ข้อมูล Application Insights จะจัดเก็บในพื้นที่ทำงาน Log Analytics ภายในตารางเฉพาะ ได้แก่ requests, exceptions, dependencies, traces, pageViews, customEvents และ customMetrics เมื่อกำหนดค่า Application Insights ใน โหมดที่ใช้พื้นที่ทำงานเป็นพื้นฐาน (ซึ่งเป็นค่าเริ่มต้นสำหรับทรัพยากรใหม่) คุณสามารถรวมตารางเหล่านี้เข้ากับข้อมูลอื่นในพื้นที่ทำงานได้ เช่น เชื่อมโยงข้อยกเว้นของแอปพลิเคชันกับการปฏิเสธการเข้าถึง Key Vault ที่บันทึกไว้ใน AzureActivity

// KQL — find the top 10 slowest dependencies in the last hour
dependencies
| where timestamp > ago(1h)
| where success == false or duration > 2000
| summarize AvgDuration = avg(duration), FailCount = countif(success==false)
    by name, type
| top 10 by AvgDuration desc

ตรวจสอบความเข้าใจอย่างรวดเร็ว

ทดสอบความเข้าใจแนวคิด Microsoft Azure Fundamentals (AZ-900) จากบทเรียนนี้

สรุปบทเรียน

ในบทเรียนนี้ คุณได้เรียนรู้ว่า Application Insights ให้ข้อมูลเทเลเมทรีระดับ APM สำหรับอัตราคำขอ ความล้มเหลว และการพึ่งพา Application Map และ การติดตามแบบกระจายช่วยแสดงภาพโครงสร้างไมโครเซอร์วิสตั้งแต่ต้นจนจบ และ การทดสอบความพร้อมใช้งานช่วยตรวจสอบจุดปลายทางสาธารณะจากหลายตำแหน่งทั่วโลก บทถัดไป เราจะสำรวจ Azure Dashboards และ Workbooks สำหรับแบ่งปันข้อมูลการทำงานของระบบกับทีมของคุณ

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

บทเรียน “Application Insights” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “Application Insights”

เพิ่มเครื่องมือให้เว็บแอปพลิเคชันด้วย SDK ของ Application Insights สำรวจแผนผังแอปพลิเคชัน และใช้ Live Metrics Stream เพื่อวินิจฉัยปัญหาแบบเรียลไทม์ คุณปฏิบัติ Cloud & IT Cert Prep ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Cloud & IT Cert Prep หรือไม่

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

บทเรียน “Application Insights” ใช้เวลานานแค่ไหน

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

ฉันเขียนและรันโค้ดในบทเรียน Cloud & IT Cert Prep นี้ได้ไหม

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

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

  1. เมตริกและการแจ้งเตือนของ Azure Monitor
  2. พื้นฐาน Log Analytics และ KQL
  3. Application Insights
  4. แดชบอร์ดและเวิร์กบุ๊กของ Azure
← กลับไปที่ Cloud & IT Cert Prep