GH GambleHub

مدیریت حوادث

(بخش: تکنولوژی و زیرساخت)

خلاصه ای کوتاه

مدیریت رخداد یک فرآیند قابل تکرار برای بازگرداندن سریع ارزش کاربر و به حداقل رساندن آسیب کسب و کار است. پشتیبانی - نقش های روشن (مدیر حادثه، Tech Lead، Comms)، دروازه های SLO، تشدید، فرآیندهای ChatOps، کتاب های آماده شده و تجزیه و تحلیل پس از حادثه «بی خطر» با موارد اقدام قابل اندازه گیری.

1) اهداف و اصول

سرعت و ایمنی: تشخیص سریع → تثبیت ایمن → بهبودی پایدار

Sole Owner - مدیر حادثه اختصاص داده شده (IM) تصمیمات فرآیند را می گیرد.

ارتباطات به عنوان یک محصول: به روز رسانی قابل پیش بینی برای ذینفعان و کاربران

داده ها> نظرات: SLO/metrics/trails/logs منبع حقیقت هستند.

بی گناه: تجزیه و تحلیل دلایل بدون اتهامات شخصی ؛ تمرکز بر بهبود سیستم

2) طبقه بندی حوادث (شدت/تاثیر/فوریت)

شدت (مثال):
  • SEV1 (بحرانی): آسیب شدید به درآمد/TTW/پرداخت،> 20٪ از کاربران یا کل مناطق ؛ SLA اختلال/تهدید PII.
  • SEV2 (بالا): تخریب جزئی جریان های کلیدی (سپرده/شرط/راه اندازی بازی ها)، تاثیر 5-20٪.
  • SEV3 (متوسط): تخریب قابل توجه خدمات ثانویه، بای پس وجود دارد.
  • SEV4 (کم): جزئی، اثر محدود، هیچ تاثیری بر SLO/SLA ندارد.

تاثیر: چه کسی تحت تاثیر قرار می گیرد (تمام/منطقه/مستاجر/کانال). فوریت: نرخ تخریب (سریع سوزاندن/آهسته سوزاندن در بودجه خطا).

3) چرخه عمر حادثه

1. تشخیص - سیگنال از هشدار/SLO/synthetics/گزارش.
2. تأیید - در تماس تایید پذیرش، اختصاص IM.
3. Triage - نمره SEV/Impact، مجموعه فرضیه، کشف اتاق جنگ.
4. کاهش - تثبیت (بازگشت/مسیر سوئیچینگ/phicheflags/پوسته پوسته شدن).
5. برقراری ارتباط - به روز رسانی وضعیت به طور منظم (در داخل/خارج).
6. بازیابی - بازیابی کامل معیارهای SLO/کسب و کار.
7. بستن - ضبط وقایع، مجموعه ای از مصنوعات، PIR (آیتم های عمل RCA +).

4) نقشها و مسئولیتها (RACI)

مدیر رویداد (IM) - صاحب فرآیند، نقش ها را تعیین می کند، زمان را نظارت می کند، تصمیمات فرآیند را می گیرد (R).
سرب فنی (TL) - انجام تشخیص/فرضیه/رفع، مختصات مهندسان (A/R).
ارتباطات (Comms) - به روز رسانی وضعیت، ارتباط با پشتیبانی/کسب و کار/PR، صفحه وضعیت (R).
Scribe - پروتکل (جدول زمانی، تصمیمات گرفته شده، پیوندها، مصنوعات) (R).
ذینفعان - محصول/پرداخت/ارائه دهندگان بازی/امنیت (C/I).

حداقل در هر SEV1: IM + TL + Comms + Scribe. مجاز به ترکیب نقش ها در SEV2 است.

5) اتاق جنگ и ChatOps

کانال های فردی: «# incident-warroom- <id>» (کار)، «# incident-status» (فقط به روز رسانی).
دستورات الگو: «/incident start »، «/status update»، «/call <owner> »، «/rollback»، «/freeze »، «/scale + N».
ربات زمینه را می کشد: نسخه های اخیر، داشبورد، هشدارهای مرتبط، نمونه های ردیابی، طرح های وابستگی.
قوانین ارتباطات: به طور خلاصه، در حقایق، یک سخنران (TL)، معتدل IM.

6) راه اندازها و دروازه ها

دروازه های SLO: سوزاندن سریع/آهسته، افت تبدیل پرداخت، آستانه TTW p95>، ↑ API p99، صف های پرداخت در آتش است.
اقدامات خودکار: توقف قناری، چرخش، فعال کردن حالت کاهش (محدود کردن توابع)، فعال کردن synthetics فرکانس بالا.
یخ زدن: همه مهاجرت های آزاد/پا قبل از تثبیت و PIR.

7) سناریوهای معمولی (الگوهای رونابوک)

الف) پرداخت: افزایش زمان/شکست در PSP

1. جلوگیری از ترویج و توقف انتشار حلقه پرداخت.
2. مسیر PSP را به حالت آماده به کار تغییر دهید، زمان اتمام/بازپرداخت را با سیاست افزایش دهید.
3. آشتی از معاملات ناقص، تکرار با کلید idempointent.
4. ارتباطات Comms → پشتیبانی: ذخیره کار می کنید ؟ ای تی ای.

ب) p99↑ API و 5xx پس از انتشار

1. Rollback (آبی-سبز/قناری → پایدار).
2. بررسی ضربه کش، عمق صف، نقاط ارائه دهنده پایگاه داده/بازی.
3. مقیاس موقت، محدود کردن ویژگی های سنگین از طریق پرچم های ویژگی.

ج) ارائه دهنده بازی در دسترس نیست

1. تغییر ترافیک به استودیو/بازی های موجود، نشان می دهد یک بنر وضعیت.
2. چک های مصنوعی را هر 30-60 ثانیه روشن کنید.
3. توافق در جبران/پاداش (با سیاست) - اضافه کردن به PIR.

د) نشت/PII مشکوک

1. جداسازی کامپوننت، لغو کلید/رمز، جمع آوری ورود (WORM).
2. ارتباطات حقوقی/تنظیم مقررات.
3. اقدامات پس از حادثه: چرخش مخفی، پوشش، دسترسی.

8) ارتباطات (داخلی/خارجی)

فرکانس به روز رسانی: SEV1 - هر 15-30 دقیقه، SEV2 - 30-60 دقیقه.

قالب وضعیت داخلی:
  • نقد و بررسی بازی از طریق PSP-X: The Rise of Timeouts
  • آسیب دیده: «TR/BR، ~ 18٪ از کاربران جریان».
  • وقتی شروع شد: «12:07 EET، SEV1.»
  • آنچه ما انجام می دهیم: «تغییر مسیر به PSP-Y، retrayes/rate cap enabled».
  • پاسخ: «در 20 دقیقه»
  • تماس با: «IM @ duty-im، TL @ oncall-pay».

وضعیت عمومی (صفحه/شبکه های اجتماعی) - به صورت مختصر، بدون PII و جزئیات غیر ضروری، با ETA و یک لینک برای به روز رسانی بیشتر.

9) جمع آوری و حسابرسی مصنوعات

جدول زمانی رویداد (دقت دقیقه)، نسخه های سرویس، پرچم های ویژگی، تغییرات پیکربندی.
تصاویر داشبورد، مسیرهای تقریبی (trace_id)، سیاهههای مربوط «قبل/در طول/پس از».
لينکها به بليط ها، روابط عمومي، نسخه ها، کتاب هاي فرار.
گزارش ارتباطات (چه زمانی/به/چه).
این همه به یک کارت حادثه اضافه می شود.

10) بسته شدن و PIR (بررسی پس از حادثه)

فرمت PIR (کوتاه):
  • خلاصه: چه اتفاقی افتاد، مقیاس، مدت زمان، SEV.
  • تاثیر: کاربران/مناطق، SLO/SLA، Fin. اثر.
  • جدول زمانی: در جزئیات، دقیقه.
  • علت ریشه ای: فنی + سازمانی (چرا قبلا کشف نشده است).
  • Detections & Defenses: چه چیزی کمک کرد/شکست خورد (هشدارها، synthetics، phicheflags).
  • موارد عملی: وظایف خاص، صاحبان، مهلت (و نحوه بررسی اثر).
  • درس های آموخته شده: آنچه ما در فرآیند/معماری/مشاهده پذیری تغییر می دهیم

قوانین: بدون اتهام، حداکثر حقایق، پیگیری اجباری پس از 2-4 هفته از چک کردن موارد تکمیل شده است.

11) معیارهای قابلیت اطمینان فرآیند

MTTD - میانگین زمان برای تشخیص

MTTA [...] تأیید) - قبل از تأیید در تماس.
MTTR [...] Restore) - تا زمانی که SLO بازسازی شود.
نرخ شکست تغییر -٪ از انتشار منجر به حوادث.
نرخ حادثه توسط SEV، توزیع توسط دامنه (پرداخت/بازی/Infra).
کیفیت هشدار: نسبت نویز/غلط، زمان عمل پس از هشدار.
Comm-SLA: انطباق با فرکانس به روز رسانی وضعیت.

12) ادغام با SLO و انتشار

گیتس در CD: ارتقاء قناری تنها با پروکسی SLO سبز (در دسترس بودن، p95، conv، TTW).
روش های انجماد: هنگام fast-burn/SEV1 - توقف انتشار قبل از PIR.
حاشیه نویسی خودکار در نمودارها: انتشار/پرچم/مهاجرت در داشبورد قابل مشاهده است.

13) تنظیم و انطباق

PII: پوشش/aliasing در سیاهههای مربوط/آهنگ، فروشگاه های حسابرسی WORM، کنترل دسترسی.
منطقه ای بودن: داده های کاربر را خارج از حوزه های مجاز قرار ندهید.
گزارش: نامه ها/اطلاعیه های رسمی به تنظیم کننده ها - قالب ها و روند تشدید.

14) یادگیری و آمادگی (روز بازی)

تمرینات سه ماهه: «افت PSP»، «ارائه دهنده بازی در دسترس نیست»، «افزایش P99»، «نشت کلیدی».
تایمر در MTTA/MTTR، یکپارچهسازی با سیستمعامل در ورزش.
به روز رسانی runabooks و مخاطبین، چک کردن دستورات ChatOps.

15) چک لیست آمادگی (قبل از حادثه)

1. قوانین SEV و ماتریس تشدید موافقت کردند.
2. اختصاص داده در تماس چرخش، IM/TL/COMMS/کاتب.
3. کتاب های اجرا برای سناریوهای کلیدی (پرداخت ها، بازی ها، پایگاه های داده، کش ها، صف ها).
4. کارت SLO و هشدار سوختگی، صفحه وضعیت.
5. ربات ChatOps: دستورات، خودکار زمینه، قالب های وضعیت.
6. قالب های PIR و کارت های حادثه.
7. به طور منظم روز بازی و تماس/تجدید نظر حقوق.
8. سیاست توقف و «دکمه قرمز» (بازگشت/کشتن سوئیچ).

16) ضد گلوله

هیچ IM تک وجود دارد، «جمعیت منجر» → هرج و مرج و تاخیر.
فقدان دروازه SLO → تشخیص دیر، هشدار پر سر و صدا.
انتشار در طول یک حادثه بدون توقف → سقوط آبشار.
سیاهههای مربوط و مسیرهای پیاده روی کافی نیست، هیچ مصنوعات → PIR ضعیف وجود دارد.
فرهنگ اتهام: اشتباهات پنهان، ترس از تشدید.
ارتباطات الهام بخش → از دست دادن اعتماد کسب و کار/کاربر.

17) قالب ها (کپی به ویکی شما)

A) کارت حادثه (YAML)

yaml id: INC-2025-11-005 title: PSP-X timeouts in TR/BR sev: SEV1 start_at: 2025-11-05T12:07:00+02:00 status: active impact: "Deposits via PSP-X failing for ~18% users (TR, BR)"
im: "@oncall-im"
tl: "@oncall-pay"
comms: "@oncall-comms"
scribe: "@oncall-scribe"
mitigations:
- "Reroute to PSP-Y"
- "Enable retries and raise timeouts"
next_update_in: "20m"
links:
grafana: "<dashboard-url>"
traces: "<tempo-link>"
logs: "<loki-query>"
runbook: "payments/psp_timeout"

B) به روز رسانی وضعیت (داخلی)


[12:25] SEV1 PSP-X timeouts — TR/BR
Impact: ~18% deposits affected. SLO fast-burn active.
Mitigation: Rerouting to PSP-Y; retries enabled; release freeze.
ETA next update: 12:45 EET
IM: @oncall-im      TL: @oncall-pay

C) PIR (کلاه)


Summary, Impact, Timeline, Root Cause (tech+org),
Detections/Defenses, Action Items (owner+due), Lessons Learned.

خلاصه

مدیریت حادثه قوی ساختار + نظم و انضباط است: نقش های از پیش توافق شده، دروازه های SLO، کتاب های کار شده، ارتباطات شفاف و PIR «بی ضرر». این حلقه MTTA/MTTR را کاهش می دهد، هزینه خرابی را کاهش می دهد، اعتماد کاربر را ایجاد می کند و به شما امکان می دهد جسورانه تر اما با خیال راحت آزاد کنید.

Contact

با ما در تماس باشید

برای هرگونه سؤال یا نیاز به پشتیبانی با ما ارتباط بگیرید.ما همیشه آماده کمک هستیم!

Telegram
@Gamble_GC
شروع یکپارچه‌سازی

ایمیل — اجباری است. تلگرام یا واتساپ — اختیاری.

نام شما اختیاری
ایمیل اختیاری
موضوع اختیاری
پیام اختیاری
Telegram اختیاری
@
اگر تلگرام را وارد کنید — علاوه بر ایمیل، در تلگرام هم پاسخ می‌دهیم.
WhatsApp اختیاری
فرمت: کد کشور و شماره (برای مثال، +98XXXXXXXXXX).

با فشردن این دکمه، با پردازش داده‌های خود موافقت می‌کنید.