Услуга на Windows: Къде да записвате регистрационни съобщения (EventLog, File или DB Table) / Достъп от мрежата

Имаме услуга за Windows (в .NET), която ще запише доста съобщения в журнал.

Този дневник представлява интерес не само за администраторите на сървъра, но и за обикновените клиенти, които използват уеб страница за достъп до системата. Или на нас, които се опитваме да отстраняваме грешки в системата от разстояние!

Обмисляме да използваме нормалния регистър на събитията на Windows Server или да пишем в таблица на базата данни или може би просто старинно писане във файл.

Някой има ли съвети за най-добри практики, които да използвате?

Важно е наистина само, че регистрационният файл е достъпен за преглед в уеб страницата, за която цел си представям, че DB таблицата е най-лесният метод за постигане на това? Колко лесно би било да покажем регистъра на събитията на Windows чрез мрежата (ако приемем, че филтрираме само съобщения, които са подходящи за нашето приложение?)


person Andrew White    schedule 24.08.2010    source източник


Отговори (4)


Тъй като заявихте, че регистрационният файл трябва да бъде достъпен чрез уеб страница, най-доброто място за съхраняване на информацията почти сигурно би било в базата данни, тъй като можете да използвате код, с който сте запознати, за да извлечете записи, които да представите в мрежата интерфейс.

Въпреки това, ако изграждате „корпоративна“ система, може да искате да вземете предвид факта, че решения за мониторинг като Big Brother имат вградени съоръжения за наблюдение на записи в регистъра на събитията и реагиране на тях, така че някаква форма на регистриране в регистъра на събитията би била ценна за системните администратори в тази ситуация. Освен това Windows предлага „Препращане на регистър на събития ", което позволява записите в регистъра на събитията от множество машини да бъдат обобщени за преглед на една машина. Вероятно не е подходящо за вашия сценарий, но си струва да се има предвид.

person Rob    schedule 26.08.2010

Опитайте се да помислите за лекотата на изпълнение. Вече имате цялата инфраструктура за работа с БД. Трябва да е лесно просто да добавите нова съхранена процедура или заявка. Можете лесно да имате резервно копие. Освен това можете лесно да прехвърлите тази DB на друг сървър, ако имате нужда. Журналът на събитията на Windows сървър също е добро място, но архивирането, преносимостта и производителността могат да пострадат. Ако имате специален DB сървър, това е по-добър избор, IMHO

person fedotoves    schedule 25.08.2010

Ако използвате нещо като регистриране на Enterprise Library, доста тривиално е едно съобщение да се регистрира на множество места. Също така е доста лесно да го разширите и да напишете свои собствени формати и цели. Можете дори да излезете от регистрирането на процеса с него. Друг хубав аспект на това е, че ако едно от местоположенията е повредено (напр. DB не работи или файлът е заключен), имате регистър на събитията, който ще регистрира тези грешки.

Също така трябва да се отбележи, че вашият локален инструмент за преглед на събития може да Свържете се с друг компютър. Администраторите обикновено нямат проблем да предоставят на разработчиците достъп за четене до него. Друг плюс за програмата за преглед на събития е, че ако използвате LogParser, можете да го правите заявки.

person Conrad Frix    schedule 26.08.2010

Eventlog е по-добро място за регистриране. Можете да преглеждате регистрационните записи в Event Viewer и да имате достъп до тези записи програмно.

Не ви съветвам да използвате обикновен файл. Това е просто, но не се управлява.

person Zafer    schedule 26.08.2010