𝟯 การตรวจสอบหลังการ Deploy ที่ผมทำทุกครั้งหลังจาก Cloudflare Pages Build เสร็จสิ้น
ผมใช้เวลาถึงสองสัปดาห์ในการไล่แก้ปัญหา (debug) บน production
กฎการ redirect ของ sitemap ไปบล็อกไฟล์ sitemap ของผม การอัปโหลดรูปภาพล้มเหลวเพราะความล่าช้าในการ deploy (deployment lag) ความผิดพลาดเหล่านี้ทำให้เสียเวลามาก
ตอนนี้ ผมใช้การตรวจสอบเฉพาะเจาะจง 3 อย่างหลังจากการ deploy Cloudflare Pages ทุกครั้ง ผมไม่ได้ใช้ชุดทดสอบแบบเต็มรูปแบบ (full test suite) แต่ผมใช้การตรวจสอบที่รวดเร็วทั้ง 3 อย่างนี้เพื่อดักจับข้อผิดพลาดที่ผมเจอจริงๆ
ผมใช้การตรวจสอบเหล่านี้กับเว็บไซต์ 3 แห่งที่สร้างด้วย Astro 5 SSG
- การตรวจสอบ Sitemap (Sitemap Verification)
ผมตรวจสอบว่า sitemap-index.xml ส่งคืน status code 200 ในทุกโดเมนหรือไม่ และผมยังตรวจสอบ sitemap-0.xml ด้วย
ผมตรวจสอบว่าจำนวน URL เป็นไปตามเกณฑ์ขั้นต่ำที่กำหนดไว้หรือไม่ ตัวอย่างเช่น aiappdex.com ต้องมี URL อย่างน้อย 1,000 รายการ หากจำนวนลดลง แสดงว่า data pipeline ของผมมีปัญหา
ผมใช้ curl โดยไม่ทำตามการ redirect (without following redirects) วิธีนี้ช่วยให้ผมตรวจพบกฎการ redirect ที่ผิดพลาด ซึ่งมักจะซ่อนข้อผิดพลาดไม่ให้เบราว์เซอร์เห็น
- การส่งข้อมูลผ่าน IndexNow (IndexNow Submission)
หลังจากตรวจสอบ sitemap แล้ว ผมจะรันสคริปต์เพื่อส่ง URL ไปยัง IndexNow สำหรับ Bing, Yandex, Naver และ Seznam
สคริปต์จะอ่าน sitemap ที่ใช้งานจริงและโพสต์ URL เหล่านั้น หาก IndexNow ส่งคืน error 403 แสดงว่าไฟล์ยืนยันคีย์ (key verification file) ของผมหายไป หรือกฎการ redirect มีปัญหา
ผมรันขั้นตอนนี้ด้วยตัวเอง (manually) หลังการ deploy เพื่อให้มั่นใจว่าผมกำลังส่ง URL ที่ใช้งานได้จริงและมีความเสถียร
- การตรวจสอบประสิทธิภาพด้วย Lighthouse (Lighthouse Performance Monitoring)
ผมรันการตรวจสอบนี้ผ่าน weekly cron job แทนที่จะทำทุกครั้งที่ deploy เพื่อติดตามแนวโน้มของประสิทธิภาพ (performance trends)
สิ่งที่ผมเฝ้าดูคือ:
- คะแนน Performance ต่ำกว่า 80
- CLS สูงกว่า 0.1
- การถดถอยของ Accessibility (Accessibility regressions)
เนื่องจากเว็บไซต์ของผมใช้ Astro SSG โดยไม่มี client-side JS คะแนนเหล่านี้ควรจะคงที่ หากคะแนนลดลง เป็นไปได้ว่าการเปลี่ยนแปลง CSS อาจทำให้เลย์เอาต์พัง ผมใช้คะแนนเหล่านี้เป็นตัวติดตามแนวโน้ม ไม่ใช่เครื่องมือสำหรับบล็อกการ deploy
สรุป
ผมไม่ได้ใช้การตรวจสอบ uptime หรือการทดสอบผู้ใช้แบบ end-to-end สำหรับการ deploy แบบ static CDN การตรวจสอบทั้ง 3 อย่างนี้ครอบคลุมความเสี่ยงหลักของผมแล้ว มันช่วยปกป้อง SEO และความสมบูรณ์ของเลย์เอาต์โดยไม่เพิ่มความซับซ้อนที่ไม่จำเป็น
ที่มา: https://dev.to/morinaga/three-post-deploy-checks-i-run-after-every-cloudflare-pages-build-48b4