GH GambleHub

Alertler we habarnamalar: PagerDuty, Opsgenie

Alertler we habarnamalar: PagerDuty, Opsgenie

1) Näme üçin aýratyn alert platformasy

Maksat zerur adama/topara haýal etmän we degişli signal bermek we hadysany tanamak (ack), güýçlendirmek, aragatnaşyk, postmortem prosesini başlamak. PagerDuty we Opsgenie:
  • Hyzmatlar/bellikler/gurşaw boýunça ugrukdyryş.
  • Eskalasiýa we meýilnama (nobatlar, aýlaw-gün).
  • Wakalary aýyrmak/baglanyşdyrmak.
  • Sessiz penjireler (maintenance/freeze) we mýut düzgünleri.
  • Gözegçilik bilen integrasiýa, CI/CD we ChatOps.

Goldaw: SLO-bosagasy → alert → adam/awtomat → runbook → gaýdyş/fiks → postmortem.

2) Signallaryň modeli we agyrlygy (severity)

Maslahat berilýän şkala:
  • critical (page) - SLO-nyň bozulmagy/pul ýolunyň ýalňyşlygy (goýum/çykarmak), elýeterliligiň peselmegi, burn-rate.
  • high (page/bilet) - SLO deşiksiz düýpli pese gaçma.
  • medium (bilet) - kuwwat, bekiň zaýalanmagy, retraý.
  • low (maglumat) - tendensiýalar, duýduryşlar.

Düzgün: page diňe SLO ýa-da aç-açan işewürlik triggeri boýunça.

3) Marşrutlaşdyrmagyň arhitekturasy

1. Çeşme (Prometheus/Alertmanager, Grafana, bulut gözegçiligi, öz webhuklary).
2. Шлюз (PagerDuty/Opsgenie service/integration).
3. Syýasatlar: taglar boýunça ugurlar ('service', 'env', 'region'), severity, payload.
4. Eskalasiýa: nobat derejeleriniň yzygiderliligi (L1 → L2 → dolandyryjy).
5. Aragatnaşyklar: ChatOps kanallary, status sahypalary, poçtalar.

Esasy bellikleriň mysaly (standartlaşdyryň)

'service', 'env', 'region', 'version', 'runbook', 'release _ id', 'route', 'tenant' (B2B/multi-tenant bolsa).

4) On-call we eskalasiýa tertibi

Schedules: primary/secondary, роли (SRE, DBRE, Sec).
Rotations: gündiz/gijeki, gijeki-gün, dynç günleri.
Overrides: dynç alyş/kesel.
Eskalasiýa: ack-wagt 5-10 minut → indiki gatlak. Iş wagty boýunça - profil bölümine; daşarda - on-call platformasy.

Maslahat: gijelerine (az ýadawlyk) we gündizine has uzyn (kontekst bar) gysga eskalasiýa ädimlerini saklaň.

5) Alertmanager bilen integrasiýa (esasy pattern)

yaml receivers:
- name: pagerduty pagerduty_configs:
- routing_key: ${PAGERDUTY_ROUTING_KEY}
severity: '{{ if eq. Labels. severity "critical" }}critical{{ else }}error{{ end }}'
class: '{{.Labels. service }}'
component: '{{.Labels. env }}'
group: '{{.Labels. region }}'
description: '{{.Annotations. summary }}'
details:
service: '{{.Labels. service }}'
env: '{{.Labels. env }}'
runbook: '{{.Annotations. runbook }}'
release: '{{.Annotations. release }}'
route:
receiver: pagerduty group_by: ["service","env","region"]
group_wait: 30s group_interval: 5m repeat_interval: 2h

Opsgenie (webhook)

yaml receivers:
- name: opsgenie opsgenie_configs:
- api_key: ${OPSGENIE_API_KEY}
responders:
- name: "SRE Primary"
type: team priority: '{{ if eq. Labels. severity "critical" }}P1{{ else }}P3{{ end }}'
details:
trace: '{{.Labels. trace_id }}'
runbook: '{{.Annotations. runbook }}'

6) Ses, dedup we baglanyşyk

Açar: durnukly fingerprint (mysal üçin, service + route + code).
Topar: 'group _ by' 5xx kaskady onlarça sahypa döretmezligi üçin hyzmat/gurşaw boýunça.
Sazlar/ýuwaş penjireler: migrasiýa/goýberiş/ýük synaglary wagtynda.
"Api-gateway @prod" üçin eýýäm P1 hadysasy bar bolsa, golçur kärhanalaryňyzy basyp P2/P3.

Anti-pattern: SLO-a tassyklanan täsir etmezden CPU/Memory page.

7) Relizler we awto-hereketler bilen baglanyşyk

"PagerDuty/Opsgenie" kanareýa deplesinde SLO-geýtden alert alýarlar.
Alert: 'release _ id', 'image. tag ', paypline baglanyşygy we yzyna gaýtarmak ädiminiň runbook.

Düşündirişlerde baglanyşyk runbook mysaly


runbook: https://runbooks. company/rollback/api-gateway#canary

8) ChatOps we Aragatnaşyk

Slack/Teams-da waka kanalyny awto döretmek, bilete baglanyşyk.
Slash-команды: `ack`, `assign @user`, `status set`, `postmortem start`.
Status-sahypa: P1/P2 wagtynda awtomatiki täzelenme.

9) Wakanyň durmuş sikli (iň az)

1. Trigger (SLO/datçiklerden alert).
2. Page (primary on-call).
3. Ack (tassyklama, TTA).
4. Communicate (kanal/status).
5. Mitigate (rollback/feature-flag/izolýasiýa).
6. Resolve (TTR).
7. Postmortem (wagt, sebäpler, hereketler, sapaklar, meseleler eýesi).

Role-kit: IC (incident commander), Ops lead, Comms, Scribe.

10) Peýdaly meýdanlar pailoada (normalize)

json
{
"service": "payments-api",
"env": "prod",
"region": "eu-central-1",
"severity": "critical",
"event_class": "slo_burn",
"summary": "Withdraw 5xx > 0. 5% for 10m",
"runbook": "https://runbooks/payments/withdraw-5xx",
"release_id": "rel-2025-11-03-14-20",
"image": "ghcr. io/org/payments:1. 14. 2",
"trace_id": "8a4f0c2e9b1f42d7",
"annotations": { "canary": "25%" }
}

11) Signal çeşmeleriniň integrasiýasy

Prometheus/Alertmanager - SLO/RED-iň esasy çeşmesi.
Grafana Alerting - daşbordlar/iş metrikleri üçin has aňsat.
OpenTelemetry/SpanMetrics - marşrutlar boýunça latency/error.
K8s-wakalar - klaster hadysalary (control-plane, PDB düzgün bozmalar).
DB/Nobatlar - lag/locks/replication.
Programma webhuklary - domen signallary (PSP ýalňyşlygy, frodyň köpelmegi).

12) Syýasatlar we laýyklyk

RBAC syýasatlary, meýilnamalary, sazlamalary döretmek/üýtgetmek üçin.
Audit: statusyny kim ykrar etdi/belledi/üýtgetdi, taýmstempler.
PII-pailoadlarda minimalizasiýa (ulanyjynyň email/telefonynyň ýerine ID bileti).
DR-plan: PagerDuty/Opsgenie (fallback kanaly) elýeterli bolmasa näme edýäris?

13) Tejribe mysallary (PagerDuty vs Opsgenie)

MümkinçilikPagerDutyOpsgenie
Eskalasiýa/meýilnamaÝetişen, çeýeÝetişen, çeýe
Waka rollary/şablonlaryGüýçli Incident WorkflowsIncident Templates/Stakeholders
Awto kanallar/comsGowy integrasiýaÇuň Slack/MS Teams
Bahalar/ygtyýarnamalarKöplenç has gymmat, köp add-onAdatça başda arzan
Bellikleri ugrukdyrmakGüýçli (Service Directory)Güýçli (Routing Rules)
Iki platforma hem birmeňzeş ssenariýalaryň 95% -ini ýapýar; gymmaty, UX we yığını integrasiýasy boýunça saýlaň.

14) Ümsüm penjireler we aýazlar

Freeze: Diňe P1 goýup, meýilleşdirilen penjirelere jaň etmegi gadagan ediň.
Tag: 'env = stage', 'region = dr', 'service = batch'.
Wagtlaýyn mute: DB/ýüktestler göçende - aç-açan eýesi bilen.

15) Netijelilik metrikleri (alertler üçin SRE/DORA)

MTTA/MTTR (buýruklar/hyzmatlar/çalşyklar boýunça).
Runbook programmasynyň% -i (maksat ≥ 95%).
SLO boýunça page-alertleriň paýy (maksat ≥ 90%).
Ratio peýdaly/şowhunly (maksat ≥ 3:1).
% Awtomatiki kömek (web huk arkaly pause/rollback) - ösmek.
Burn-down postmortem action items 14/30 günüň içinde.

16) Anti-patternler

Ulanyja täsir etmezden "demir" (CPU, disk) arkaly page.
'group _ by' → "tupan" alertleriniň ýoklugy.
Sessiz penjireler ýok - neşirler hemme zady gyzyl reňkleýär.
'service/env/runbook' -siz pailoadlar ugrukdyrylyp/hereket edilip bilinmez.
Severity we düzgünleriň ýekeje şkalasy ýok (her çeşme özbaşdak).
Hiç kimiň bejermeýän "baky" duýduryşlary (alert-karz).

17) Giriş çek-sanawy (0-45 gün)

0-10 gün

Severity masştabyny utgaşdyrmak we bellikleri/düşündirişleri standartlaşdyrmak.
PagerDuty/Opsgenie-de hyzmatlary dörediň, schedules we esasy eskalasiýalary sazlaň.
Alertmanager/Grafana baglamak, 'group _ by' we baby goşmak.

11-25 gün

SLO-alertlerini (multi-window burn) giriziň, runbook baglanyşyklaryny goşuň.
ChatOps: Awtokanallar, ack/assign buýruklary.
Çykmak/göçmek üçin ýuwaş penjireleri açyň.

26-45 gün

Kanaryalar (webhuklar) üçin awto-pause/rollback goşuň.
MTTA/MTTR we allert-arassaçylyk hasabatlaryny girizmek (sesleri arassalamak).
action items postmortemini we gözegçiligini standartlaşdyrmak.

18) Taýýar snippetler

Grafana Alerting → PagerDuty (JSON body mapping)

json
{
"routing_key": "${PAGERDUTY_ROUTING_KEY}",
"event_action": "trigger",
"payload": {
"summary": "{{.RuleName }}: {{ index. Labels \"service\" }}",
"severity": "{{ if eq (index. Labels \"severity\") \"critical\" }}critical{{ else }}error{{ end }}",
"source": "grafana",
"component": "{{ index. Labels \"env\" }}",
"group": "{{ index. Labels \"region\" }}"
},
"links": [
{ "href": "{{.DashboardURL }}", "text": "Dashboard" },
{ "href": "{{ index. Labels \"runbook\" }}", "text": "Runbook" }
]
}

Alertden Webhook → Argo Rollouts pause

bash curl -X POST "$ARGO_API/rollouts/pause" \
-H "Authorization: Bearer $TOKEN" \
-d '{"name":"api-gateway","namespace":"prod"}'

Opsgenie - Routing Rule (psevdo)

yaml if:
tags: ["service:payments","env:prod"]
severity: ["P1","P2"]
then:
route_to: "SRE-Payments"
notify: ["Primary OnCall","Secondary"]

19) Netijenama

Alertleriň güýçli kontury - bu proses + düzgün-nyzam: SLO gönükdirilen stratifikasiýa, başarnykly marşrut we eskalasiýa, birmeňzeş bellikler we pailoadlar, asuda penjireler, ChatOps we awtomatiki hereketler (pause/rollback). Býudjet we UX üçin PagerDuty ýa-da Opsgenie saýlaň, ýöne şol bir ses, nobat we jogapkärçilik düzgünlerine eýeriň - şonda page seýrek, takyk we peýdaly bolar we wakalar gysga we dolandyrylýar.

Contact

Biziň bilen habarlaşyň

Islendik sorag ýa-da goldaw boýunça bize ýazyp bilersiňiz.Biz hemişe kömek etmäge taýýar.

Telegram
@Gamble_GC
Integrasiýany başlamak

Email — hökmany. Telegram ýa-da WhatsApp — islege görä.

Adyňyz obýýektiw däl / islege görä
Email obýýektiw däl / islege görä
Tema obýýektiw däl / islege görä
Habar obýýektiw däl / islege görä
Telegram obýýektiw däl / islege görä
@
Eger Telegram görkezen bolsaňyz — Email-den daşary şol ýerden hem jogap bereris.
WhatsApp obýýektiw däl / islege görä
Format: ýurduň kody we belgi (meselem, +993XXXXXXXX).

Düwmäni basmak bilen siz maglumatlaryňyzyň işlenmegine razylyk berýärsiňiz.