কেস স্টাডি
দীর্ঘ সময় চলার পরের আকস্মিক বন্ধকে handle লিক পর্যন্ত অনুসরণের কেস
গুছিয়ে সাজানো পর্যবেক্ষণ পয়েন্ট ও শক্তিশালী লগের মাধ্যমে, শুধুমাত্র এক মাস মেয়াদে দেখা দেওয়া একটি ত্রুটিকে handle লিক অনুসন্ধানে সংকুচিত করার প্রযুক্তিগত কেস পৃষ্ঠা।
কেসের সারসংক্ষেপ
এটি এমন একটি Windows অ্যাপ্লিকেশনের কেস, যা প্রায় এক মাস একটানা চলার পরেই হঠাৎ বন্ধ হয়ে যেত। আমরা প্রথমে পর্যবেক্ষণ পয়েন্টগুলি গুছিয়ে নিয়েছি এবং শেষ পর্যন্ত অনুসন্ধানকে একটি handle লিকে কেন্দ্রীভূত করেছি। মূল বিষয় শুধু কারণটি নিজে ছিল না; বরং কোন পর্যবেক্ষণগুলি আগে প্রস্তুত করা উচিত তা নির্ধারণ করা।
লক্ষণ
- অল্প কয়েক দিনে দেখা যায় না; বন্ধ হওয়ার ঘটনা কেবল দীর্ঘ সময় চলার পরেই ঘটে।
- এক্সসেপশনের ধরন দেখে সহজে সিদ্ধান্ত নেওয়া যায় না যে আদৌ কোনো লিক আছে কি না।
- এটি কেবল বাস্তব পরিবেশেই ঘটে, তাই ডেভেলপমেন্ট মেশিনে পুনরুৎপাদন কেন্দ্রীভূত করা জরুরি ছিল।
সীমাবদ্ধতা
- এক মাস ধরে পুনরুৎপাদনের জন্য অপেক্ষা করা বাস্তবসম্মত নয়।
- যেহেতু এতে ক্যামেরার পুনঃসংযোগ ও এরর পাথ অন্তর্ভুক্ত, স্বাভাবিক ক্ষেত্রের লগ যথেষ্ট নয়।
- কোন রিসোর্সগুলি বাড়ছে তা ধারাবাহিকভাবে পর্যবেক্ষণ করা প্রয়োজন ছিল।
আমরা কী পর্যবেক্ষণ করেছি
Handle Count,Private BytesএবংThread Count-এর হার্টবিট।- সেশন শুরু, পুনঃসংযোগ ও সমাপ্তির সীমানায় লগ।
create/open/registerএবংclose/dispose/unregister-এর মধ্যে জোড়ায় মেলানো লাইফসাইকেল লগ।
কীভাবে আমরা পৃথক করেছি
“দীর্ঘ সময় চলার পরে বন্ধ হওয়া”-কে সরাসরি অনুসরণ না করে, আমরা পুনঃসংযোগ ও টাইমআউট-সংলগ্ন এরর পাথগুলিতে পুনরুৎপাদন কেন্দ্রীভূত করেছি। ফলে দেখা গেল, মেমরি লিকের চেয়ে handle লিক সন্দেহ করাই ছিল সবচেয়ে জোরালো অনুমান, এবং আমরা পর্যবেক্ষণকে সেখানেই কেন্দ্রীভূত করতে পেরেছি।
কীভাবে আমরা উন্নতি করেছি
- শুধু বন্ধ হওয়ার মুহূর্তটি নয়, বৃদ্ধির প্রবণতা অনুসরণ করার জন্য মনিটর করা উপাদানের সংখ্যা বাড়িয়েছি।
- প্রতিটি রিসোর্স কোন দায়িত্ব খুলেছে এবং কোনটি বন্ধ করেছে তা সহজে অনুসরণের জন্য সীমানার লগগুলি গুছিয়েছি।
- অনুসন্ধানের ফলাফল এমনভাবে সাজিয়েছি, যাতে তা ভবিষ্যতের এরর পাথ টেস্ট ভিত্তির সঙ্গে যুক্ত করা যায়।
এই কেসের সঙ্গে সম্পর্কিত পরিষেবা
এই কেসটি একদিকে ত্রুটি অনুসন্ধান ও বিশ্লেষণ পরিষেবার সঙ্গে যুক্ত, যা কেবল দীর্ঘ সময় চলার পরে দেখা দেওয়া সমস্যাগুলি পৃথক করে; অন্যদিকে Windows অ্যাপ্লিকেশন ডেভেলপমেন্ট পরিষেবার সঙ্গেও, যা বাস্তবায়নের দিক থেকে লগ, পুনঃসংযোগ এবং অপারেশনাল পর্যবেক্ষণ গুছিয়ে তোলে।
আমাদের সাথে যোগাযোগ করুন
এই পৃষ্ঠাটি যদি আপনার পরিস্থিতির সাথে মিলে যায়, তাহলে বর্তমান প্রেক্ষাপট এবং আপনার কী ধরনের সহায়তা প্রয়োজন তা আমাদের জানান।