บทเรียนที่ 1การตีความล็อกสำหรับแอปเว็บและบริการระบบ: /var/log/syslog, /var/log/messages, journald (journalctl), ล็อกเฉพาะแอปพลิเคชันและวิธีกรองเรียนรู้การอ่านและกรองล็อก Linux และ macOS สำหรับแอปเว็บและบริการ จะได้ฝึกใช้ syslog, journald และล็อกแอป ด้วย journalctl, grep และเครื่องมืออื่นๆ เพื่อแยกปัญหา สัมพันธ์เหตุการณ์ และสร้างคำค้นล็อกที่ทำซ้ำได้
โครงสร้าง Syslog และตำแหน่งล็อกทั่วไปการใช้ตัวกรอง journalctl และช่วงเวลาการอ่านล็อกการเข้าถึงและข้อผิดพลาดของเว็บเซิร์ฟเวอร์การกรองล็อกด้วย grep, awk และ sedการสัมพันธ์เหตุการณ์หลายบริการตามเวลาสแตมป์บทเรียนที่ 2การระบุและวิเคราะห์กระบวนการ: ps aux, pstree, pmap, lsof, strace — ค้นหากระบวนการที่ก่อปัญหาและตรวจสอบพฤติกรรมพัฒนาเทคนิคค้นหาและตรวจสอบกระบวนการที่มีปัญหา ใช้ ps, pstree, pmap, lsof และ strace เพื่อสร้างแผนผังลำดับชั้นกระบวนการ ตรวจสอบไฟล์และพอร์ตที่เปิด ติดตามการเรียกระบบ และเชื่อมโยงการพุ่งของทรัพยากรกับ PID เฉพาะ
ค้นหากระบวนการหนักด้วย ps และ topแสดงภาพพ่อและลูกด้วย pstreeตรวจสอบแผนที่หน่วยความจำด้วย pmapค้นหาไฟล์และพอร์ตที่เปิดด้วย lsofติดตามการเรียกระบบและการค้างด้วย straceบทเรียนที่ 3การวินิจฉัยเครือข่ายบน Linux: ss, netstat, ip a, ip route, ethtool, ifconfig — วิธีอ่านข้อมูลอินเทอร์เฟซและเส้นทางฝึกทักษะวินิจฉัยปัญหาเครือข่าย Linux และ macOS ใช้ ss, netstat, ip, ifconfig และ ethtool เพื่อตรวจสอบซ็อกเก็ต เส้นทาง และอินเทอร์เฟซ ระบุบริการที่ฟัง และยืนยันปัญหาการเชื่อมต่อและ throughput
แสดงรายการพอร์ตที่ฟังด้วย ss และ netstatตรวจสอบที่อยู่ IP และเส้นทางด้วย ipตรวจสอบความเร็วลิงก์และ duplex ด้วย ethtoolใช้ ifconfig และ ip สำหรับสถานะอินเทอร์เฟซตรวจจับปัญหาเส้นทางและ DNS ทั่วไปบทเรียนที่ 4การสืบสวน I/O ดิสก์: iostat, iotop, blktrace, ตรวจสอบประเภทระบบไฟล์และตัวเลือก mountสืบสวนคอขวด I/O ดิสก์และพฤติกรรมระบบไฟล์ ใช้ iostat, iotop และ blktrace ตรวจสอบประเภทระบบไฟล์และตัวเลือก mount และเชื่อมโยงรูปแบบ I/O กับ workload แอปพลิเคชันและอาการ latency
ตรวจจับการอิ่มตัว I/O ด้วย iostatค้นหากระบวนการ I/O หนักด้วย iotopติดตามกิจกรรมระดับบล็อกด้วย blktraceเปรียบเทียบประเภทระบบไฟล์และข้อดีข้อเสียตรวจสอบตัวเลือก mount สำหรับประสิทธิภาพบทเรียนที่ 5คำสั่งสำหรับการตรวจสอบสด: top, htop, vmstat, iostat, sar, mpstat — ตัวอย่างการใช้งานที่แน่นอนและการตีความสำรวจเครื่องมือตรวจสอบสดเพื่อเข้าใจพฤติกรรมระบบแบบเรียลไทม์ ใช้ top, htop, vmstat, iostat, sar และ mpstat เพื่อตรวจจับคอขวด CPU หน่วยความจำ และ I/O ตีความฟิลด์สำคัญ และจับภาพ snapshot ประสิทธิภาพสั้นๆ
อ่าน CPU และโหลดใน top และ htopใช้ vmstat สำหรับข้อมูลหน่วยความจำและ swapตรวจสอบ I/O ดิสก์ด้วย iostat และ iotopภาพถ่ายทางประวัติศาสตร์ด้วย sar และ mpstatส่งออกผลลัพธ์คำสั่งสำหรับตรวจสอบภายหลังบทเรียนที่ 6การวิเคราะห์ประสิทธิภาพเว็บเซิร์ฟเวอร์: โมดูลสถานะ nginx/apache, ล็อกการเข้าถึง/ข้อผิดพลาด, การวิเคราะห์คำขอช้า, รูปแบบสถานะ HTTPเรียนรู้การประเมินประสิทธิภาพเว็บเซิร์ฟเวอร์ nginx และ Apache อ่านโมดูลสถานะ วิเคราะห์ล็อกการเข้าถึงและข้อผิดพลาด ตรวจจับคำขอช้า และตีความรูปแบบสถานะ HTTP เพื่อแยกปัญหาลูกค้าจากคอขวดเซิร์ฟเวอร์
เปิดใช้งานและอ่านจุดสิ้นสุดสถานะ nginxใช้ Apache mod_status และ server-statusระบุคำขอช้าและ timeoutวิเคราะห์การกระจายรหัสสถานะ HTTPตรวจจับบอท สแกน และทราฟฟิกที่ไม่เหมาะสมบทเรียนที่ 7การแก้ไขระยะยาว: การวางแผนความจุ, ขีดจำกัดทรัพยากร (systemd, cgroups), การปรับแต่งคอนฟิกเคอร์เนลและเว็บเซิร์ฟเวอร์, เครื่องมือโปรไฟล์แอปและการใช้งานวางแผนการแก้ไขระยะยาวแทนการดับเพลิงซ้ำๆ ฝึกการวางแผนความจุ ตั้งขีดจำกัดทรัพยากรด้วย systemd และ cgroups ปรับแต่งพารามิเตอร์เคอร์เนลและเว็บเซิร์ฟเวอร์ และเลือกเครื่องมือโปรไฟล์เพื่อนำทางการเปลี่ยนโค้ดและคอนฟิก
รวบรวมข้อมูลสำหรับการวางแผนความจุกำหนดขีดจำกัดทรัพยากรหน่วย systemdใช้ข้อจำกัด cgroup พื้นฐานอย่างปลอดภัยปรับแต่งพารามิเตอร์เคอร์เนลและเว็บเซิร์ฟเวอร์เลือกและใช้เครื่องมือโปรไฟล์แอปบทเรียนที่ 8การเข้าใจเมตริกทรัพยากรระบบ: CPU, หน่วยความจำ, I/O, เครือข่าย — สิ่งที่ต้องตรวจสอบและเหตุผลเข้าใจเมตริกระบบหลักและสิ่งที่บอกเกี่ยวกับสุขภาพ ตีความตัวบ่งชี้ CPU หน่วยความจำ ดิสก์ และเครือข่าย เรียนรู้เกณฑ์ปลอดภัย และตัดสินใจว่าเมตริกใดสำคัญที่สุดสำหรับ workload เว็บและบริการพื้นหลัง
การใช้งาน CPU, ค่าเฉลี่ยโหลด และคิวรันการใช้งานหน่วยความจำ แคช และพฤติกรรม swapthroughput ดิสก์, latency และความลึกคิวแบนด์วิดธ์เครือข่าย, ข้อผิดพลาด และการหล่นเลือกเกณฑ์แจ้งเตือนสำหรับเมตริกหลักบทเรียนที่ 9เทคนิคบรรเทาชั่วคราว: รีสตาร์ทบริการ, ปรับ niceness กระบวนการ, ล้างแคช, นำบริการออฟไลน์อย่างนุ่มนวล — คำสั่งและผลลัพธ์ที่คาดหวังใช้การบรรเทาชั่วคราวที่ปลอดภัยระหว่างเหตุการณ์ รีสตาร์ทบริการ ปรับ niceness จัดการแคช และนำบริการออฟไลน์อย่างนุ่มนวล เข้าใจคำสั่ง ความเสี่ยง และวิธียืนยันว่าการบรรเทามีประสิทธิภาพ
รีสตาร์ทบริการสำคัญอย่างปลอดภัยปรับลำดับความสำคัญกระบวนการด้วย nice และ reniceล้าง page cache และ dentries อย่างระมัดระวังนำแอปเว็บเข้าสู่โหมดบำรุงรักษายืนยันผลกระทบการบรรเทาต่อเมตริก