О каких событиях стоит сообщать?

октября 12 2009 by admin in Администрирование

В свои серверные приложения вы наверняка захотите ввести функцию сообщения о событиях. Но прежде чем приступить к этой работе, стоит хорошо разобраться в назначении регистрации событий. Запомните, что с помощью регистрационного файла осуществляется обратная связь между вашей службой и системным администратором. Служба, сообщающая о бессмысленных событиях или об огромном числе событий, будет раздражать системного администратора так же, как и приложение, отображающее множество информационных окон.
Большинство разработчиков без труда определяет ситуации, в которых должны регистрироваться события, связанные с ошибками. Не возникает проблем и с поиском случаев, в которых приложение должно генерировать предупреждающее событие. Хуже обстоят дела с информационными событиями. Какая деятельность программы требует регистрации? Вы ответите на этот вопрос, поставив себя на место системного администратора.
Ни один администратор не захочет в конце рабочего дня продираться сквозь сотни или пусть даже десятки информационных событий только для того, чтобы найти пару нужных ему записей. Поэтому, определяя важность ситуации, нужно понять, насколько она обычна. Для Web-сервера скорее всего понадобится регистрировать события, связанные с подключением к нему. С другой стороны, он может сообщать и о событиях, связанных с неосуществленными соединениями, которые он не смог обработать из-за высокой загруженности. Однако регистрация такого события может оказаться ненужной. Компромиссным решением в этом случае может быть запись раз в час информации о том, что были отказы в подключении к серверу. В регистрационный файл можно включить полное число запрещенных соединений. Сообщения о таких событиях стоит сделать необязательными, тем самым позволив администратору выбирать, что нужно регистрировать.
Кроме того, информационные события можно использовать для сообщения о редких изменениях состояния ПО. Например, вы, возможно, захотите генерировать события при остановке работы вашей службы и ее продолжении. Или, допустим, ваше приложение переходит в «спящий» режим, освобождая при этом ресурсы, если загруженность сервера была низкой определенное время — такая ситуация также может послужить причиной генерации информационного события. События, связанные с изменением состояния, используются для того, чтобы дать администратору сведения о действиях ПО, выполнявшихся до возникновения предупреждений или ошибок.
И все же не стоит считать файл регистрации событий хранилищем информации обо всех выполненных приложением командах. Такая отладочная информации подействует на администратора угнетающе и скорее всего приведет к тому, что он будет игнорировать все события, сгенерированные приложением. Данные о событиях занимают место на диске, поэтому эффективное использование хранилища информации очень важно. Если сервер будет генерировать много событий или сообщать о событиях из разных источников, возможно, понадобится их регистрация в отдельном журнале. В общем, ориентируйтесь на здравый смысл. А если вы сможете предложить пользователям самим настроить механизм регистрации событий, будет просто замечательно.
Ну, вот и все, мы закончили изучать события, о которых нужно сообщать. Перейдем к тому, как это делать.