ඔබගේ ඇප්ලිකේෂන් ECS කන්ටේනර් 1,000ක් තුළ ක්රියාත්මක වේ. ඒ අතර එකක් අහඹු ලෙස බිඳ වැටුණා නම්, ඒ කන්ටේනර් එක, ගැටලුවේ හේතුව කුමක්ද කියලා තේරෙන්න කෙලින්ම බොහෝ ලොග් ගොනු ගවේෂණය කළ යුතුයි.
මෙවැනි අවස්ථාවලදී ඔබට අවශ්යය වන්නේ බිලියන ගණනක් ලොග් ලයින් අතරින් අවශ්ය ටයිම්ස්ටෑම්පය හෝ දෝෂ කේතය සොයා ගැනීමට ඉක්මනින් සහ විශ්වාසදායකව ක්රියා කරන පද්ධතියක්.
AWS සේවාවන් භාවිතා කරමින් මෙම ගැටලුවට “Gold Standard” විසඳුමක් ඉදිරිපත් කරයි. ප්රධාන 흐රාව මෙසේය: ECS → CloudWatch Logs → Lambda (Producer) → SQS → Lambda (Consumer) → OpenSearch. මේ පියවර වලින් එක් එක් සේවාව කුමක් කරන්නේ කියලා පහතින් බලන්න.
පියවර 1 – ECS සිට CloudWatch දක්වා (ලොග් සැකසීම)
ECS ටාස්ක් ඩෙෆිනිෂන් එකේ logConfiguration එකක් එක්කරන්න. කේතයක් ලියන්න අවශ්ය නැතිව, JSON විකල්පයෙන් log driver එක “awslogs” ලෙස, ලොග් ග්රූප්, රීජන්, ප්රිෆික්ස් සකස් කරන්න.
පියවර 2 – CloudWatch → Lambda (Producer) (ට්රිගර්)
CloudWatch Logs හි Subscription Filter එකක් සකස් කරලා Lambda එකට දත්ත යවන්න. එම දත්ත Base64 + GZIP ආකාරයෙන් එනවා; Lambda එකට එය decode කර decompress කරලා ලොග් ඒවල් SQS queue එකට පනින්න.
පියවර 3 – Lambda (Producer) → SQS (ප්රොඩියුසර)
ඩිකොඩ් කරපු ලොග් එක JSON ස්ට්රින්ග් වශයෙන් SQS තැපෑලක් ලෙස යවන්න. මෙහි timestamp, message, logGroup, container_id වැනි ප්රධාන වස්තු ඇතුළත් කරන්න.
පියවර 4 – SQS → Lambda (Consumer) (බෆර්)
SQS එකේ තැපෑලන් 10ක් හෝ 5 මිනිත්තු කාලයක් ගතවූ පසු Lambda 2 ක්රියාත්මක වේ. මෙයින් OpenSearch වෙත බච්ච් ලෙස ලොග් ලිවීමේ වේගය වැඩිවෙයි, පිරිවැයත් අඩුයි.
පියවර 5 – Lambda (Consumer) → OpenSearch (අවසානය)
Lambda 2, SQS තැපෑලේ “body” එක OpenSearch endpoint එකට HTTP POST කරයි. OpenSearch හි index එකට ලොග් එකක් දත්ත වශයෙන් ඇතුළත් කරයි.
ශ්රී ලංකාවට ඇති වැදගත්කම
- ඩිවෙලපර්ස් – ලොග් විශ්ලේෂණය සරල කර, දෝෂ හඳුනා ගැනීමේ වේගය වැඩි කරයි.
- ව්යාපාර – SQS සහ Lambda භාවිතයෙන් පද්ධතියේ විශ්වාසනීයතාවය වැඩිවෙයි; OpenSearch down වුනාම දත්ත 14 දිනයක් තෙක් SQS තුළ රැඳේ.
- ඉගෙනුම් ආකාරය – CloudWatch, Lambda, OpenSearch වැනි AWS සේවාවන් ප්රායෝගිකව අත්හදා බැලීමට අවස්ථාව ලබා දේ, එය තාක්ෂණික කුසලතා වර්ධනයට හොඳ අවස්ථාවකි.
මෙම ආකෘතිය ඔබේ පද්ධතියේ ලොග් කළමනාකරණය, දෝෂ පරිහරණය, හා පරිණාමය ඉතාමත් කාර්යක්ෂම කරයි. දැන් ඔබේ AWS පරිසරයේ මෙම පියවර අනුගමනය කරලා “Observability” අත්හදා බලන්න.