Udhëzues

Si të ndërtoni një faqe statusi: komponentët, incidentet dhe kontrollet e disponueshmërisë

Një faqe statusi u tregon përdoruesve, në një vend, nëse shërbimi yt po funksionon. Për ta ndërtuar duhet një listë komponentësh (faqja e internetit, API, pagesat, dërgimi i email-eve), një status aktual për secilin, incidente me përditësime të vulosura me kohë, një histori të incidenteve të kaluara dhe, opsionalisht, abonime, që njerëzit të dinë për problemet pa kontrolluar vetë. Vetë faqja është e thjeshtë. Vendimi më i rëndësishëm është se ku funksionon: një faqe statusi duhet të mbetet aktive kur aplikacioni yt është jashtë funksionit, prandaj nuk duhet të ndajë strehimin, bazën e të dhënave ose pipeline-in e deploy-it me atë që raporton.

Për çfarë shërben një faqe statusi

Kur diçka prishet, përdoruesit duan të dinë tre gjëra: a jam vetëm unë me këtë problem, a jeni të vetëdijshëm, dhe kur do të rregullohet. Një faqe statusi u përgjigjet të tre pa një përmbytje kërkesash për mbështetje. Ajo ndërton gjithashtu besim me kalimin e kohës, sepse një histori e dukshme e incidenteve me raporte të sinqerta tregon si i trajton ti problemet.

Nuk është një ndryshim-regjistër. Veçoritë e reja shkojnë te një faqe ndryshimesh; ndërprerjet dhe mirëmbajtjet shkojnë këtu.

Çfarë i duhet faqes

Të dhënat

TabelaFushat kryesore
KomponentëtEmri (Aplikacioni web, API, Pagesat, Dërgimi i email-eve), përshkrimi, statusi aktual, renditja e shfaqjes, grupi
IncidentetTitulli, ndikimi (i vogël, i madh, kritik), statusi (Duke hetuar, I identifikuar, Duke monitoruar, I zgjidhur), komponentët e prekur, koha e fillimit, koha e zgjidhjes
Përditësimet e incidentitIncidenti, mesazhi, statusi në atë moment, koha e postimit, kush e postoi
Dritaret e mirëmbajtjesTitulli, komponentët e prekur, fillimi dhe mbarimi i planifikuar, mesazhi
AbonentëtEmail-i, i konfirmuar po/jo, komponentët që i interesojnë, token-i për çabonim

Statuset e komponentëve zakonisht janë një listë e shkurtër dhe fikse: Funksionon, Performancë e degraduar, Ndërprerje e pjesshme, Ndërprerje e madhe, Nën mirëmbajtje.

Faqet

  • Faqja publike e statusit: një banner i përgjithshëm ("Të gjitha sistemet funksionojnë" ose statusi më i keq aktual), çdo komponent me statusin e tij, çdo incident aktiv me përditësimet, mirëmbajtja e ardhshme, dhe një shirit historie 90-ditore nëse ke të dhëna kontrollesh.
  • Faqja e incidentit: kronologjia e plotë e përditësimeve për një incident, me URL-in e vet, që mbështetja të mund ta lidhë.
  • Historia: incidentet e kaluara sipas muajit.
  • Abonohu: regjistrim me email, me konfirmim dhe preferenca për secilin komponent.
  • Administrimi: krijo një incident, posto përditësime, ndrysho statuset e komponentëve, planifiko mirëmbajtje.

Lejet

Publiku sheh gjithçka që publikohet. Vetëm ekipi yt mund të postojë. Mbaje hyrjen e administratorit të ndarë nga sistemi i hyrjes së aplikacionit kryesor, nëse mundesh, që një ndërprerje e ofruesit tënd të autentikimit të mos të të mbyllë jashtë faqes sate të statusit.

Vendimi kyç: mbaje të pavarur

Aty dështojnë më shpesh faqet e statusit të ndërtuara vetë. Nëse faqja jote e statusit:

  • funksionon në të njëjtin server ose llogari strehimi me aplikacionin,
  • lexon nga e njëjta bazë të dhënash,
  • ndodhet pas të njëjtit konfigurim domain-i ose CDN,
  • ose deployohet nga i njëjti pipeline,

atëherë shumë ndërprerje do ta marrin edhe atë me vete, pikërisht kur njerëzit kanë më nevojë. Hapat praktikë:

  • Strehim i veçantë. Një projekt ose ofrues tjetër nga aplikacioni kryesor.
  • Nën-domain i vet, si status.example.com, i treguar veçmas në DNS. Shih si funksionojnë domain-et dhe DNS.
  • Të dhënat e veta. Incidentet jetojnë në depozitimin e faqes së statusit, jo në bazën e të dhënave të aplikacionit.
  • Një rezervë statike. Disa ekipe e bëjnë faqen publike statike dhe e rindërtojnë në çdo përditësim, kështu që nuk ka pothuajse asgjë që mund të prishet.

Përditësime manuale apo kontrolle automatike

Manuale (fillo këtu)

Ekipi yt poston incidentet dhe ndryshon statuset e komponentëve me dorë nga faqja e administratorit. Kështu funksionojnë shumica e faqeve të statusit në praktikë, sepse një gjykim njerëzor ("pagesat janë të ngadalta për disa lloje kartelash") është më i dobishëm se një pikë e kuqe automatike.

Për të ditur shpejt për problemet, përdor një monitor të jashtëm disponueshmërie që kontrollon aplikacionin tënd çdo minutë ose rreth asaj, dhe të njofton me email, SMS ose me një kanal bisede. Shumë shërbime monitorimi kanë nivele falas.

Automatike

Automatizimi do të thotë që diçka kontrollon rregullisht çdo komponent dhe përditëson statusin e tij. Kjo kërkon kod që funksionon sipas një orari, nga jashtë infrastrukturës kryesore të aplikacionit tënd. Dy modele të zakonshme:

  • Një monitor i jashtëm thërret faqen e statusit përmes një webhook kur një kontroll dështon ose rikthehet, dhe faqja e statusit përditëson komponentin.
  • Një punë e planifikuar në strehimin e vet të faqes së statusit i bën ping çdo komponenti dhe regjistron rezultatin. Kontrollo si e trajton strehimi yt detyrat e planifikuara para se të mbështetesh në këtë; udhëzuesi ynë për ekzekutimin e punëve në sfond shpjegon opsionet.

Ndryshimet automatike mund të lëkundin (lart, poshtë, lart) në një rrjet të ngadaltë. Kërko dy ose tre kontrolle të dështuara përpara se të ndryshosh një status, dhe lëre një njeri të konfirmojë përpara se të njoftohet një ndërprerje e madhe.

Si të shkruash përditësimet e incidentit

  • Posto shpejt. "Po hetojmë raportet për dështime në hyrje" brenda minutash është më mirë se një mesazh perfekt një orë më vonë.
  • Thuaj çfarë vërejnë përdoruesit, jo çfarë u prish brenda.
  • Premto kohën e përditësimit tjetër, dhe mbaje.
  • Mbylle me një përmbledhje të shkurtër pasi të zgjidhet: çfarë ndodhi, sa zgjati, çfarë po ndryshon.

Një kërkesë e parë që funksionon

Ndërto një faqe statusi të pavarur për aplikacionin tonë Parcelio, të strehuar veçmas te status.parcelio.com. Komponentët: Faqja e internetit, API e gjurmimit, Njoftimet, Pagesat, secili me statusin Funksionon, Performancë e degraduar, Ndërprerje e pjesshme, Ndërprerje e madhe ose Nën mirëmbajtje. Faqja publike shfaq një banner të përgjithshëm që përdor statusin më të keq aktual, çdo komponent me statusin e tij, incidentet aktive me përditësime të vulosura me kohë, më të rejat e para, mirëmbajtjen e ardhshme dhe një listë të incidenteve të kaluara sipas muajit. Çdo incident ka faqen e vet. Shto një faqe administratori të mbrojtur me fjalëkalim për të krijuar incidente (titull, ndikim, komponentët e prekur), për të postuar përditësime (mesazhi dhe statusi: Duke hetuar, I identifikuar, Duke monitoruar, I zgjidhur), për të ndryshuar statuset e komponentëve dhe për të planifikuar mirëmbajtje. Shto një endpoint POST /api/check-result që pranon emrin e një komponenti dhe up/down nga një monitor i jashtëm, i mbrojtur me një token sekret, dhe e shënon një komponent si Degraduar vetëm pas tre rënieve radhazi. Ruaj gjithçka në bazën e të dhënave të këtij aplikacioni. Dizajn i thjeshtë dhe i qetë që ngarkohet shpejt në telefona.

Hapat e ndërtimit

  1. Faqja publike dhe administrimi me incidente manuale. Vetëm kjo është tashmë një faqe statusi që funksionon.
  2. Strehoje veçmas dhe lidh një nën-domain me të.
  3. Faqet e incidenteve dhe historia.
  4. Dritaret e mirëmbajtjes.
  5. Abonimet. Regjistrim me email me konfirmim të dyfishtë dhe njoftime për incidentet e reja dhe përditësimet. Email-i kërkon një ofrues; shih si të dërgosh email-e nga aplikacioni yt.
  6. Webhook monitori nëse dëshiron ndryshime automatike të statusit.
  7. Bëj një provë. Krijo një incident të rremë, posto përditësime, zgjidhe, kontrollo email-et, pastaj fshije.

Gabimet e zakonshme

  • Strehimi së bashku me aplikacionin. Gabimi më i shpeshtë dhe më i rëndë.
  • Një faqe që gjithmonë thotë "Të gjitha sistemet funksionojnë". Nëse nuk shfaq kurrë probleme, përdoruesit pushojnë së besuari.
  • Pa vula kohore ose zonë kohore. Shfaq gjithmonë orët me zonën.
  • Të mbështeteshesh në hyrjen e aplikacionit kryesor për faqen e administratorit.
  • Heshtje mes përditësimeve. "Nuk ka ndryshim, ende po punojmë" është një përditësim i vlefshëm.
  • Statuse automatike që lëkundin. Kërko dështime të përsëritura para se të ndryshosh një status.

Kur një shërbim i gatshëm faqeje statusi është zgjedhja më e mirë

Shërbimet e gatshme të faqeve të statusit janë ndërtuar rreth problemit të pavarësisë: funksionojnë në infrastrukturë të veçantë, trajtojnë njoftimet për abonentët me email dhe SMS, dhe shpesh përfshijnë monitorim dhe integrime me mjetet e incidenteve. Nëse disponueshmëria është pjesë e asaj për të cilën paguajnë klientët, ose ke detyrime kontraktuale për të raportuar incidentet, një shërbim i dedikuar zakonisht vlen. Shumë prej tyre kanë nivele falas ose me kosto të ulët për ekipe të vogla, kështu që kontrollo përpara se të ndërtosh.

Ndërto vetë kur do kontroll të plotë mbi dizajnin dhe fjalët, kur nevojat e tua janë të thjeshta (një numër i vogël komponentësh, përditësime manuale), ose kur faqja e statusit është pjesë e një produkti që po ndërton për të tjerët.

Ndërtimi me Mythex

Në Mythex mund ta ndërtosh faqen e statusit si projekt të veçantë, të ndarë nga aplikacioni yt kryesor, që të ketë strehim të veçantë dhe bazën e vet të të dhënave. Përshkruaje në chat, kontrolloje në pamjen paraprake live, pastaj publikoje dhe lidh një nën-domain si status.yourdomain.com (domain-et e personalizuara janë në Pro). Mbaj parasysh se aplikacionet e publikuara në Mythex dhe bazat e tyre të të dhënave flejnë kur janë të pa përdorur dhe zgjohen në vizitën e radhës, kështu që ngarkimi i parë pas një periudhe të qetë mund të jetë më i ngadaltë; një faqe e thjeshtë dhe e lehtë ndihmon.

Mythex nuk dokumenton punë të planifikuara, kështu që për kontrollet automatike përdor një monitor të jashtëm disponueshmërie që thërret një endpoint webhook në faqen tënde të statusit (shih recetën e webhook-eve). Njoftimet me email për abonentët dërgohen përmes ofruesit tënd, me çelësin e ruajtur si sekret i projektit (recetë për dërgimin e email-eve).

Pyetje

Çfarë është një faqe statusi?

Një faqe publike që tregon nëse secila pjesë e shërbimit tënd po funksionon, liston incidentet aktuale dhe të kaluara me përditësime të vulosura me kohë, dhe shpesh i lejon njerëzit të abonohen për njoftime. Redukton ngarkesën e mbështetjes gjatë ndërprerjeve.

A duhet të strehohet faqja e statusit së bashku me aplikacionin?

Jo. Nëse ndan strehimin, konfigurimin e domain-it ose një bazë të dhënash me aplikacionin, mund të bjerë në të njëjtën ndërprerje që duhet të raportojë. Strehoje veçmas, në një nën-domain si status.yourdomain.com.

A më duhet monitorim automatik?

Ndihmon, por nuk kërkohet për të nisur. Shumë ekipe të vogla postojnë incidentet me dorë dhe përdorin një monitor të jashtëm të disponueshmërisë për t'u njoftuar vetë. Ndryshimet automatike të statusit mund të vijnë më vonë.

Çfarë duhet të thotë një përditësim i incidentit?

Çfarë preket, çfarë do të vërejnë përdoruesit, çfarë po bën ti dhe kur do të vijë përditësimi tjetër. Të shkurtër, të qartë dhe me kohë, edhe nëse përditësimi është vetëm 'ende po hetojmë'.

Mythex · Pricing · Ndërtoni çdo gjë me AI · Shablone faqesh dhe aplikacionesh · Mythex në krahasim · Fjalori i ndërtimit të aplikacioneve me AI · Mjete falas për ndërtimin e aplikacioneve me AI · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Slovenščina Soomaali Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)