۳ بررسی پس از استقرار (Post-Deploy) که من بعد از هر Build در Cloudflare Pages انجام می‌دهم

من دو هفته را صرف عیب‌یابی (debugging) مشکلات محیط عملیاتی (production) کردم.

یک خطا مربوط به قانون sitemap بود که باعث مسدود شدن sitemap index من شد. خطای دیگر، تأخیر در آپلود تصاویر بود. این مشکلات فقط پس از استقرار (deployment) ظاهر شدند.

من از مجموعه‌ تست‌های کامل end-to-end استفاده نمی‌کنم. در عوض، از سه بررسی مشخص برای شناسایی شکست‌های رایج استفاده می‌کنم. من این بررسی‌ها را روی سه سایت ساخته شده با Astro 5 اجرا می‌کنم.

  1. تأیید Sitemap

من بررسی می‌کنم که آیا sitemap-index.xml در تمام دامنه‌ها کد وضعیت ۲۰۰ را برمی‌گرداند یا خیر. من از curl برای تأیید این موضوع استفاده می‌کنم.

همچنین زیرمجموعه sitemap یعنی sitemap-0.xml را بررسی می‌کنم. اطمینان حاصل می‌کنم که حداقل تعداد مشخصی URL داشته باشد. اگر تعداد کاهش یابد، احتمالاً خط لوله داده (data pipeline) من با شکست مواجه شده است.

من این را از راه سخت یاد گرفتم. یک بار یک قانون redirect باعث شد sitemap من به مدت پنج روز از کار بیفتد. در مرورگر کار می‌کرد اما برای خزنده‌های وب (web crawlers) با شکست مواجه می‌شد.

  1. ارسال به IndexNow

پس از بررسی sitemap، یک اسکریپت node اجرا می‌کنم. این اسکریپت URLها را جمع‌آوری کرده و آن‌ها را به endpoint مربوط به IndexNow برای Bing، Yandex، Naver و Seznam ارسال می‌کند.

من این کار را به صورت دستی بعد از هر استقرار انجام می‌دهم. این کار تضمین می‌کند که URLهای فعال (live) را ارسال می‌کنم.

اگر IndexNow خطای ۴۰۳ برگرداند، یعنی فایل تأیید کلید (key verification file) من وجود ندارد یا یک قانون redirect خراب شده است. شناسایی زودهنگام این موضوع از تأخیر در ایندکس شدن توسط موتورهای جستجو جلوگیری می‌کند.

  1. پایش روند Lighthouse

من این بررسی را طبق برنامه، هر دوشنبه انجام می‌دهم. از lighthouse-ci برای بررسی عملکرد (performance)، پایداری چیدمان (layout stability) و قابلیت دسترسی (accessibility) استفاده می‌کنم.

من سه سایت را که هر کدام شامل یک صفحه اصلی و یک صفحه داخلی (deep page) هستند، پایش می‌کنم.

من از این امتیازها برای مسدود کردن استقرارها استفاده نمی‌کنم؛ بلکه از آن‌ها برای ردیابی روندها استفاده می‌کنم. اگر امتیازها کاهش یابند، می‌دانم که تغییر اخیر در CSS یا کامپوننت‌های من باعث جابجایی چیدمان (layout shift) شده است.

این بررسی‌ها نقاط شکست واقعی من را پوشش می‌دهند. از آنجایی که سایت‌های من استاتیک هستند، نیازی به پایش در دسترس بودن (uptime monitoring) یا بررسی‌های API ندارم. من فقط روی چیزهایی تمرکز می‌کنم که می‌تواند در یک استقرار استاتیک روی CDN خراب شود.

Source: https://dev.to/morinaga/three-post-deploy-checks-i-run-after-every-cloudflare-pages-build-4704