స్టేటస్ పేజీ ఎలా నిర్మించాలి: కాంపోనెంట్లు, ఇన్సిడెంట్లు మరియు అప్టైమ్ తనిఖీలు
స్టేటస్ పేజీ మీ వినియోగదారులకు, ఒకే చోట, మీ సేవ పనిచేస్తోందో లేదో చెబుతుంది. దీనిని నిర్మించడానికి మీకు కాంపోనెంట్ల జాబితా కావాలి (వెబ్సైట్, API, చెల్లింపులు, ఇమెయిల్ డెలివరీ), ప్రతి దాని ప్రస్తుత స్థితి, సమయముద్రిత అప్డేట్లతో ఇన్సిడెంట్లు, గత ఇన్సిడెంట్ల చరిత్ర, మరియు ఐచ్ఛికంగా చందాలు — తనిఖీ చేయకుండానే ప్రజలకు సమస్యల గురించి తెలిసేలా. పేజీ కూడా సులభమే. ముఖ్యమైన నిర్ణయం ఏమిటంటే అది ఎక్కడ నడుస్తుంది: మీ యాప్ డౌన్ అయినప్పుడు కూడా స్టేటస్ పేజీ పైకి ఉండాలి, కాబట్టి అది నివేదించే దానితో హోస్టింగ్, డేటాబేస్ లేదా డిప్లాయ్ పైప్లైన్ను పంచుకోకూడదు.
స్టేటస్ పేజీ దేనికోసం
ఏదైనా విరిగినప్పుడు, వినియోగదారులకు మూడు విషయాలు తెలియాలి: ఇది నాకొక్కడికేనా, మీకు తెలుసా, మరియు ఎప్పుడు సరిచేస్తారు. స్టేటస్ పేజీ సపోర్ట్ టికెట్ల వరద లేకుండానే ఈ మూడింటికీ సమాధానం ఇస్తుంది. కాలక్రమేణా ఇది నమ్మకాన్ని కూడా పెంచుతుంది, ఎందుకంటే నిజాయితీ గల వివరణలతో కనిపించే ఇన్సిడెంట్ చరిత్ర మీరు సమస్యలను ఎలా నిర్వహిస్తారో చూపుతుంది.
ఇది ఛేంజ్లాగ్ కాదు. కొత్త ఫీచర్లు ఛేంజ్లాగ్ పేజీలో ఉంటాయి; అంతరాయాలు మరియు నిర్వహణ ఇక్కడ ఉంటాయి.
పేజీకి ఏమి కావాలి
డేటా
| టేబుల్ | ముఖ్య ఫీల్డ్లు |
|---|---|
| Components | పేరు (Web app, API, Payments, Email delivery), వివరణ, ప్రస్తుత స్థితి, ప్రదర్శన క్రమం, గ్రూప్ |
| Incidents | శీర్షిక, ప్రభావం (minor, major, critical), స్థితి (Investigating, Identified, Monitoring, Resolved), ప్రభావితమైన కాంపోనెంట్లు, ప్రారంభ సమయం, పరిష్కార సమయం |
| Incident updates | ఇన్సిడెంట్, సందేశం, ఆ సమయంలో స్థితి, పోస్ట్ చేసిన సమయం, పోస్ట్ చేసిన వ్యక్తి |
| Maintenance windows | శీర్షిక, ప్రభావిత కాంపోనెంట్లు, షెడ్యూల్ చేసిన ప్రారంభ మరియు ముగింపు సమయం, సందేశం |
| Subscribers | ఇమెయిల్, నిర్ధారించబడిందా (అవును/కాదు), వారు పట్టించుకునే కాంపోనెంట్లు, అన్సబ్స్క్రైబ్ టోకెన్ |
కాంపోనెంట్ స్థితులు సాధారణంగా ఒక చిన్న స్థిర జాబితా: Operational, Degraded performance, Partial outage, Major outage, Under maintenance.
పేజీలు
- పబ్లిక్ స్టేటస్ పేజీ: మొత్తం బ్యానర్ (“అన్ని సిస్టమ్లు పనిచేస్తున్నాయి” లేదా ప్రస్తుతం ఉన్న చెత్త స్థితి), ప్రతి కాంపోనెంట్ దాని స్థితితో, ఏదైనా క్రియాశీల ఇన్సిడెంట్ దాని అప్డేట్లతో, రాబోయే నిర్వహణ, మరియు మీకు తనిఖీ డేటా ఉంటే 90-రోజుల చరిత్ర స్ట్రిప్.
- ఇన్సిడెంట్ పేజీ: ఒక ఇన్సిడెంట్ అప్డేట్ల పూర్తి టైమ్లైన్, దానికంటూ ప్రత్యేక URL తో, తద్వారా సపోర్ట్ దానికి లింక్ ఇవ్వగలదు.
- చరిత్ర: గత ఇన్సిడెంట్లు నెలల వారీగా.
- చందా: నిర్ధారణతో ఇమెయిల్ సైన్-అప్ మరియు కాంపోనెంట్ వారీ ప్రాధాన్యతలు.
- అడ్మిన్: ఇన్సిడెంట్ సృష్టించడం, అప్డేట్లు పోస్ట్ చేయడం, కాంపోనెంట్ స్థితులు మార్చడం, నిర్వహణ షెడ్యూల్ చేయడం.
అనుమతులు
ప్రచురించిన ప్రతిదాన్ని ప్రజలు చూడగలరు. మీ బృందం మాత్రమే పోస్ట్ చేయగలదు. వీలైతే అడ్మిన్ లాగిన్ను మీ ప్రధాన యాప్ లాగిన్ వ్యవస్థ నుండి వేరుగా ఉంచండి, తద్వారా మీ ఆథ్ ప్రొవైడర్ అంతరాయం మిమ్మల్ని మీ స్వంత స్టేటస్ పేజీ నుండి లాక్ చేయదు.
కీలక నిర్ణయం: దానిని స్వతంత్రంగా ఉంచండి
ఇంట్లో తయారు చేసిన చాలా స్టేటస్ పేజీలు ఇక్కడే విఫలమవుతాయి. మీ స్టేటస్ పేజీ:
- మీ యాప్ ఉన్న అదే సర్వర్ లేదా హోస్టింగ్ ఖాతాలో ఉంటే,
- అదే డేటాబేస్ నుండి చదువుతుంటే,
- అదే డొమైన్ సెటప్ లేదా CDN కాన్ఫిగరేషన్ వెనుక ఉంటే,
- లేదా అదే పైప్లైన్ ద్వారా డిప్లాయ్ అవుతుంటే,
చాలా అంతరాయాలు అది కూడా ఆగిపోయేలా చేస్తాయి — సరిగ్గా ప్రజలకు అది అవసరమైనప్పుడే. ఆచరణాత్మక చర్యలు:
- వేరు హోస్టింగ్. ప్రధాన యాప్ నుండి వేరే ప్రాజెక్ట్ లేదా ప్రొవైడర్.
- దానికంటూ సబ్డొమైన్, ఉదాహరణకు
status.example.com, DNSలో విడిగా సూచించబడినది. డొమైన్లు మరియు DNS ఎలా పనిచేస్తాయి చూడండి. - దానికంటూ డేటా. ఇన్సిడెంట్లు స్టేటస్ పేజీ యొక్క స్వంత స్టోరేజ్లో ఉంటాయి, మీ యాప్ డేటాబేస్లో కాదు.
- స్టాటిక్ ఫాల్బ్యాక్. కొన్ని బృందాలు పబ్లిక్ పేజీని స్టాటిక్గా ఉంచి, ప్రతి అప్డేట్కు మళ్లీ బిల్డ్ చేస్తాయి, తద్వారా విరగడానికి దాదాపు ఏమీ ఉండదు.
చేతితో అప్డేట్లు లేదా ఆటోమేటెడ్ తనిఖీలు
చేతితో (ఇక్కడే ప్రారంభించండి)
మీ బృందం అడ్మిన్ పేజీ నుండి ఇన్సిడెంట్లను పోస్ట్ చేస్తుంది మరియు కాంపోనెంట్ స్థితులను చేతితో మారుస్తుంది. చాలా స్టేటస్ పేజీలు ఆచరణలో ఇలాగే పనిచేస్తాయి, ఎందుకంటే మనిషి తీర్పు (“కొన్ని కార్డ్ రకాలకు చెల్లింపులు నెమ్మదిగా ఉన్నాయి”) ఆటోమేటెడ్ ఎరుపు చుక్క కంటే ఎక్కువ ఉపయోగకరం.
సమస్యలను త్వరగా తెలుసుకోవడానికి, మీ యాప్ను ప్రతి నిమిషం లేదా అంతకంటే ఎక్కువ తరచుగా తనిఖీ చేసి, ఇమెయిల్, SMS లేదా చాట్ ద్వారా హెచ్చరించే బయటి అప్టైమ్ మానిటర్ వాడండి. చాలా మానిటరింగ్ సేవలకు ఉచిత శ్రేణులు ఉంటాయి.
ఆటోమేటెడ్
ఆటోమేషన్ అంటే ఏదో ఒకటి ప్రతి కాంపోనెంట్ను క్రమం తప్పకుండా తనిఖీ చేసి, దాని స్థితిని అప్డేట్ చేస్తుంది. దీనికి షెడ్యూల్పై నడిచే కోడ్ కావాలి, మీ ప్రధాన యాప్ మౌలిక సదుపాయాల బయట నుండి. రెండు సాధారణ పద్ధతులు:
- ఒక బయటి మానిటర్ మీ స్టేటస్ పేజీని webhook ద్వారా పిలుస్తుంది తనిఖీ విఫలమైనప్పుడు లేదా కోలుకున్నప్పుడు, మరియు స్టేటస్ పేజీ కాంపోనెంట్ను అప్డేట్ చేస్తుంది.
- స్టేటస్ పేజీ యొక్క స్వంత హోస్టింగ్లో ఒక షెడ్యూల్ చేసిన జాబ్ ప్రతి కాంపోనెంట్ను పింగ్ చేసి ఫలితాన్ని నమోదు చేస్తుంది. దీనిపై ఆధారపడే ముందు మీ హోస్టింగ్ షెడ్యూల్ చేసిన పనులను ఎలా నిర్వహిస్తుందో తనిఖీ చేయండి; బ్యాక్గ్రౌండ్ జాబ్లను నడపడం గైడ్ ఎంపికలను వివరిస్తుంది.
ఆటోమేటెడ్ మార్పులు నెమ్మది నెట్వర్క్లో ఊగిసలాడవచ్చు (పైకి, కిందకి, మళ్లీ పైకి). స్టేటస్ మార్చడానికి ముందు రెండు లేదా మూడు విఫల తనిఖీలు కావాలని పెట్టండి, మరియు పెద్ద అంతరాయాన్ని ప్రకటించే ముందు ఒక మనిషి నిర్ధారించాలి.
ఇన్సిడెంట్ అప్డేట్లు రాయడం
- త్వరగా పోస్ట్ చేయండి. “లాగిన్లు విఫలమవుతున్న నివేదికలను పరిశీలిస్తున్నాం” అని నిమిషాల్లో చెప్పడం, గంట తర్వాత పర్ఫెక్ట్ సందేశం కంటే మేలు.
- వినియోగదారులు గమనించేది చెప్పండి, లోపలెక్కడ విరిగింది కాదు.
- తదుపరి అప్డేట్ సమయాన్ని వాగ్దానం చేయండి, మరియు దానిని నిలబెట్టుకోండి.
- పరిష్కారం అయిన తర్వాత చిన్న సారాంశంతో ముగించండి: ఏమి జరిగింది, ఎంతసేపు, మీరు ఏమి మారుస్తున్నారు.
పనిచేసే మొదటి ప్రాంప్ట్
మా యాప్ Parcelio కోసం ఒక స్వతంత్ర స్టేటస్ పేజీ నిర్మించండి, దానిని status.parcelio.com లో విడిగా హోస్ట్ చేయాలి. కాంపోనెంట్లు: Website, Tracking API, Notifications, Payments; ప్రతిదానికి స్థితి Operational, Degraded performance, Partial outage, Major outage లేదా Under maintenance. పబ్లిక్ పేజీ ప్రస్తుతం ఉన్న చెత్త స్థితిని ఉపయోగించి మొత్తం బ్యానర్ చూపిస్తుంది, ప్రతి కాంపోనెంట్ దాని స్థితితో, ఏవైనా క్రియాశీల ఇన్సిడెంట్లు సమయముద్రిత అప్డేట్లతో (కొత్తవి ముందు), రాబోయే నిర్వహణ, మరియు నెలల వారీగా గత ఇన్సిడెంట్ల జాబితా. ప్రతి ఇన్సిడెంట్కు దానికంటూ పేజీ ఉంటుంది. పాస్వర్డ్-రక్షిత అడ్మిన్ పేజీ జోడించండి, ఇన్సిడెంట్ సృష్టించడానికి (శీర్షిక, ప్రభావం, ప్రభావిత కాంపోనెంట్లు), అప్డేట్లు పోస్ట్ చేయడానికి (సందేశం మరియు స్థితి: Investigating, Identified, Monitoring, Resolved), కాంపోనెంట్ స్థితులు మార్చడానికి మరియు నిర్వహణ షెడ్యూల్ చేయడానికి. బయటి మానిటర్ నుండి కాంపోనెంట్ పేరు మరియు up/down ను స్వీకరించే POST /api/check-result ఎండ్పాయింట్ జోడించండి, ఒక రహస్య టోకెన్తో రక్షించబడి, వరుసగా మూడు down ల తర్వాత మాత్రమే కాంపోనెంట్ను Degraded గా గుర్తించాలి. ప్రతిదీ ఈ యాప్ యొక్క స్వంత డేటాబేస్లో నిల్వ చేయండి. సరళమైన, ప్రశాంతమైన డిజైన్, ఫోన్లలో త్వరగా లోడ్ అవ్వాలి.
నిర్మాణ దశలు
- పబ్లిక్ పేజీ మరియు చేతితో ఇన్సిడెంట్ల కోసం అడ్మిన్. ఇది మాత్రమే ఇప్పటికే పనిచేసే స్టేటస్ పేజీ.
- దానిని విడిగా హోస్ట్ చేయండి మరియు ఒక సబ్డొమైన్ను దానికి సూచించండి.
- ఇన్సిడెంట్ పేజీలు మరియు చరిత్ర.
- నిర్వహణ విండోలు.
- చందాలు. డబుల్ ఆప్ట్-ఇన్ ఇమెయిల్ సైన్-అప్ మరియు కొత్త ఇన్సిడెంట్లు మరియు అప్డేట్లపై నోటిఫికేషన్లు. ఇమెయిల్కు ఒక ప్రొవైడర్ కావాలి; మీ యాప్ నుండి ఇమెయిల్ ఎలా పంపాలి చూడండి.
- మానిటర్ webhook, మీకు ఆటోమేటెడ్ స్టేటస్ మార్పులు కావాలంటే.
- డ్రిల్ నడపండి. ఒక నకిలీ ఇన్సిడెంట్ సృష్టించండి, అప్డేట్లు పోస్ట్ చేయండి, పరిష్కరించండి, ఇమెయిళ్ళు తనిఖీ చేయండి, ఆపై దానిని తొలగించండి.
సాధారణ తప్పులు
- యాప్తో కలిపి హోస్ట్ చేయడం. అత్యంత సాధారణమైనది మరియు అత్యంత తీవ్రమైనది.
- ఎల్లప్పుడూ “అన్ని సిస్టమ్లు పనిచేస్తున్నాయి” అని చెప్పే పేజీ. సమస్యలను ఎప్పుడూ చూపకపోతే, వినియోగదారులు నమ్మకం కోల్పోతారు.
- సమయాలు లేదా టైమ్ జోన్ లేకపోవడం. ఎల్లప్పుడూ జోన్తో సమయాలను చూపండి.
- అడ్మిన్ పేజీ కోసం మీ ప్రధాన యాప్ లాగిన్పై ఆధారపడటం.
- అప్డేట్ల మధ్య మౌనం. “మార్పు లేదు, ఇంకా పనిచేస్తున్నాం” అనేది చెల్లుబాటు అయ్యే అప్డేట్.
- ఊగిసలాడే ఆటోమేటెడ్ స్టేటస్లు. మార్పుకు ముందు పదేపదే విఫలతలు కావాలి.
స్టేటస్ పేజీ సేవ మెరుగైన ఎంపిక అయినప్పుడు
హోస్ట్ చేసిన స్టేటస్ పేజీ సేవలు స్వతంత్రత సమస్య చుట్టూ నిర్మించబడ్డాయి: అవి వేరే మౌలిక సదుపాయాలపై నడుస్తాయి, ఇమెయిల్ మరియు SMS ద్వారా చందాదారుల నోటిఫికేషన్లను నిర్వహిస్తాయి, మరియు తరచుగా మానిటరింగ్ మరియు ఇన్సిడెంట్ సాధనాలతో ఇంటిగ్రేషన్లను కలిగి ఉంటాయి. అప్టైమ్ మీరు కస్టమర్లకు అమ్మే దానిలో భాగమైతే, లేదా ఇన్సిడెంట్లను నివేదించాల్సిన ఒప్పంద బాధ్యతలు ఉంటే, ప్రత్యేక సేవ సాధారణంగా విలువైనది. చాలావాటికి చిన్న బృందాలకు ఉచిత లేదా తక్కువ ధర శ్రేణులు ఉంటాయి, కాబట్టి నిర్మించే ముందు తనిఖీ చేయండి.
డిజైన్ మరియు పదాల పూర్తి నియంత్రణ కావాలనుకున్నప్పుడు, మీ అవసరాలు సరళంగా ఉన్నప్పుడు (కొన్ని కాంపోనెంట్లు, చేతితో అప్డేట్లు), లేదా ఇతరుల కోసం మీరు నిర్మిస్తున్న ఉత్పత్తిలో స్టేటస్ పేజీ భాగమైనప్పుడు సొంతంగా నిర్మించండి.
Mythex తో నిర్మించడం
Mythex లో మీరు స్టేటస్ పేజీని మీ ప్రధాన యాప్ నుండి వేరుగా, దానికంటూ ప్రాజెక్ట్గా నిర్మించవచ్చు — దీనివల్ల దానికి విడి హోస్టింగ్ మరియు సొంత డేటాబేస్ ఉంటాయి. చాట్లో వివరించండి, ప్రత్యక్ష ప్రివ్యూలో తనిఖీ చేయండి, ఆపై ప్రచురించి status.yourdomain.com వంటి సబ్డొమైన్ను కనెక్ట్ చేయండి (కస్టమ్ డొమైన్లు Pro లో ఉన్నాయి). గుర్తుంచుకోండి, ప్రచురించిన Mythex యాప్లు మరియు వాటి డేటాబేస్లు నిష్క్రియంగా ఉన్నప్పుడు నిద్రపోతాయి మరియు తదుపరి సందర్శనలో మేల్కొంటాయి, కాబట్టి నిశ్శబ్ద కాలం తర్వాత మొదటి లోడ్ నెమ్మదిగా ఉండవచ్చు; సరళమైన, తేలికైన పేజీ సహాయపడుతుంది.
Mythex షెడ్యూల్ చేసిన జాబ్లను డాక్యుమెంట్ చేయలేదు, కాబట్టి ఆటోమేటెడ్ తనిఖీల కోసం మీ స్టేటస్ పేజీలోని webhook ఎండ్పాయింట్ను పిలిచే బయటి అప్టైమ్ మానిటర్ వాడండి (webhooks రెసిపీ చూడండి). చందాదారులకు ఇమెయిల్ హెచ్చరికలు మీ స్వంత ప్రొవైడర్ ద్వారా వెళ్తాయి, కీ ప్రాజెక్ట్ సీక్రెట్గా నిల్వ చేయబడుతుంది (ఇమెయిల్ పంపే రెసిపీ).
ప్రశ్నలు
స్టేటస్ పేజీ అంటే ఏమిటి?
మీ సేవలోని ప్రతి భాగం పనిచేస్తుందో లేదో ఒకే చోట చూపించే పబ్లిక్ పేజీ. ప్రస్తుత మరియు గత ఇన్సిడెంట్లను సమయముద్రిత అప్డేట్లతో జాబితా చేస్తుంది, మరియు తరచుగా ప్రజలు నోటిఫికేషన్లకు చందా చేసుకోవచ్చు. అంతరాయాల సమయంలో సపోర్ట్ భారాన్ని తగ్గిస్తుంది.
నా స్టేటస్ పేజీని నా యాప్తో కలిపి హోస్ట్ చేయాలా?
వద్దు. అది మీ యాప్తో హోస్టింగ్, డొమైన్ సెటప్ లేదా డేటాబేస్ను పంచుకుంటే, అది నివేదించాల్సిన అదే అంతరాయంలోనే ఆగిపోవచ్చు. విడిగా హోస్ట్ చేయండి, ఉదాహరణకు status.yourdomain.com వంటి సబ్డొమైన్లో.
ఆటోమేటెడ్ మానిటరింగ్ అవసరమా?
అది సహాయపడుతుంది, కానీ ప్రారంభించడానికి తప్పనిసరి కాదు. చాలా చిన్న బృందాలు ఇన్సిడెంట్లను చేతితో పోస్ట్ చేసి, తమను హెచ్చరించడానికి బయటి అప్టైమ్ మానిటర్ వాడతాయి. ఆటోమేటెడ్ స్టేటస్ మార్పులు తర్వాత రావచ్చు.
ఇన్సిడెంట్ అప్డేట్లో ఏమి ఉండాలి?
ఏది ప్రభావితమైంది, వినియోగదారులకు ఏమి కనిపిస్తుంది, మీరు ఏమి చేస్తున్నారు, మరియు తదుపరి అప్డేట్ ఎప్పుడు వస్తుంది. “ఇంకా పరిశీలిస్తున్నాం” అని అయినా సరే, చిన్నగా, సాదాగా మరియు సమయముద్రితంగా ఉండాలి.