కనెక్ట్ అయిన ఇరవై నిమిషాల తర్వాత నోటీసు కనిపించింది. దాని కింది కౌంటర్ మునుపటి ఉదయం నుండి, లేదా ఖాతా చివరిగా ధృవీకరించిన సమయం నుండి నడుస్తోంది, మరియు హెచ్చరికలో ఏది అని ఏమీ చెప్పలేదు. అదే లక్షణం: మీ ముందున్న కనెక్షన్ కాకుండా వేరే దానితో కట్టబడిన రిమైండర్.

పరిష్కారం మెరుగైన హెచ్చరిక కాదు. అవసరం ఏ గడియారాన్ని సూచిస్తుందో నిర్ణయించి, తర్వాత ఆ గడియారంలో ఉన్న వస్తువుకు టైమర్‌ను కట్టడం.

ఏది మోగింది, ఏది లెక్కిస్తోంది

మూడు సంభావ్య మూలాలు ఒకే సందేశాన్ని ఇస్తాయి. క్యాలెండర్ నియమం స్థిర స్థానిక సమయంలో నడుస్తుంది మరియు సొరంగాల గురించి ఏమీ తెలియదు. క్లయింట్‌లోని కౌంటర్ ఏదైనా కనెక్షన్ ఉన్నంతసేపు పేరుకుపోతుంది మరియు తిరిగి కనెక్ట్ అవ్వడాన్ని తట్టుకుంటుంది. గేట్‌వే విధానం సెషన్‌ను సర్వర్ వైపు ముగిస్తుంది మరియు మొదట హెచ్చరిక పంపుతుంది.

చివరి రెండు మాత్రమే సెషన్ గురించి, అవి కూడా ఏకీభవించవు. క్లయింట్ కౌంటర్ స్థానిక ప్రక్రియ గమనించినదాన్ని కొలుస్తుంది; గేట్‌వే ధృవీకరించి లెక్కించినదాన్ని కొలుస్తుంది. నిద్ర, నెట్‌వర్క్ మార్పు లేదా పర్యవేక్షకుడి పునఃప్రారంభం రెండింటినీ గంటల దూరంలో వేరు చేయగలవు, అందుకే హెచ్చరిక మరియు బలవంతపు ముగింపు దూరం అవుతాయి.

ఒక అవసరం వెనుక మూడు గడియారాలు

మీకు నిజంగా కావలసిన వాక్యాన్ని రాసి ప్రారంభించండి. గేట్‌వే ఈ కనెక్షన్‌ను ముగించకముందే హెచ్చరించడం ఒక రోజు కనెక్ట్ అయిన సమయం తర్వాత గుర్తు చేయడంతో సమానమైన అవసరం కాదు. ఈ సెషన్ 23 గంటలుగా నడుస్తోందని నివేదించడంతో కూడా సమానం కాదు. ప్రతి వెర్షన్ వేరే సంఘటనను పేర్కొంటుంది, వేరే భాగం దానికి సమాధానం ఇవ్వాలి.

తర్వాత డేటా ఉందా చూడండి. స్థానిక ప్రారంభ సమయ ముద్ర సర్వర్‌పై ఆధారపడకుండా సెషన్ వయస్సును ఇస్తుంది. గేట్‌వే విధానం మిగిలిన ఆయుష్షును ఇస్తుంది, కానీ గేట్‌వే దాన్ని బయటపెట్టినప్పుడే. వినియోగ నివేదిక సంఘటన తర్వాత కాలాన్ని ఇస్తుంది, అది ముందస్తు నోటీసును నడపలేదు.

టైమర్‌ను సెషన్‌కు కట్టండి, ఖాతాకు కాదు

మొదట వస్తువును ఎంచుకోండి. ఒక ఖాతాలో అనేక పరికరాలు మరియు అనేక ఏకకాల సెషన్లు ఉండవచ్చు, కాబట్టి వినియోగదారు పేరుపై కట్టిన రిమైండర్ ఏ కనెక్షన్ వయస్సుకు చేరిందో చెప్పలేదు. దాన్ని ప్రొఫైల్ మరియు ఆ సక్రియతకు కట్టి, సక్రియత ముగిసినప్పుడు పెండింగ్ నోటీసును రద్దు చేయండి.

Evidence you can readWhat it establishesWhere it misleads
Connection state changes to activeA session started nowDoes not carry the gateway's own session identifier
Duration reported at disconnectTotal service time for that sessionArrives too late for any advance notice
Interim usage updateTime accounted up to that updateStaleness equals the update interval
Local timestamp taken at activationAge of your observationResets whenever the observer restarts

ఆ పట్టిక మీ స్వంత నోటిఫైయర్ కోసం ఒక ఒప్పందం, ఏ క్లయింట్ కాల్‌బ్యాక్ API వివరణ కాదు. ఇన్‌స్టాల్ చేసిన ఉత్పత్తి కనెక్షన్ స్థితి గురించి డాక్యుమెంట్ చేసేదే కట్టవలసిన మూలం; అది ధృవీకరణ సంఘటనలను మాత్రమే బయటపెట్టే చోట, దాన్ని గట్టిగా చెప్పి సెషన్‌ను ఊహించడం బదులు మొరటు ప్రవర్తనను అంగీకరించండి.

చిన్న పరిమితితో పరీక్షించండి

ఒక రోజు టైమర్‌ను ఒక రోజు నిరీక్షణతో ఎప్పుడూ డీబగ్ చేయకండి. కాన్ఫిగర్ చేయగల పరిమితిని జోడించి, దాన్ని ముప్పై సెకన్లకు పెట్టి, క్రమంగా నాలుగు మార్పులను నడపండి: కనెక్ట్, వేచి ఉండు, డిస్‌కనెక్ట్, తిరిగి కనెక్ట్. ప్రతి మార్పు సరిగ్గా ఒక స్థితి మార్పును ఇవ్వాలి, తిరిగి కనెక్ట్ అవ్వడం పాత గడువును వారసత్వంగా తీసుకోకుండా కొత్తది నిర్ణయించాలి.

# current connection state and profile identity
nmcli -f GENERAL.STATE,GENERAL.CONNECTION connection show work

# the notifier unit you wrote: does it restart the deadline or resume it?
journalctl --user -u vpn-timer.service --since "-5 min" -o cat

మాటలను కాదు, సమయ ముద్రలను చూడండి. మునుపటి సెషన్ ప్రారంభ సమయంతో వచ్చే నోటీసు తప్పు వస్తువును కట్టింది, ఒక గడువుకు రెండుసార్లు వచ్చే నోటీసు పంపిన జెండా ఎప్పుడూ సేవ్ కాలేదని అర్థం.

నిద్ర, తిరిగి కనెక్ట్ అవ్వడం మరియు కోల్పోయిన పంపిణీ

నిద్ర రెండు సరళ నమూనాలను బద్దలు కొడుతుంది. మోనోటోనిక్ కౌంట్‌డౌన్ యంత్రం నిద్రిస్తున్నప్పుడు ఆగిపోతుంది, గోడ గడియార గడువు కదులుతూనే ఉంటుంది, నిద్రలో మోగే టైమర్ ఆలస్యంగా లేదా అసలు చేరదు. మీ అవసరానికి ఏ ప్రవర్తన కావాలో నిర్ణయించి, పరిమితిని దాటి యంత్రాన్ని నిద్రపుచ్చి నిర్ధారించండి.

పంపిణీకి కూడా అదే శ్రద్ధ కావాలి. నోటీసు చూపించలేకపోతే దాన్ని క్యూలో పెట్టి, చివరగా చూపించే ముందు లక్ష్య సెషన్ ఇంకా ఉందా మళ్లీ తనిఖీ చేయండి; లేకపోతే ఇప్పటికే ముగిసిన కనెక్షన్ గురించి వినియోగదారుకు హెచ్చరిక అందుతుంది. బలవంతపు డిస్‌కనెక్ట్ మరియు ఆధారాల పునరుద్ధరణ ఈ మార్గం వెలుపల ఉంటాయి, ఎందుకంటే కనెక్షన్ విధిని నిశ్శబ్దంగా మార్చే రిమైండర్ అనేది నోటీసు దుస్తులు ధరించిన విధాన నిర్ణయం.

సంబంధిత వ్యాసాలు