GH GambleHub

نظارت بر زمان و ضربان قلب

1) چرا شما به آن نیاز دارید

تشخیص زود هنگام قطع برق در محیط و داخل (لبه ↔ هسته).
تایید در دسترس بودن کاربر (نه فقط «غلاف زنده»).
SLA/SLO گزارش قراردادی و تعهدات قانونی.
نظارت بر فرآیندهای پس زمینه (cron، ETL، کبودی پرداخت) از طریق ضربان قلب.

روش شناسی: سیگنال های طلایی (تاخیر/ترافیک/خطاها/اشباع)، RED، پیوند به SLO و بودجه اشتباه.

2) انواع چک (مصنوعی)

ICMP: دسترسی شبکه/IP عمومی.
TCP: پورت زنده است/دست دادن (به عنوان مثال 443/5432).
TLS: اعتبار/مدت/زنجیره ای از گواهینامه ها.
HTTP (S): کد پاسخ، تاخیر، هدر ها، زیرمجموعه های کلیدی در بدن.
DNS: وضوح، TTL، NXDOMAIN/SERVFAIL.
مرورگر بدون سر (مسیر کاربر): ورود → عمل → خروج.
پروب های سفارشی: مجوز پرداخت در PSP sandbox، مصنوعی کسب و کار داخلی (شبیه سازی سپرده).

نکات: بررسی کنید که هر دو نقطه انتهایی لبه و خصوصی (از داخل VPC/K8s) دامنه های مختلف خطر هستند.

3) معماری نظارت بر زمان

عوامل محاکمه بر اساس منطقه (حداقل 3 نقطه جغرافیایی).
صادر کننده جعبه سیاه برای HTTP/TCP/TLS/DNS.

مصنوعی توسط مسیر (مراحل متوالی) به طور جداگانه ؛ اسکریپت های فروشگاه

Prometheus/Mimir/Thanos: معیارهای جمع آوری، قانون SLO/هشدار.
Alertmanager/پیجر: P1/P2 مسیریابی، تشدید.
صفحه وضعیت: به روز رسانی شفاف برای کسب و کار/مشتریان.
سیاهههای مربوط/آثار: drilldown توسط 'ردیابی _ id '/همبستگی.

4) نکات بهداشتی: طراحی

/ healz (liveness) - «این روند زنده است».
/ readyz (آمادگی) - «آماده برای دریافت ترافیک» (وابستگی با آستانه).
/ startupz - «مقداردهی اولیه».
/ check - سلامت کسب و کار پیشرفته (چک آسان پایگاه داده/کش با وقفه و قطع کننده مدار).
سلامت معنایی: کد 200 تنها زمانی که وابستگی های بحرانی کاربردی هستند ؛ تخریب → 503.

قوانین: اتمام وقت ≤ 2-3 ثانیه, محدود زیر چک, هیچ PII در پاسخ, کش قطعات سنگین.

5) ضربان قلب برای کار و کارگران

مدل سوئیچ مرد مرده: اگر تیک به موقع نرسید، هشدار دهید.
استفاده: کارهای cron/ETL/صورتحساب، چک های پرداخت خارج از زنجیره، کارگران پس زمینه.

روش ها:
  • Push-heartbeat HTTP: job when finished does 'POST/heartbeat/< job>'.
  • Metrics-pull: نمایش «last _ success _ timestamp» و هشدار توسط «قدیمی تر از N دقیقه».
  • Watchdog: سیگنال ثابت از عامل ؛ از دست رفته - هشدار «شکستن نظارت».

6) نمونه های پیکربندی

6. 1 Blackbox-exporter (HTTP + TLS + DNS)

yaml modules:
http_2xx:
prober: http http:
method: GET preferred_ip_protocol: "ip4"
fail_if_not_ssl: true valid_http_versions: ["HTTP/1. 1","HTTP/2"]
tls_config:
insecure_skip_verify: false headers:
User-Agent: "uptime-probe"
body: ""
ip_protocol_fallback: false

tls_cert:
prober: tcp tcp:
query_response: []
tls: true tls_config:
insecure_skip_verify: false

dns:
prober: dns dns:
query_name: "api. example. com"
valid_rcodes: ["NOERROR"]
preferred_ip_protocol: "ip4"

6. 2 پرومتئوس: اهداف و جابجایی

yaml scrape_configs:
- job_name: 'blackbox-http'
metrics_path: /probe params:
module: [http_2xx]
static_configs:
- targets:
- https://api. example. com/healthz
- https://pay. example. com/readyz relabel_configs:
- source_labels: [__address__]
target_label: __param_target
- target_label: __address__
replacement: blackbox-exporter:9115
- source_labels: [__param_target]
target_label: instance

6. 3 معیارهای شغلی ضربان قلب (صادر کننده Prometheus)

متریک را افشا کنید:

job_last_success_timestamp_seconds{job="settlement"} 1. 730000e+09
هشدار:
promql
(time() - job_last_success_timestamp_seconds{job="settlement"}) > 900

6. 4 نگهبان (سوئیچ مرد مرده)

در Alertmanager، مسیر هشدار «Watchdog» (همیشه شلیک) را فعال کنید - اگر هشدار نمی آید، نظارت شکسته می شود.

7) نمونه PromQL برای آپ تایم

در دسترس بودن HTTP (0/1):
promql probe_success{job="blackbox-http"} == 1
تاخیر p95 توسط نمونه:
promql histogram_quantile(0. 95, sum by (le, instance) (rate(probe_http_duration_seconds_bucket[5m])))
TLS منقضی می شود <7 روز:
promql
(min_over_time(probe_ssl_earliest_cert_expiry[5m]) - time()) < 7243600
خطاهای DNS:
promql rate(probe_dns_rcode{rcode!="NOERROR"}[5m]) > 0
SLI آپ تایم (نورد 28d):
promql sum_over_time((probe_success==1)[28d]) / (28246060)

8) هشدار: آستانه و ضد سر و صدا

Quorum چند منطقه ای: اگر مناطق ≥2 یک قطره را ببینند، باعث می شود.
چند پنجره: 1-5 دقیقه (کانال سریع) + 30-60 دقیقه (روند ثابت).
حساسیت: debounce/برای: 2-5 دقیقه در برابر flapping.
همبستگی: هشدار uptime مرتبط با معیارهای چرم (لبه، DNS، WAF، مبدا).
پنجره های تعمیر و نگهداری: سرکوب هشدار توسط برچسب های «تعمیر و نگهداری = درست».

قانون مثال:
promql
≥2 regions simultaneously failed sum by (target) (max_over_time (probe _ success = = 0) [3m]))> = 2

9) چک های چند منطقه ای و چند فروشنده

حداقل 3 جغرافیا (EU/NA/APAC) و ASN های مختلف.
تکراری: نمونه های خود + ارائه دهنده آپتایم خارجی.
IPv4/IPv6، HTTP/2/3، پروفایل های مختلف CDN POP و WAF.

10) چک های امنیتی

اجازه می دهد محدوده IP نمونه در WAF/LB.
Rate-limits و captcha-bypass برای نقاط پایانی سلامت/پروب ها.
امضای عنوان (HMAC) برای سلامت خصوصی.
دامنه های جداگانه: نمونه های عمومی و خصوصی (/داخلی/بهداشت).
نسخه های داخلی/پیکربندی ها را به/healthz برنگرداند ؛ فقط دولتها.

11) SLO و گزارش آپ تایم

در دسترس بودن SLI: میزان موفقیت پروب HTTP 2xx/3xx.
مثال: ≥ 99 95٪ در 28 روز در اکثر مناطق.

بودجه اشتباه: «1 − SLO» → نسخه ها را مدیریت می کند

هشدار نرخ سوختگی: کانال سریع/آهسته برای نسبت شکست نمونه.

12) ضربان قلب برای پرداخت و مشاغل مهم

شغل «در اطراف پول» (انتقال، ثبت) - کنترل دو: ضربان قلب + شمارنده کسب و کار (چگونه بسیاری از سوابق پردازش).
هشدارها را با «سکوت» (بدون رویدادهای جدید> N دقیقه) و با تاخیر (عقب ماندن در زمان واقعی).

13) صفحات وضعیت

اجزای جداگانه (API ها، پرداخت ها، پشتیبان ها، CDN ها).
به روز رسانی خودکار از هشدارها، نظرات دستی از طریق نقش Comms.
سابقه حادثه، ارتباطات پس از مرگ، کار برنامه ریزی شده.

14) ادغام با فرآیند حادثه

هشدار SEV با قوانین quorum + مدت زمان.
خودکار ایجاد یک کارت حادثه، اتاق جنگ، تخصیص IC.
قالب های ارتباطی (داخلی/خارجی)، در صورت لزوم قانونی نگه دارید.
پس از تأیید: synthetics سبز ≥ X دقیقه به «حل».

15) عملکرد و هزینه

فرکانس نمونه برداری: بحرانی - هر 30-60 ثانیه ؛ ثانویه - 1-5 دقیقه.
ذخیره سازی: قوانین downsampling/ضبط برای پنجره های طولانی.
بودجه ارائه دهندگان خارجی: محدود کردن اسکریپت های پیشرفته مرورگر به برنامه.

16) چک لیست کیفیت

  • وجود دارد/healthz ،/readyz ،/startupz با معانی روشن است.
  • نمونه هایی از مناطق ≥3/ASN، IPv4/IPv6.
  • TLS/DNS T-30/T-7/T-1 روزها بررسی و هشدار می دهد.
  • ضربان قلب همه مشاغل مهم (و کسب و کار «سکوت»).
  • چند پنجره + حد نصاب، بدون flapping.
  • Drilldown: دکمه ها به سیاهههای مربوط/آهنگ/داشبورد.
  • صفحه وضعیت و قالب های ارتباطی.
  • مستندات SLO/معیارها و صاحبان.

17) برنامه پیاده سازی (3 تکرار)

1. هفته 1: پروب های جعبه سیاه HTTP/TLS/DNS توسط دامنه های بحرانی، صفحه وضعیت، هشدارهای اساسی.
2. هفته 2: چند منطقه ای، قوانین حد نصاب، کار ضربان قلب بالا، دیده بان.
3. هفته 3: اسکریپت بدون سر (ورود/سپرده)، گزارش SLO، ادغام با روند حادثه.

18) مینی سوالات متداول

چرا نمونه های خارجی بهتر از نمونه های داخلی هستند ؟

کاربران خارجی مسیر واقعی کاربر (DNS/CDN/WAF) را می بینند، کاربران داخلی وضعیت مبدا را می بینند. ما به هر دو نياز داريم

آیا باید PSP های پرداخت شده را بررسی کنم ؟

بله: مصنوعی در sandbox و نظارت بر صفحه وضعیت ؛ در صورت تخریب - مسیریابی هوشمند خودکار.

چگونه سر و صدا را کاهش دهیم ؟

Quorum، چند پنجره، برای تاخیر، سرکوب در تعمیر و نگهداری، آستانه SLO روشن و مالکیت.

مجموع

نظارت به موقع فقط پینگ نیست. این یک سیستم است: synthetics چند منطقه ای + نقاط پایانی سلامت با کیفیت بالا + کار ضربان قلب + SLO/هشدار + صفحات وضعیت. بررسی های استاندارد، کاهش سر و صدا، محافظت از نمونه ها و پیوند همه چیز به روند حادثه - به این ترتیب شما MTTR را کاهش می دهید و بودجه اشتباه را ذخیره می کنید.

Contact

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

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

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

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

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

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