Windows Server 2003 বা Windows XP-এ, আপনি ইভেন্ট লগ ভিউয়ারে লগ ফিল্টারের User ফিল্ডে নির্দিষ্ট ইউজারনেম দিয়ে স্পেসিফিক ইউজার অ্যাকাউন্টের ইভেন্ট সহজে ফিল্টার করতে পারতেন। কিন্তু Windows Server 2008 / Windows 7-এ, নির্দিষ্ট ব্যবহারকারীর সাথে সম্পর্কিত ইভেন্ট খুঁজে বের করার এই সহজ পদ্ধতি কাজ করে না।
Windows Server 2008-এ, ইভেন্ট লগের স্ট্যান্ডার্ড প্রেজেন্টেশনে User ফিল্ড নেই। চলো View → Add/Remove Columns মেনু অপশন ব্যবহার করে এটি যোগ করার চেষ্টা করি।
এখন User কলাম লগ প্রেজেন্টেশনে আসল, কিন্তু ইভেন্ট শুরু করা ব্যবহারকারীর নাম এই কলামে দেখাচ্ছে না। আমরা N/A দেখছি। অ্যাকাউন্ট সম্পর্কিত তথ্য এখন ইভেন্টের ডেসক্রিপশনে থাকে (এই উদাহরণে Security ID এবং Account Name-এর ভ্যালুতে)। এখন লগে ইভেন্ট কীভাবে ফিল্টার করবেন?
Windows Server 2008 বা উচ্চতর ভার্সনে ইভেন্ট লগে ইউজারনেম (বা যেকোনো অন্যান্য ইভেন্ট অ্যাট্রিবিউট) দিয়ে ফিল্টার করতে, আপনি ম্যানুয়াল XML কোয়েরি (XPath) মডিফিকেশন ব্যবহার করতে পারেন।
নোট: XPath ব্যবহার করে লগে নির্দিষ্ট ইভেন্ট খুঁজে বের করার বিষয়টি আগে আলোচনা করা হয়েছিল Running a Scheduled Task after another আর্টিকেলে।
সেজন্য, Event View-এ আপনার প্রয়োজনীয় লগ খুলুন (আমাদের কেসে, এটি Security লগ) এবং কনটেক্সট মেনু থেকে Filter Current Log… সিলেক্ট করুন।
XML ট্যাবে যান এবং Edit query manually চেক করুন।
নিচের কোড কপি পেস্ট করুন যা লগে নির্দিষ্ট ব্যবহারকারীর সকল ইভেন্ট সিলেক্ট করার অনুমতি দেবে (username-কে আপনার প্রয়োজনীয় অ্যাকাউন্ট নাম দিয়ে রিপ্লেস করুন)।
<QueryList>
<Query Id="0" Path="Security">
<Select Path="Security">* [EventData[Data[@Name='subjectUsername']='username']]</Select>
</Query>
</QueryList>
ফিল্টারে পরিবর্তন সংরক্ষণ করুন এবং লগটি দেখুন। আপনার স্পেসিফাই করা অ্যাকাউন্টের সাথে সম্পর্কিত ইভেন্টগুলো মাত্র লগে থাকবে।
যদি আপনাকে যোগে, উদাহরণস্বরূপ, একজন ব্যবহারকারীর জন্য এবং Event ID 4624 (An account was successfully logged on) এবং 4625 (An account failed to log on.)-এর জন্য ইভেন্ট ফিল্টার করতে হয়, তবে XPath ফিল্টার এইরকম হবে:
<QueryList>
<Query Id="0" Path="Security">
<Select Path="Security">*[System[(EventID=4624 or EventID=4625)]]</Select>
<Select Path="Security">* [EventData[Data[@Name='subjectUsername']='username']]</Select>
</Query>
</QueryList>