কিছু মানুষ ব্যবহার করছেন ELMAH পরিবর্তে log4net করুন। এটি কি আরও ভাল করে তোলে?
ওভারফ্লো প্রশ্ন স্ট্যাকের উত্তরে আমি ELMAH সম্পর্কে জানতে পেরে আমি সি # তে লগ ইন কীভাবে করব?
কিছু মানুষ ব্যবহার করছেন ELMAH পরিবর্তে log4net করুন। এটি কি আরও ভাল করে তোলে?
ওভারফ্লো প্রশ্ন স্ট্যাকের উত্তরে আমি ELMAH সম্পর্কে জানতে পেরে আমি সি # তে লগ ইন কীভাবে করব?
উত্তর:
ELMAH আপনার ওয়েব অ্যাপ্লিকেশনগুলির জন্য ত্রুটিগুলি এবং ব্যতিক্রমগুলি লক্ষ্য করার উদ্দেশ্যে কাজ করে এবং আপনাকে অনেকগুলি বিভিন্ন প্রক্রিয়া (এসকিউএল, আরএসএস, টুইটার, ফাইল, ইমেল ইত্যাদি) এর মাধ্যমে সহজেই সেই ব্যতিক্রমগুলি লগ করতে বা দেখার অনুমতি দেয়। আপনার যদি ELMAH হ্যান্ডলিংয়ের কোনও অন্তর্নির্মিত ব্যতিক্রম না থাকে তবে সম্ভবত আপনি ওয়েব অ্যাপ্লিকেশন পরিবেশে ব্যতিক্রম হ্যান্ডলিংয়ের ক্ষেত্রে যা খুঁজছেন তা পাবেন।
লগ 4 নেট ব্যতিক্রম লগিংয়ের জন্যও ব্যবহার করা যেতে পারে, তবে আপনার ওয়েব অ্যাপ্লিকেশনটিতে প্লাগ ইন করতে আপনার নিজের হ্যান্ডলারগুলি রোল করার প্রয়োজন হতে পারে। লগ 4 নেট যদি ELMAH জুড়ে আসে তবে লগ 4 নেট একটি সাধারণ উদ্দেশ্য লগিং ফ্রেমওয়ার্ক হিসাবে আপনাকে অন্য ধরণের তথ্য লগিং করতে হবে। লগ 4 নেট প্রায় কোনও। নেট অ্যাপ্লিকেশনটিতেও ব্যবহার করা যেতে পারে।
লগ 4 নেট আপনার অ্যাপ্লিকেশন (ওয়েব, কনসোল, ডেল, ইত্যাদি) এর মধ্যে ব্যবহারের উদ্দেশ্যে একটি এপিআই সহ একটি সাধারণ উদ্দেশ্য লগিং ফ্রেমওয়ার্ক।
logger.Debug("Some low level debug message...");
logger.Info("Some basic info");
logger.Warn("Some business logic problem, but not critical");
logger.Error("An unexpected error");
ELMAH একটি ওয়েব অ্যাপ্লিকেশনটিতে ব্যতিক্রম লগ করার জন্য বিশেষত একটি আপত্তিজনক আইআইএস প্লাগইন । আপনি আপনার অ্যাপ্লিকেশনের মধ্যে ELMAH এর কোনও রেফারেন্স দেখতে পাবেন না, এটির এমন কোনও API নেই যা আপনার সাথে ইন্টারঅ্যাক্ট করে। এটি আচরণে বল্টু করার জন্য মডিউল এবং হ্যান্ডলার আইআইএস এক্সটেনশন পয়েন্টগুলি ব্যবহার করে। এছাড়াও এটির একটি ওয়েব ফ্রন্ট-এন্ড রয়েছে যা আপনার ওয়েব অ্যাপ্লিকেশনটিতে ঘটেছিল ত্রুটিগুলি দেখার জন্য। লগ 4 নেট এর ফ্রন্ট-এন্ড নেই, কেবলমাত্র বিভিন্ন ধরণের লগ সিঙ্ক (অ্যাপেন্ডারস) যা লগ ফাইল, সিসলগ সার্ভার, একটি ডাটাবেস ইত্যাদির মতো জিনিসগুলিতে আপনার লগ বার্তা প্রেরণ করতে পারে can
মূল পার্থক্য হ'ল ELMAH আনহ্যান্ডেল অ্যাপ্লিকেশন ব্যতিক্রমগুলি লগ করে; লগ 4 নেট আপনি লগ করতে যাই বলুন তা লগ করে। ল্যান্ডহ্যান্ডেল ব্যতিক্রমগুলি লগ করতে আপনি লগ 4 নেট কনফিগার করতে পারেন, তবে ELMAH বাক্সের বাইরে প্রচুর দরকারী তথ্যের সন্ধান করে।
ELMAH একটি HTTP মডিউল তৈরি করে কাজ করে যা ত্রুটি ইভেন্টগুলিতে হুক করে এবং তারপরে লগিং করে। এটি সহজেই খারাপ নকশার সাহায্যে নষ্ট এবং ভেঙে যেতে পারে। লগ 4 নেট আরও বাড়তি কাজের প্রয়োজন হতে পারে তবে আপনি যদি একটি এওপি কাঠামো ব্যবহার করেন এবং এটি আপনার শ্রেণি বা এমনকি সমাবেশে প্রয়োগ করেন তবে আপনি খুব অল্প কোড এবং প্রচেষ্টা দিয়ে আরও ভাল ব্যতিক্রম লগিং অর্জন করতে পারেন।
ELMAH কেবল তখনই কাজ করে যদি এর মধ্যে HTTPContext অ্যাক্সেস থাকে যা ডাব্লুসিএফ পরিষেবাগুলিতে অর্জন করা কঠিন হতে পারে। সুতরাং আপনি ডব্লুসিএফ-তে অন্য কোনও লগার ব্যবহার করেই শেষ করবেন। কেন না কেবলমাত্র একটি সমাধান যা আরও সার্বজনীন।
ELMAH বিশেষভাবে ওয়েব অ্যাপ্লিকেশনের জন্য ব্যবহার করা হয় যখন log4net উভয় ওয়েব এবং উইন্ডোজ অ্যাপ্লিকেশন ব্যবহার করা হয়। ELMAH এর একটি ওয়েব অ্যাপ্লিকেশনটিতে লগ 4 নেট এর চেয়ে আরও অনেক সুবিধা রয়েছে।