Билдирүү туташкандан кийин жыйырма мүнөт өткөндө пайда болду. Анын астындагы эсептегич мурунку таңдан, же аккаунт акыркы жолу аутентификациялангандан бери иштеп жаткан, жана эскертүүдө кайсы экени айтылган эмес. Бул — симптом: сиздин алдыңыздагы туташууга эмес, башка нерсеге байланган эскертүү.

Оңдоо жакшыраак эскертүү эмес. Бул талап кайсы саатты көздөп жатканын чечүү, анан таймерди ошол саатта бар объектке байлоо.

Эмне иштеп кетти жана ал эмнени санап жатты

Үч ыктымал булак бирдей билдирүү берет. Календардык эреже белгиленген жергиликтүү убакытта иштейт жана туннелдер жөнүндө эч нерсе билбейт. Клиенттеги эсептегич кандайдыр бир туташуу турганда топтолот жана кайра туташууларга чыдайт. Шлюз саясаты сессияны сервер тарапта бүтүрөт жана адегенде эскертүү жөнөтөт.

Акыркы экөө гана сессия жөнүндө, жана алар да макул эмес. Клиент эсептегичи жергиликтүү процесс байкаганды өлчөйт; шлюз аутентификациялап, эсепке алганды өлчөйт. Уйку, тармактын өзгөрүшү же байкоочунун кайра иштетилиши аларды сааттарга ажыратышы мүмкүн, ошондуктан эскертүү менен мажбурланган мөөнөт бири-биринен алыстайт.

Бир талаптын артындагы үч саат

Чындап каалаган сүйлөмдү жазуудан баштаңыз. Шлюз бул туташууну бүтүрө электе эскертүү — бир күндүк туташкан убакыттан кийин эскерүү менен бирдей талап эмес. Бул сессия 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

Сөзгө эмес, убакыт белгилерине караңыз. Мурунку сессиянын башталуу убактысы менен келген билдирүү туура эмес объектке байланган, ал эми бир мөөнөткө эки жолу келген билдирүү жөнөтүлдү деген желеги эч качан сакталбаганын билдирет.

Уйку, кайра туташуу жана жоголгон жеткирүү

Уйку эки жөнөкөй долбоорду тең бузат. Монотондүү артка саноо машина уктап жатканда токтойт, дубал сааты боюнча мөөнөт кыймылдай берет, ал эми уйку учурунда иштеп кеткен таймер кеч же такыр жеткирилбейт. Талабыңызга кайсы жүрүм-турум керек экенин чечиңиз, анан машинаны чектен ашырып уктатыңыз да, ырастаңыз.

Жеткирүү да ошондой камкордукка татыктуу. Эгер билдирүүнү көрсөтүү мүмкүн болбосо, аны кезекке коюңуз жана акыркы жолу көрсөтүүдөн мурун максаттуу сессия дагы деле бар-жогун кайра текшериңиз; болбосо колдонуучуга мурун эле бүткөн туташуу жөнүндө эскертилет. Мажбурлап ажыратуу жана каттоо маалыматтарын жаңыртуу бул жолдон тышкары калат, анткени туташуунун тагдырын үнсүз өзгөрткөн эскертүү — билдирүү кийимин кийген саясат чечими.

Тектеш макалалар