windows - কিভাবে কমান্ড লাইন থেকে উইন্ডোজ EventLog উৎস তৈরি করতে?




command-line event-log (6)

"Eventcreate.exe" চেষ্টা করুন

একটি উদাহরণ:

eventcreate /ID 1 /L APPLICATION /T INFORMATION  /SO MYEVENTSOURCE /D "My first log"

এটি APPLICATION ইভেন্টের ধরন হিসাবে APPLICATION লগের অধীনে MYEVENTSOURCE নামে একটি নতুন ইভেন্ট উত্স তৈরি করবে।

আমি এই ইউটিলিটি শুধুমাত্র এক্সপি থেকে অন্তর্ভুক্ত করা হয় মনে হয়।

আরও পড়া

আমি একটি ASP.NET অ্যাপ্লিকেশন তৈরি করছি যা উইন্ডোজ ইভেন্ট লোগে কিছু উপাদান লগ ইন করবে। এটি করার জন্য একটি ইভেন্ট উৎস প্রথম তৈরি করা আছে। এটি প্রশাসনিক priviledges প্রয়োজন তাই আমি ASP.NET অ্যাপ্লিকেশন এ এটি করতে পারবেন না।

একটি বিদ্যমান কমান্ড-লাইন অ্যাপ্লিকেশন আছে যা উইন্ডোজগুলির সাথে বান্ডল করা হয় যা একটি ইভেন্ট লগ উৎস তৈরি করতে পারে, নাকি আমার নিজের আউটপুট করতে হবে?


PowerShell 2.0 এর ইভেন্টলগ cmdlets ব্যবহার করে দেখুন

PowerShell 2.0 এবং ঊর্ধ্বমুখী জন্য এটি নিক্ষেপ করা হচ্ছে:

  • ইভেন্ট উত্স নিবন্ধন করার জন্য একবার New-EventLog ইভেন্ট ইভেন্ট চালান:

    New-EventLog -LogName Application -Source MyApp
    
  • তারপরে লগ Write-EventLog লিখতে Write-EventLog ব্যবহার করুন:

    Write-EventLog 
        -LogName Application 
        -Source MyApp 
        -EntryType Error 
        -Message "Immunity to iocaine powder not detected, dying now" 
        -EventId 1
    

আপনি ডায়াগনস্টিক্স ব্যবহার করে আপনার নিজস্ব কাস্টম ইভেন্ট তৈরি করতে পারেন। লগ ক্লাস প্রবেশ করুন। একটি উইন্ডোজ অ্যাপ্লিকেশন খুলুন এবং একটি বোতামে নিম্নলিখিত কোডটি ক্লিক করুন।

System.Diagnostics.EventLog.CreateEventSource("ApplicationName", "MyNewLog");

"MyNewLog" মানে আপনি যে লগ ইন ইভেন্ট ভিউয়ারে লগ দিতে চান।

আরও তথ্যের জন্য এই লিঙ্কে ক্লিক করুন [ http://msdn.microsoft.com/en-in/library/49dwckkz%28v=vs.90%29.aspx]


আপনি নিম্নলিখিত কমান্ড দিয়ে উইন্ডোজ পাওয়ারশেল ব্যবহার করতে পারেন:

if ([System.Diagnostics.EventLog]::SourceExists($source) -eq $false) {
    [System.Diagnostics.EventLog]::CreateEventSource($source, "Application")
}

CreateEventSource কল করার আগে উৎসটি বিদ্যমান নেই তা পরীক্ষা করে দেখুন, অন্যথা এটি একটি ব্যতিক্রম নিক্ষেপ করবে।

আরও তথ্যের জন্য:


তবে cmd / ব্যাচ সংস্করণটি এমন কোনও সমস্যাতে চালাতে পারে যখন আপনি একটি ইভেন্টআইডি সংজ্ঞায়িত করতে চান যা 1000 এর পরে বেশি। 1000+ এর ইভেন্ট আইডি দিয়ে ইভেন্ট তৈরির জন্য আমি এইরকম শক্তিশক্তি ব্যবহার করব:

$evt=new-object System.Diagnostics.Eventlog(“Define Logbook”)
$evt.Source=”Define Source”
$evtNumber=Define Eventnumber
$evtDescription=”Define description”
$infoevent=[System.Diagnostics.EventLogEntryType]::Define error level
$evt.WriteEntry($evtDescription,$infoevent,$evtNumber) 

নমুনা:

$evt=new-object System.Diagnostics.Eventlog(“System”)
$evt.Source=”Tcpip”
$evtNumber=4227
$evtDescription=”This is a Test Event”
$infoevent=[System.Diagnostics.EventLogEntryType]::Warning
$evt.WriteEntry($evtDescription,$infoevent,$evtNumber)

eventcreate2 আপনি কাস্টম লগ তৈরি করতে পারবেন, যেখানে eventcreate না।





event-log