Реклама:

Как вы понимаете, дли получения наилучших результатов часто приходится комбинировать различные технологии. Далее я рассмотрю различные технологии, принципы их работы, способы настройки и расскажу, как сделать получаемую информацию удаленно доступной для наблюдения.

Журнал событий

Журнал событий Windows является наиболее известным средством регистрации, его API упакованы в Microsoft .NET Framework. Для того чтобы им воспользоваться, вы просто вызываете метод EventLog.WriteEntry и передаете ему источник события (то есть имя приложения), а также сообщение и тип события (предупреждения, ошибки или критического состояния). Данный метод запишет это событие в журнал приложения.

public static void LogToEventlog(string message. EventLogEntryType type, int id)

{

Event Log.WriteEntry("Account ing Application", message, type, id);

J

Перед тем как использовать источник события, его сначала следует зарегистрировать. Только администратор может создавать новые источники событий, рабочий процесс ASP.NET не должен иметь таких полномочий. Наиболее простое решение этой проблемы заключается в написании консольной программы, которая ко время установки приложения предварительно создает источник событий. После этого в журнале событий может регистрироваться учетная запись демона с минимальными привилегиями.

Создание источника событий

static void Main(string[] args) К

Event Log.CreateEventSource(args[0], "Application");

Вы можете также создать собственный журнал событий. Для этого задайте журналу имя, например, Accounting Application, и зарегистрируйте такие источники событии, как Front End и Data Access Component.

Создание собственного журнала событий

Static void Main(string[] args) i

string logName = "Accounting Application";

if (!Event Log.Exists(logName)) i

Event Log.CreateEventSourcef"Front End", logName);

EventLog.CreateEventSource("Cata Access Component", logName);

EventLog.CreateEventSource("Financial Component". logName);

}

}

Код для записи в собственный журнал событий несущественно отличается от стандартного.

Запись в собственный журнал событий

public static void LogToEventLog(string message, EventLogEntryType type, int id)

(

Event Log evt =

new EventLog("Accounting Application", ".", "Front End"); evt.WriteEntry(message, type, id);

}

Удаленный доступ и списки ACL

Вы можете получать удаленный доступ к журналу событий Windows. По умолчанию только администраторы авторизованы для этого. Однако в Microsoft Windows Server 2003 для журналов событий введены списки ACL, так что вам не нужно предоставлять привилегии администратора тем, кто отслеживает записи событий. Списки ACL хранятся в реестре в формате Security Definition Language (SDDL), и вы можете настраивать их вручную. По умолчанию используются следующие ACL и собственные

0:BAG:SYD:(D;;Oxf0007;;;AN)(D;;0xf0007;;;B6)(A;;0xf0007;;;SY)(A;;0x7;;;BA) (A; ; 0x7;;: S0)(A; ;

0x3;;;IU)(A;;0x3;;;SU)(A;;0x3;;;S-1-5-3)

На первый взгляд они выглядят несколько пугающе, однако все объясняет смысл компонентов этой строки (табл, 7-2).


⇐ Предыдущая страница| |Следующая страница ⇒