صارفین جو محسوس کرتے ہیں اس سے شروع کریں، بنیادی ڈھانچے سے نیچے سے نہیں۔ سب سے قابل اعتماد host fleet بے کار ہے اگر درخواستیں ناکام ہو رہی ہوں، اس لیے سے شروع کریں — ، ، — پھر چار طلائی سگنلز شامل کریں، پھر infra میٹرکس آخر میں۔
صارفین جو محسوس کرتے ہیں اس سے شروع کریں، بنیادی ڈھانچے سے نیچے سے نہیں۔ سب سے قابل اعتماد host fleet بے کار ہے اگر درخواستیں ناکام ہو رہی ہوں، اس لیے سے شروع کریں — ، ، — پھر چار طلائی سگنلز شامل کریں، پھر infra میٹرکس آخر میں۔
1. USER-FACING SLIs → what the user experiences (latency, errors, availability)
2. GOLDEN SIGNALS → latency, traffic, errors, saturation per service
3. INFRA METRICS → CPU, memory, disk, network (causes, not symptoms)
اگر آپ صرف CPU اور disk دیکھتے ہیں (نیچے سے اوپر)، آپ مکمل طور پر سبز ہو سکتے ہیں جب کہ صارفین کو 500s ملتے ہیں۔ پہلے SLIs دیکھنا (اوپر سے نیچے) کا مطلب ہے کہ آپ علامات جو صارفین اصل میں محسوس کرتے ہیں پر الرٹ کریں، پھر سبب تلاش کرنے کے لیے طلائی سگنلز اور infra میں drill down کریں۔
INSTRUMENT app emits metrics/logs/traces (e.g. request_duration_seconds histogram)
↓
COLLECT a TSDB scrapes/ingests them (Prometheus, Datadog agent)
↓
DASHBOARD visualize SLIs + golden signals (Grafana) for humans to read
↓
ALERT fire on SLO violations / burn rate, routed to on-call
# Availability SLI: fraction of requests that succeed
sum(rate(http_requests_total{status!~"5.."}[5m]))
/ sum(rate(http_requests_total[5m]))
# Latency SLI: p99 request latency
histogram_quantile(0.99, sum by (le) (rate(http_request_duration_seconds_bucket[5m])))
ہر SLI پر SLO تعریف کریں (مثلاً 99.9% availability، p99 < 300ms)، انہیں dashboard کریں، اور الرٹ کریں جب SLO خطرے میں ہو — ہر blip پر نہیں۔
نگرانی جو نیچے سے اوپر بنائی گئی ہو یہ بتاتی ہے کہ disk 80% بھرا ہے لیکن یہ نہیں کہ صارفین checkout نہیں کر سکتے۔ صارف کے سامنے SLIs سے شروع کرنا ہر dashboard اور alert کو حقیقی صارف کے اثرات سے جوڑتا ہے، شور کو کم رکھتا ہے، اور ایک واضح drill-down راستہ دیتا ہے (علامت → طلائی سگنل → infra سبب) جب کچھ ٹوٹ جاتا ہے۔