Core Web Vitals: کیا مانیٹر کریں اور regressions کیسے ٹھیک کریں
Performance regressions تقریباً کبھی جان بوجھ کر ship نہیں کیے جاتے۔ یہ ایک بظاہر معصوم تبدیلی کے ساتھ آتے ہیں: ایک نیا image carousel، third-party tag، font کی تبدیلی۔ جب تک کسی کو conversions میں کمی نظر آتی ہے، regression دو ہفتے پرانی ہو چکی ہے۔ مسلسل CWV مانیٹرنگ loop کو پلٹ دیتی ہے۔
Google حقیقی صارف کی performance کے مطابق سائٹس کو rank کرتا ہے۔ LCP، FCP، CLS، TTFB — یہ خلاصہ اعداد نہیں، جب یہ بہک جائیں تو conversion killers ہیں۔ یہاں بتایا ہے کہ انہیں مسلسل مانیٹر کریں اور صارفین تک پہنچنے سے پہلے regressions پکڑیں۔
Core Web Vitals اصل میں کیا ناپتے ہیں
وہ چھ metrics جن کی آپ کو فکر ہونی چاہیے، سادہ الفاظ میں:
• LCP (Largest Contentful Paint) — سب سے بڑے visible element کے render ہونے تک کا وقت۔ اچھا < 2.5s۔ • FCP (First Contentful Paint) — کسی بھی pixel کے render ہونے تک کا وقت۔ اچھا < 1.8s۔ • CLS (Cumulative Layout Shift) — load کے دوران page کتنا جمپ کرتا ہے۔ اچھا < 0.1۔ • TTFB (Time to First Byte) — خالص server/CDN latency۔ اچھا < 0.8s۔ • TBT (Total Blocking Time) — main thread کتنی دیر block رہا۔ اچھا < 200ms۔ • Speed Index — synthesized 'کتنی تیز محسوس ہوئی' score۔ اچھا < 3.4s۔
Synthetic lab scores کیوں جھوٹ بولتے ہیں
Lighthouse-CI آپ کا page ایک simulated mid-tier device پر simulated 3G کنکشن کے ساتھ چلاتا ہے۔ یہ نسبتی موازنوں کے لیے اچھا ہے، لیکن بہت سے حقیقی failure modes مس کر دیتا ہے۔ Third-party scripts جو cookie consent کی بنیاد پر lazy-load ہوتے ہیں، A/B branches جو صرف آدھے users کو نظر آتے ہیں — Lighthouse انہیں کبھی نہیں دیکھتا۔
Full-browser Playwright check وہ failures پکڑ لیتا ہے جو Lighthouse مس کر دیتا ہے۔ SpeedTest دونوں چلاتا ہے۔
گراف پڑھنا: بتدریج بمقابلہ step-change regressions
Regression کی دو شکلیں مختلف کہانیاں سناتی ہیں۔
بتدریج چڑھاؤ دو ہفتوں میں LCP میں عام طور پر کہتا ہے کہ ایک ہی resource بڑھ رہا ہے — pagination کے بغیر product-image feed، analytics bundle جو features حاصل کرتا رہتا ہے۔
Step-change ایک single deploy پر — TTFB راتوں رات 400ms سے 1200ms ہو جاتا ہے — براہ راست code-level وجہ ہے۔ timestamp کو اپنے DeployLog entries سے correlate کریں۔
Per-metric alert thresholds جو آپ واقعی چاہتے ہیں
ہر metric پر ایک threshold، 'poor' boundary پار کرنے پر alert، نہ کہ 'regressed by 10%':
• LCP > 4.0s — alert • FCP > 3.0s — alert • CLS > 0.25 — alert • TTFB > 1.8s — alert • TBT > 600ms — alert
انہیں 'warn' threshold کے ساتھ جوڑیں Google کی 'needs improvement' line پر۔
جب deploy کے بعد CWV regress ہو جائے تو کیا کریں
Playbook جب release کے فوراً بعد red metric آگ لگائے:
1. ناکام run کا Playwright trace کھولیں۔ 2. نیا یا تبدیل شدہ resource تلاش کریں۔ 3. اگر third-party ہے تو ان کا status page چیک کریں اور `async` یا `defer` پر غور کریں۔ 4. اگر آپ کا code ہے تو DeployLog سے correlate کریں اور rollback یا hotfix کریں۔ 5. Failure pattern کو اپنی pre-deploy checklist میں شامل کریں۔
فیچر گائیڈ
Uptime Monitoring
AlertsDock gives teams uptime monitoring for websites, APIs, TCP checks, DNS checks, SSL expiry, and fast alert routing without enterprise overhead.
گائیڈ پڑھیںمتبادل صفحہ
Better Stack Alternative
Compare AlertsDock with Better Stack for teams that want a more focused monitoring product covering uptime, cron jobs, status pages, and webhooks.
موازنہ دیکھیںMore articles
AI سے تیار کردہ changelogs: git commits کو خودکار طور پر release notes میں بدلیں
Release notes لکھنا وہ کام ہے جو کوئی نہیں چاہتا۔ DeployLog ہر push پر آپ کے commits پڑھتا ہے اور قسم کے مطابق گروپ کیے گئے صاف، قابل مطالعہ changelogs تیار کرتا ہے — Anthropic ضروری نہیں، Groq، Gemini، Cloudflare، OpenRouter یا self-hosted Ollama کے ساتھ کام کرتا ہے۔
.env فائلز email کرنا بند کریں: encrypted vaults کا عملی گائیڈ
آپ کی ٹیم کا DATABASE_URL کسی کے Slack DMs میں ہے۔ آپ کی STRIPE_SECRET_KEY Notion page پر رہتی ہے۔ اسی طرح secrets leak ہوتے ہیں۔ یہاں وہ hygiene ہے جو آپ کو پہلے دن سے ہونی چاہیے تھی — اور encrypted vaults اسے بے تکلیف بنا دیتے ہیں۔
Incident Playbooks جو خود بخود چلتے ہیں: runbook سے runtime تک
ایسا runbook لکھنا جسے کوئی رات 3 بجے نہیں پڑھتا بیکار ہے۔ ایسا لکھنا جو monitor کے down ہوتے ہی خود بخود شروع ہو جائے اور ہر قدم لاگ کرے ایک force multiplier ہے۔ یہاں سیکھیں کہ on-call کو تنہا بحران کی بجائے checklist فالو کرنے جیسا کیسے بنائیں۔