সি # তে কীভাবে (সরল) ট্রেসিং যুক্ত করবেন? [বন্ধ]


122

আমি যে সি # অ্যাপ্লিকেশনটি লিখছি তার সাথে কিছু ট্রেসিং পরিচয় করিয়ে দিতে চাই। দুঃখের বিষয়, আমি কীভাবে এটি কাজ করে তা সত্যিই আমি কখনই মনে করতে পারি না এবং রেফারেন্স গুণাবলী সহ একটি টিউটোরিয়াল চাই এবং এখন থেকে প্রতিটি ক্ষেত্রে অনুসন্ধান করা উচিত। এটি অন্তর্ভুক্ত করা উচিত:

  • ট্রেসলিস্টেনার নিবন্ধকরণের জন্য অ্যাডকনফাইগ / ওয়েবকনফিগ স্টাফ
  • কলিং অ্যাপ্লিকেশনটিতে এটি কীভাবে সেট আপ করবেন

আমাদের সাথে সংযুক্ত হওয়া উবার টিউটোরিয়ালটি কি জানেন?

সম্পাদনা: গ্লেন স্লেভেন আমাকে সঠিক দিকে নির্দেশ করেছেন। এটি আপনার App.config / Web.config এর ভিতরে যুক্ত করুন <configuration/>:

<system.diagnostics>
    <trace autoflush="true">
      <listeners>
        <add type="System.Diagnostics.TextWriterTraceListener" name="TextWriter"
             initializeData="trace.log" />
      </listeners>
    </trace>
</system.diagnostics>

এটি এমন একটি যুক্ত TextWriterTraceListenerকরবে যা আপনার পাঠানো সমস্ত কিছুকে ধরে ফেলবে Trace.WriteLineইত্যাদি etc.

সম্পাদনা করুন: @DanEsparza নির্দিষ্ট যে আপনার ব্যবহার করা উচিত Trace.TraceInformation, Trace.TraceWarningএবং Trace.TraceErrorপরিবর্তে Trace.WriteLine, তারা হিসাবে একই ভাবে বিন্যাস বার্তা আপনাকে অনুমতি দেয় string.Format

টিপ: আপনি যদি কোনও শ্রোতা যুক্ত না করেন তবে আপনি সিসি ইন্টার্নালালস প্রোগ্রামটি ডিবাগভিউ ( Dbgview.exe): http://technet.microsoft.com/en-us/sysinternals/bb896647.aspx এর সাহায্যে ট্রেস আউটপুটটি দেখতে পাচ্ছেন


4
আমি Trace.TraceInformationরাইটলাইনের পরিবর্তে ব্যবহার এবং এর মতো অনুরোধ করছি। এই সদস্যরা আপনাকে আপনার বার্তাগুলির মতো বিন্যাস করতে দেয় string.Format
ড্যান এস্পারজা

উত্তর:



5

আমি প্রায় 5 টি বিভিন্ন উত্তর পাশাপাশি উপরের সমস্ত ব্লগ পোস্ট অনুসরণ করেছি এবং এখনও সমস্যা ছিল। আমি কিছু বিদ্যমান কোডটিতে শ্রোতা যুক্ত করার চেষ্টা করছিলাম যা সেই TraceSource.TraceEvent(TraceEventType, Int32, String)পদ্ধতিটি ব্যবহার করে ট্রেস করছে যেখানে TraceSourceঅবজেক্টটি একটি স্ট্রিং দিয়ে এটির নামকরণ করা উত্স হিসাবে শুরু করা হয়েছিল। আমার পক্ষে সমস্যাটি উত্সটি লক্ষ্য করে উত্স এবং স্যুইচ উপাদানগুলির একটি বৈধ সংমিশ্রণ তৈরি করছে না। এখানে একটি উদাহরণ যা বলা কোনও ফাইলে লগ করবে tracelog.txt। নিম্নলিখিত কোডের জন্য:

TraceSource source = new TraceSource("sourceName");
source.TraceEvent(TraceEventType.Verbose, 1, "Trace message");

আমি নিম্নলিখিত ডায়াগনস্টিক কনফিগারেশনের মাধ্যমে সফলভাবে লগ করতে পেরেছি:

  <system.diagnostics>
    <sources>
      <source name="sourceName" switchName="switchName">
        <listeners>
          <add
              name="textWriterTraceListener"
              type="System.Diagnostics.TextWriterTraceListener"
              initializeData="tracelog.txt" />
        </listeners>
      </source>
    </sources>
    <switches>
      <add name="switchName" value="Verbose" />
    </switches>
  </system.diagnostics>

কোড স্নিপেট কাজ করে না।
দরকারী

ক্ষমা প্রার্থনা @ ইউজফুলবি, এটি কোনও কোড স্নিপেট হিসাবে বোঝানো হয়নি, এটি স্বয়ংক্রিয়ভাবে কোড হিসাবে চিহ্নিত হয়েছে। এটি কনফিগারেশন কোড যা আপনার অ্যাপকনফাইগ বা ওয়েবকনফিগের অংশ হতে পারে, আমি আশা করি এটি সাহায্য করবে।
শান

3

এতে ডটনেট কোডার্সের একটি স্টার্টার নিবন্ধ রয়েছে: http://www.dotnetcoders.com/web/Articles/Sowowrticle.aspx?article=50 , তারা কীভাবে কনফিগার ফাইলে স্যুইচগুলি সেটআপ করবেন এবং কোডটি কীভাবে লিখবেন, সে সম্পর্কে আলোচনা করেন, তবে এটি বেশ পুরানো (২০০২)। কোডপ্রজেক্টে আরও একটি নিবন্ধ রয়েছে: http://www.codeproject.com/KB/trace/debugtreatise.aspx তবে এটি একই বয়সের। কোডগুরুর কাস্টম ট্রেসলিস্টেনারগুলির বিষয়ে একটি আর্টিকেল রয়েছে: http://www.codeguru.com/colouts/vb/article.php/c5611

আমি আর কোনও সাম্প্রতিক নিবন্ধের কথা ভাবতে পারি না, আশা করি এখানে অন্য কারও কিছু থাকবে


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