В цьому випадку ми можемо зіткнутися з тим, що з-за великої кількості і надмірної подробиці подій, працювати зі стандартним журналом додатків Windows стає дуже незручно. В даному випадку було б зручно створити власний журнал подій для цієї програми, і для нього налаштовувати різні параметри, такі як розмір журналу, фільтри і т. д., а стандартний журнал Application можна використовувати як зазвичай, не засмічуючи його непотрібною інформацією. В ОС сімейства Windows є функція, що дозволяє створити власний журнал подій.
Спочатку створимо новий файл журналу. Зробити це можна за допомогою реєстру. Запустіть редактор реєстру regedit і перейдіть в гілку:
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog
Клацніть правою кнопкою по сайту Eventlog і створіть новий ключ (New > Key)
Ім'я ключа в цьому випадку буде і ім'ям нового журналу. За замовчуванням новий журнал (файл .evt) створюється тут:
C:\WINDOWS\System32\Config\New Key #1.evt
Його можна перейменувати, змінивши рядковий параметр в реєстрі за своїм розсудом.
Далі потрібно додати джерела (Sources) подій для нового журналу. Створіть новий ключ типу Multi-String з ім'ям "Sources", в якості параметрів вкажіть імена всіх додатків, який будуть використовувати цей журнал (кожне додаток з нового рядка).
Потім потрібно перенести асоціації ваших додатків із стандартного журналу Application в ваш новий журнал. Розгорніть гілку "Application", що знаходиться за адресою:
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\Application
І скопіюйте всі гілки, які відносяться до інтересуемий Вами додатків в новий гілку реєстру нового журналу:
HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Eventlog\CustomLog
Т. к. команда скопіювати/вставити в редакторі реєстру не працює, їх можна створювати вручну (якщо їх небагато), або ж можна здійснити перенесення за допомогою процедури експорту/імпорту гілок реєстру з ручним редагування .reg файлу. Переконайтеся, що після перенесення видалення ключі реєстру ваших додатків з гілки Application, інакше Windows не зрозуміє, що потрібно писати події в новий журнал. У тому випадку, якщо ви використовуєте новий джерело подій для журналу, потрібно буде створити параметр DWORD з ім'ям CustomSource і значенням рівним 1:
У моєму прикладі, я створив власну програму .NET 2.0, причому я хочу, щоб воно записували події в створений нами журнал. Для цього я створю новий ключ реєстру EventMessageFile і вкажу в ньому шлях до бібліотеки журналирования.NET 2.0:
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\EventLogMessages.dll
Потім потрібно перезавантажити Windows, а після завантаження системи ви побачите новий журнал подій в розділі Event Viewer-а. У тому випадку, якщо ваш додаток з якої-небудь причини не пише подій в новий журнал, можна перевірити його роботу вручну, відкрийте командую рядок і перейдіть в каталог:
CD C:\WINDOWS\system32
Потім наберіть:
eventcreate /l CustomLog /t Information /so Application1 /id 1 /d "Test message"
У тому випадку, якщо ви все зробили правильно повинно з'явитися вікно, що повідомляє про те, що подія була успішно записаний у журнал, повідомлення про помилки і причини її появи. Якщо ви все зробили про даного керівництва, проблем виникнути не повинно.