ඔබේ Python යෙදුම සාර්ථකව නැවත ලෝඩ් කර ඇතැයි සිතූ පසු, මිනිත්තු කිහිපයකින් පාරිභෝගිකයෙකුගෙන් ගැටළුවක් වාර්තා වේ. ලොග් පත්රිකා පරීක්ෂා කළද, එය print() ප්රකාශන වලින් පිරී, වේලාවන් නැති, සන්දර්භයක් නොමැති අසමත් තත්ත්වයකි. එම නිසා වැරදි හඳුනා ගැනීමට නොහැකිවී, ඔබට නින්ද නොයන රාත්රියකට මුහුණ දීමට සිදුවේ. මේ ආකාරයේ ගැටලුව නිවැරදි ලොග් සැකසුම් නොකිරීමෙන් සිදුවේ.
නිෂ්පාදන පරිසරයට සුදුසු ලොග් පද්ධතියක් සකස් කිරීමේ මූලික කරුණු ලෙස, පළමුව module-level named logger භාවිතා කිරීමේ වැදගත්කම අතුරුදන් නොවේ. එක් එක් .py ගොනුවේ logger = logging.getLogger(__name__) ලෙස සකස් කළහොත්, ලොග් පණිවුඩය ගොනුවේ මාර්ගය සමඟ සම්බන්ධ වේ. මෙය ගෝලීය සැකසුම් බිඳ නොහැර, මොඩියුලය අනුව ලොග් මට්ටම පාලනය කිරීමට ඉඩ සලසයි.
නිෂ්පාදන පරිසරයේ dictConfig භාවිතයෙන් සැකසුම් එකතු කිරීම අනිවාර්ය වේ. console, rotating file, JSON formatter, external collector (Datadog, CloudWatch) වැනි හෑන්ඩ්ලර්, ෆෝමැටර්, මට්ටම් එකම කොඩ් එකේ පාරාමිතීන් ලෙස නිරූපණය කර, logging.config.dictConfig(LOG_CONFIG) මඟින් ක්රියාත්මක කරයි. JSON ලොග් ගොනු Elasticsearch, Loki වැනි පද්ධති වල පහසුවෙන් විශ්ලේෂණයට උපකාරී වේ. RotatingFileHandler මඟින් ගොනු විශාලත්වය පාලනය කර, ඩිස්ක් පිරීම වැළැක්වීමේ හැකියාව ලැබේ.
ලොග් මට්ටම් භාවිතයත් අත්යවශ්ය වේ.
- DEBUG – විස්තරාත්මක පරීක්ෂණ සඳහා, නිෂ්පාදනයේ අක්රියව තබා, අවශ්ය නම් අඩු කිරීම.
- INFO – සාමාන්ය සිදුවීම් (උදා: "User logged in").
- WARNING – ප්රතිකාර කළ හැකි අසමත් තත්ත්ව.
- ERROR – ක්රියාත්මක නොවන සේවා (DB query fail).
- CRITICAL – පද්ධතිය අස්ථාවර වීම.
ශ්රී ලංකාවට ඇති වැදගත්කම
මෙම ලොග් පද්ධතිය ශ්රී ලංකාවේ තාක්ෂණික පරිසරයට පහත ප්රතිලාභ ලබා දෙයි:
- ශ්රී ලංකා විශ්වවිද්යාල සිසුන්ට DevOps හා Observability ප්රායෝගික අත්දැකීම් ලබා ගත හැක.
- දේශීය සමාගම්වලට නිෂ්පාදන යෙදුම් අඩු වැරදි සමඟ නිකුත් කිරීමේ හැකියාව ලැබේ, මෙය සේවා නලාවට ආරක්ෂාවක් වේ.
- ලොග් දත්ත JSON ආකාරයෙන් CloudWatch, Datadog වැනි සේවා සමඟ සම්බන්ධ කර, වාණිජ විශ්ලේෂණය හා AI‑driven monitoring සදහා පදනමක් සපයයි.
නිෂ්පාදන පරිසරයේ හොඳ ලොග් සැකසුමක් සකස් කිරීමෙන්, දෝෂ හඳුනා ගැනීම වේගවත් වේ, පද්ධති විශ්වාසනීයතාවය වැඩිවෙයි, සහ ශ්රී ලංකාවේ තාක්ෂණික ආර්ථිකය තවත් ශක්තිමත් වේ.
අවසානයේ, Python logging නවීන උපදෙස් අනුගමනය කිරීම ඔබේ යෙදුමට අධි-දෘශ්යතාවයක්, කාර්යක්ෂමතාවයක්, සහ ආරක්ෂාවක් එක් කරයි. දැන්ම ඔබේ ප්රොජෙක්ට් එකට මෙම ක්රමයන් ඇතුළත් කර, නවීන DevOps කාර්ය සාධනයක් අත්විඳින්න.