লগ 4 নেট এবং ইএলএমএএইচের মধ্যে পার্থক্য কী?


108

কিছু মানুষ ব্যবহার করছেন ELMAH পরিবর্তে log4net করুন। এটি কি আরও ভাল করে তোলে?

ওভারফ্লো প্রশ্ন স্ট্যাকের উত্তরে আমি ELMAH সম্পর্কে জানতে পেরে আমি সি # তে লগ ইন কীভাবে করব?


সম্ভাব্য সদৃশ stackoverflow.com/questions/800009/...
empi

এখন। নেট কোর ছবিতে আছে, দৃশ্য কি বদলে যাবে? (২০১৩ সালের জানুয়ারির মতো এলটাহা। নেট কোর সমর্থন করে না)।
চৈতন্য গডকরি

উত্তর:


92

ELMAH আপনার ওয়েব অ্যাপ্লিকেশনগুলির জন্য ত্রুটিগুলি এবং ব্যতিক্রমগুলি লক্ষ্য করার উদ্দেশ্যে কাজ করে এবং আপনাকে অনেকগুলি বিভিন্ন প্রক্রিয়া (এসকিউএল, আরএসএস, টুইটার, ফাইল, ইমেল ইত্যাদি) এর মাধ্যমে সহজেই সেই ব্যতিক্রমগুলি লগ করতে বা দেখার অনুমতি দেয়। আপনার যদি ELMAH হ্যান্ডলিংয়ের কোনও অন্তর্নির্মিত ব্যতিক্রম না থাকে তবে সম্ভবত আপনি ওয়েব অ্যাপ্লিকেশন পরিবেশে ব্যতিক্রম হ্যান্ডলিংয়ের ক্ষেত্রে যা খুঁজছেন তা পাবেন।

লগ 4 নেট ব্যতিক্রম লগিংয়ের জন্যও ব্যবহার করা যেতে পারে, তবে আপনার ওয়েব অ্যাপ্লিকেশনটিতে প্লাগ ইন করতে আপনার নিজের হ্যান্ডলারগুলি রোল করার প্রয়োজন হতে পারে। লগ 4 নেট যদি ELMAH জুড়ে আসে তবে লগ 4 নেট একটি সাধারণ উদ্দেশ্য লগিং ফ্রেমওয়ার্ক হিসাবে আপনাকে অন্য ধরণের তথ্য লগিং করতে হবে। লগ 4 নেট প্রায় কোনও। নেট অ্যাপ্লিকেশনটিতেও ব্যবহার করা যেতে পারে।


3
লগ 4 নেট আপনাকে আরও নিয়ন্ত্রণ দেয়।
ডার্থভেদার

6
লগ 4 নেট এর জন্য এই ইলমাহ অ্যাপেন্ডারটি ব্যবহার করে আপনি উভয় বিশ্বের সেরাটি পেতে পারেন। শুধু কি তোমার মত (ডিবাগ, তথ্য, সতর্ক, ত্রুটি) log4net সঙ্গে কিন্তু ELMAH এ সঞ্চয় লগ ইন করুন nuget.org/packages/elmahappender_log4net_1.2.10
Sturla

111

লগ 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


23
একটি সংশোধন, এলামার একটি এপি রয়েছে যা বিকাশকারী তার সাথে যোগাযোগ করতে পারে। উদাহরণস্বরূপ, সিগন্যালিং এলমাহ অপির মাধ্যমে অর্জিত হয়।
এড ডিগাগন

8
আরেকটি সংশোধন? ELMAH একটি .NET HttpModule / HttpHandler। এটি কোনও আইআইএস প্লাগইন নয়। এআরআর একটি প্লাগইন। ELMAH না।
ম্যাক্সিমাম রৌলার

মন্তব্যে আপনার প্রতিক্রিয়া কী?
পিটার মর্টেনসেন

36

মূল পার্থক্য হ'ল ELMAH আনহ্যান্ডেল অ্যাপ্লিকেশন ব্যতিক্রমগুলি লগ করে; লগ 4 নেট আপনি লগ করতে যাই বলুন তা লগ করে। ল্যান্ডহ্যান্ডেল ব্যতিক্রমগুলি লগ করতে আপনি লগ 4 নেট কনফিগার করতে পারেন, তবে ELMAH বাক্সের বাইরে প্রচুর দরকারী তথ্যের সন্ধান করে।


1
আপনি সঠিকভাবে কনফিগার করলে ELMAH বাক্সের বাইরে প্রচুর দরকারী তথ্যের সন্ধান করে। একই পরিমাণ সময়ের জন্য, আপনি আরও নিয়ন্ত্রণের সাহায্যে লগ 4 নেট দিয়ে একই কাজ করতে পারেন।
ডার্থভেদার

ডার্থভেদার - আপনার কি একই নমুনা লগ 4 নেট কনফিগারেশন রয়েছে?
জেসনড

5
ELMAH কোনও কনফিগারেশন সহ বাক্সের বাইরে প্রচুর দরকারী তথ্যের সন্ধান করে। অতিরিক্ত কনফিগারেশনের সাহায্যে এটি অপরিশোধিত ব্যতিক্রম এবং পরিচালিত ব্যতিক্রম উভয়ই পরিচালনা করবে।
ট্রেভর ডি কোয়েকোয়েক

5

ELMAH একটি HTTP মডিউল তৈরি করে কাজ করে যা ত্রুটি ইভেন্টগুলিতে হুক করে এবং তারপরে লগিং করে। এটি সহজেই খারাপ নকশার সাহায্যে নষ্ট এবং ভেঙে যেতে পারে। লগ 4 নেট আরও বাড়তি কাজের প্রয়োজন হতে পারে তবে আপনি যদি একটি এওপি কাঠামো ব্যবহার করেন এবং এটি আপনার শ্রেণি বা এমনকি সমাবেশে প্রয়োগ করেন তবে আপনি খুব অল্প কোড এবং প্রচেষ্টা দিয়ে আরও ভাল ব্যতিক্রম লগিং অর্জন করতে পারেন।

ELMAH কেবল তখনই কাজ করে যদি এর মধ্যে HTTPContext অ্যাক্সেস থাকে যা ডাব্লুসিএফ পরিষেবাগুলিতে অর্জন করা কঠিন হতে পারে। সুতরাং আপনি ডব্লুসিএফ-তে অন্য কোনও লগার ব্যবহার করেই শেষ করবেন। কেন না কেবলমাত্র একটি সমাধান যা আরও সার্বজনীন।


4

ELMAH:

  • ওয়েব অ্যাপ্লিকেশন

Log4net:

  • ওয়েব অ্যাপ্লিকেশন

  • উইন্ডোজ অ্যাপ্লিকেশন

অতিরিক্ত রেফারেন্স: ref_1 ref_2


1

ELMAH বিশেষভাবে ওয়েব অ্যাপ্লিকেশনের জন্য ব্যবহার করা হয় যখন log4net উভয় ওয়েব এবং উইন্ডোজ অ্যাপ্লিকেশন ব্যবহার করা হয়। ELMAH এর একটি ওয়েব অ্যাপ্লিকেশনটিতে লগ 4 নেট এর চেয়ে আরও অনেক সুবিধা রয়েছে।


5
এই সুবিধা কি? আমি শীঘ্রই এএসপি ডট নেট করব, তাই আপনার শিক্ষিত মতামত জানতে চাই। আমি এখনও নেট থেকে প্রবীন, সুতরাং তারা তাদের সাইটে কী বলছে তা ব্যাখ্যা করা আমার পক্ষে শক্ত।
আইএডাপ্টার

আপনি কোনও কোড না লিখেও প্রতিবেদন দেখতে পারবেন। Elmah এখানে বৈশিষ্ট্যগুলি দেখুন code.google.com/p/elmah
Adeel

এলমা অত্যন্ত সীমাবদ্ধ এবং একমাত্র "অ্যাভ্যান্টেজ" প্রতিবেদনগুলি তবে এটি ওয়েব অ্যাপ্লিকেশনগুলিতে সীমাবদ্ধ যা এইচটিপিপেক্সটেক্সটে অ্যাক্সেস পেয়েছে। আপনি রিপোর্ট করতে পারেন যে অন্যান্য অনেক উত্স অন্যান্য লগার লগ ডেটা থাকতে পারে।
ডাস্টিন ডেভিস

0

ELMAH খুব শক্তিশালী, তবে এটি কী করে তা খুব নির্দিষ্ট। এটা তোলে, আপনার জন্য কাজ অনেক যদিও আমি বিশ্বাস করি Log4Net প্রয়োজন আপনি ত্রুটি পরিচালনা এবং লগিং না।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.