এটির জন্য একটি তৃতীয় পক্ষের কাঠামো প্রয়োজন, নাম সেরিলগ , তবে তবে আমি এটি দেখতে পেয়েছি এমন কোনও জায়গায় আউটপুট পাওয়ার সাথে এটি একটি খুব মসৃণ অভিজ্ঞতা বলে খুঁজে পেয়েছি ।
আপনার প্রথমে সেরিলোগের ট্রেস সিঙ্কটি ইনস্টল করতে হবে । একবার ইনস্টল হয়ে গেলে আপনার এভাবে লগার সেট আপ করতে হবে:
Logger = new LoggerConfiguration()
.MinimumLevel.Verbose()
.WriteTo.Trace()
.CreateLogger();
(আপনি একটি ভিন্ন সর্বনিম্ন স্তর সেট করতে পারেন অথবা একটি কনফিগ মান বা স্বাভাবিক Serilog কার্যকারিতা কোন সেট করুন। এছাড়াও আপনি সেট করতে পারেন Trace
, configs ওভাররাইড করতে একটি নির্দিষ্ট স্তর এটির বা তবে আপনি এই কাজ করতে চান।)
তারপরে আপনি কেবল বার্তাটি সাধারণভাবে লগ করেন এবং সেগুলি আপনার আউটপুট উইন্ডোতে প্রদর্শিত হয়:
Logger.Information("Did stuff!");
এটি এত বড় চুক্তির মতো বলে মনে হচ্ছে না, তাই আমাকে আরও কিছু বাড়তি সুবিধা ব্যাখ্যা করতে দিন explain আমার জন্য সবচেয়ে বড়টি হ'ল আমি একই সাথে আউটপুট উইন্ডো এবং কনসোল উভয়টিতে লগ করতে পারি :
Logger = new LoggerConfiguration()
.MinimumLevel.Verbose()
.WriteTo.Trace()
.WriteTo.Console(standardErrorFromLevel: LogEventLevel.Error)
.CreateLogger();
এটি আমার সমস্ত কলগুলির Console.Write
সাথে সদৃশ না করে আমি কীভাবে আউটপুট গ্রাস করলাম তার পরিপ্রেক্ষিতে এটি আমাকে দুর্দান্ত নমনীয়তা দিয়েছে Debug.Write
। কোডটি লেখার সময় আমি আমার কমান্ড লাইন সরঞ্জামটি ভিজ্যুয়াল স্টুডিওতে চালাতে পারতাম যখন এটি বের হয়ে যাওয়ার পরে আমার আউটপুটটি হারাবে না। যখন আমি এটি স্থাপন করেছিলাম এবং কোনও ডিবাগ করার প্রয়োজন ছিল (এবং ভিজ্যুয়াল স্টুডিও উপলব্ধ ছিল না), কনসোল আউটপুটটি আমার ব্যবহারের জন্য সহজেই উপলব্ধ ছিল। একই বার্তাগুলি কোনও তফসিলযুক্ত কাজ হিসাবে চলাকালীন কোনও ফাইলে (বা অন্য কোনও ধরণের সিন্কে) লগইন করা যায়।
তল লাইনটি হ'ল সেরিলোগ ব্যবহার করে এটি অনেকগুলি গন্তব্যগুলিতে বার্তা ডাম্প করা সত্যিই সহজ হয়ে গেছে, আমি নিশ্চিত হয়েছি যে আমি কীভাবে দৌড়েছি তা নির্বিশেষে আমি আউটপুটটি সহজেই অ্যাক্সেস করতে পারি।
এটির জন্য খুব ন্যূনতম সেট আপ এবং কোডও প্রয়োজন।
Debug.WriteLine()