Cloudflare Workers භාවිතා කරමින් තමන්ගේම Worker කණ්ඩායමක් නිරීක්ෂණය කරන workers‑monitor නම් ව්යාපෘතියක්, සාර්ථකව ක්රියාත්මක වුණා. එය පැය 1කට වරක් Cloudflare GraphQL Analytics API වෙතින් මට්ටම් ගෙන, තීරණාත්මක සීමා පරීක්ෂා කර, Claude Haiku AI එකට සංකේත‑විරුද්ධ‑ශබ්ද තීරණය ලබා දෙයි. Haiku “ඇත්ත” කියා පවසන විට Telegram මගින් ඇලට් එකක් යවයි. නමුත් මෙය නිවැරදිව ක්රියාත්මක වුවත්, දෙකක් වෙනම දෝෂයන් හෙළි වුණා.
දෝෂ 1 – Maintenance Window එකේ ‘fail‑open’ හිස් තැන
Worker එකට නියමිත නඩත්තු කාලයක් POST කරලා එම කාලය තුළ Telegram ඇලට් අහෝසි කරන විශේෂාංගයක් තිබුණා. එහි කේතයේ අදහස “වලංගු නොවන දත්ත එළවන්නේ විවෘත (null) ලෙස, සැබෑ සිදුවීමක් නිහඬ නොවිය යුතුයි” යනුවෙන් තිබුණා. නමුත් KV (Key‑Value) ගබඩාවේ env.STATE.get() කියවීම try‑catch බ්ලොක් එකට ඇතුළත් නොවීම නිසා, KV පද්ධතියේ අවලංගුතාවයක් (outage) සිදුවුවහොත් එම excepción එක අල්ලා නොගෙන, readMaintenanceWindow ෆංක්ෂන් එකෙන් ඉවත් වීමෙන් පසු, පැය පුරා සම්පූර්ණ run() ක්රියාකාරිත්වය නවතා දුන්නා. එම නිසා එක පැයට පුරා fleet එකේ කිසිදු දත්තයක් ලැබුණේ නැත, ඇලට් එකක්ද නොවීය.
දෝෂ 2 – Cron monitor එකේ නිරීක්ෂණය අස්ථානගත වීම
Sentry සමඟ එක්කළ පසු, කාල සටහන් (cron) එකේ සාර්ථක ක්රියාත්මක වීමේ “check‑in” එක Sentry Monitors පුවරුවේ දර්ශනය විය නොහැකි වුණා. එය නිසා, Worker එකේ අභ්යන්තර දෝෂයක් සිදුවුවත්, එය 24‑පැය තිස්සේ නිශ්ශබ්දව පවතිනවා. ඒ නිසා, සත්යයම “cron monitor” එකක් නොව, Sentry විසින් ස්වයංක්රීයව සාදන “Error Monitor” එකක් පමණක් තිබුණා.
මෙම ගැටළු විසඳීමට, සෑම handler එකක්ම Sentry.withSentry() වලින් වැසූ අතර, catch බ්ලොක් තුළ Sentry.captureException() භාවිතා කරලා දෝෂ රෙකෝඩ් කිරීම සක්රිය කරා. තවත් Sentry.withMonitor() එක run() ක්රියාකාරිත්වයට ඇතුළත් කරලා, cron එක අත්හිටුවීම් වහාම දැනගත හැකිවුවා. දැන් පැයපතා heartbeat එක Telegram මගින් යවමින්, අවශ්ය විට Sentry Dashboard එකෙන් තත්කාලික වාර්තා පෙන්වයි.
ශ්රී ලංකාවට ඇති වැදගත්කම
ශ්රී ලංකාවේ බොහෝ සංවර්ධකයින්, තරුණ AI‑ඉන්ජිනියරින්, සහ ව්යාපාරිකයින් Serverless පරිසරයන් භාවිතා කරති. මේ වගේ නිරීක්ෂණ පද්ධතියක් නිවැරදිව සැලසුම් කරගැනීම, පහත වාසි ලබා දෙයි:
- දෝෂ හඳුනාගැනීමේ නිරවද්යතාවය: KV හෝ API අස්ථාවරතාවයන් සත්කාරකව හඳුනාගෙන, සේවාවන් අකාරයෙන් අත්හිටුවීම වැලැක්වීම.
- AI සමඟ සමාන්යීකරණය: Claude Haiku වැනි AI භාවිතයෙන් සිදුවන අනවශ්ය ඇලට් ගණන අඩු කර, කණ්ඩායම් කාර්යභාරය කාර්යක්ෂම කරයි.
- Sentry වැනි observability මෙවලම්: සිදුවන දෝෂ රියල්‑ටයිම් දත්ත ලබාගෙන, ඉක්මනින් පිළිතුරු සැපයීමට හැකියාව.
- Telegram ඇලට්: දේශීය සංවර්ධකයින්ට රියල්‑ටයිම් තොරතුරු ලබාදෙමින්, ක්රියාකාරකම් පාලනය පහසු කරයි.
ඉතින්, මේ වගේ ව්යාපෘති ශ්රී ලංකාවේ තාක්ෂණික පරිසරය වඩා ශක්තිමත් කර, නව නිර්මාණයන්ට පදනමක් සපයයි.
අවසන් වශයෙන්, Cloudflare Workers, Sentry, AI API වැනි නවීන තාක්ෂණයන් නිවැරදිව ඒකාබද්ධ කරගැනීම, අනාගතයේ දෝෂ‑රහිත, කාර්යක්ෂම සේවා සැපයීමට මූලික පියවර වේ. ඔබත් මේ අත්දැකීම් අනුගමනය කර, ඔබේ පද්ධතියේ විශ්වාසනීයතාවය වැඩිදියුණු කරගන්න.