Как я могу удалить определенные события из журнала событий в Windows Server 2008?


20

Нужен ли сторонний инструмент для этого?


4
Я тоже. На ум приходят только злые вещи.
Стю Томпсон

3
У меня тоже есть запрос на это. Например: RDP имеет некоторые проблемы с одним из моих принтеров. Он отображается в журнале приложений с большой жирной буквой X, которая затем выбирается ВСЕ НАД (особенно на контроллерах домена, например, dcdiag и т. Д.) И вызывает ОЧЕНЬ больше проблем. Может быть, лучший вопрос: как подавить регистрацию ошибок определенных типов?
Мэтт Рогиш

3
Зло, ха У меня было приложение, случайно пишущее сообщения, которые вызывали проблемы со службой уведомлений.
JC.

2
@Matt Rogish способ подавления регистрации ошибок определенного типа - это исправить ошибку. Факт, что это регистрирует некоторую проблему, указывает на то, что что-то не так, что должно быть исправлено, а не дружеское напоминание, чтобы заполнить Ваш автомобиль бензином.
mrTomahawk

1
Это мой собственный сервис, который я написал. Мне было просто любопытно, можно ли это сделать.
JC.

Ответы:


18

Microsoft намеренно мешает вам сделать это. Вся концепция просмотра событий заключается в представлении вам определенных событий, которые могут потребовать вашего внимания. Если бы кто-то мог зайти и удалить любое случайное событие, то система могла бы - в некотором смысле - быть скомпрометирована без вашего ведома, что сделало бы ее небезопасной.

Если вы зарегистрировали событие ошибки, выясните причину проблемы и устраните ее. Вы не хотите закрывать дыру в плотине, вставляя в нее кусочек жвачки.

Если что-то регистрирует информационные или предупреждающие события слишком часто, то во многих случаях источник журнала событий (либо Microsoft, либо сторонний) имеет какой-либо параметр, который указывает, как часто или на каком уровне ведения журнала настраивается приложение. Вот куда вы идете, чтобы минимизировать ведение журнала, а не делать операции в журнале событий.


4
Только администратор должен иметь доступ к журналам, и если злонамеренный пользователь приобрел административные привилегии для вашего ящика, то вы уже f'd.
Бамбамс

2
@mrTomahawk, это не имеет значения. Видимо кто-то спрашивает: «Как я могу удалить определенные события из журнала событий в Windows Server 2008?» хочет сделать это. Так как мы можем это сделать? Если это невозможно, почему? Как это возможно, что это невозможно?
Pacerier

У вас есть действительная точка. Но как отфильтровать события, а не удалить события? Если мы получаем много шума от чего-то, и мы работаем над этим, но мы также хотим посмотреть, что еще вызывает проблемы, как мы это делаем?
Джон Роча

1
@JohnRocha Из быстрого поиска выясняется, что в их фильтрации нет оператора «не». Что кажется абсурдным.
Рейраб

1
@JohnRocha Выполнение пользовательских запросов к журналу событий использует ограниченное подмножество XPath 1.0 для записи запросов в формате XML. Выражения XPath в элементе Select определяют, что вы получаете. Элемент «Подавить» следует за элементом «Выбрать» и удаляет ненужные элементы.
JamieSee

35

Пост ОП действителен. Проблема номер один с ведением журнала, отчетами об ошибках и предупреждением - это белый шум. Когда сообщается о слишком большом количестве «ошибок» и большинство из них имеют низкий приоритет или не имеют никакого значения, администраторы склонны игнорировать ВСЕ ошибки. Хорошо это или плохо, это просто факт жизни.

Одна из ошибок, о которых он говорит, - это (я думаю) событие с кодом 1111. Это просто означает, что у вас есть принтер, сопоставленный с драйвером, который недоступен на сервере, к которому вы подключены. В большинстве случаев это ошибка, которая не имеет значения ... "исправить" нечего, так как это не проблема.

Если вы хотите найти реальные проблемы и у вас есть конкретные идентификаторы событий, которые вы не хотите пропустить, создайте собственное представление, выполнив следующие действия:

  1. В журнале событий нажмите «Фильтровать текущий журнал» на панели действий.
  2. Примерно на полпути вниз по всплывающему диалоговому окну вы найдете текстовое поле с <All Event IDs>
  3. Замените этот текст вашими потребностями фильтра.
    • Если вы хотите только определенное событие, поместите его там.
    • Если у вас есть кратные, используйте запятые для разделения.
    • Если вы хотите исключить, используйте знак минус.
    • В этом случае мы будем использовать «-1111» (без кавычек, конечно).
  4. Нажмите «ОК» в диалоговом окне.
  5. На панели действий вы теперь нажимаете «Сохранить фильтр в пользовательском представлении».

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

Я знаю, что это поздний пост в мертвой ветке, но, надеюсь, он поможет кому-то еще, кто ищет это в Google, больше, чем посты «[Работая как задумано, n00b!]» ;-)


6
Это фильтрация, а не удаление. Вы дали отличный (и полезный) ответ на вопрос, который не был задан, если честно.
mfinni

1
@mfinni, и, честно говоря, он не дал ответа на заданный вопрос . Вопрос 35k, которые задают посетители этой страницы.
Pacerier

4
Это отличный и полезный ответ, который наилучшим образом соответствует цели исходного вопроса, учитывая ограничения, налагаемые Microsoft.
Майк Битон

2
Я думаю, что комментарии с обеих сторон являются действительными. Информация о фильтрации гораздо полезнее, чем просто оставить ответ «Вы не можете». Принятый ответ - это правильный ответ, и я добавил +1. Ответ @ chad-patrick также очень полезен, и я тоже добавил +1. Но в ответе Чада есть недостаток: вы не должны просто использовать знак минуса на идентификаторах событий , так как некоторые приложения используют одинаковые номера. Требуется более строгая фильтрация по провайдеру и идентификатору события. Поскольку подробности об этом вне контекста, вот ссылка для начинающих: bit.ly/1d9seDp
TonyG

4

Единственное, что вы можете сделать в Windows, это очистить весь журнал. Я нашел только одно стороннее приложение, которое утверждает, что делает это - Winzapper , однако я никогда не использовал его и заявляет, что оно предназначено для NT и 2000, поэтому я не знаю, будет ли оно работать на сервере 2003/2008. Имейте в виду, что при их использовании возможно повреждение журнала событий, так что действуйте осторожно.


1

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

В консоли управления групповыми политиками подробно выберите Конфигурация компьютера - Параметры Windows - Параметры безопасности - Локальные политики - Политика аудита. Здесь нет тонны детализации, но, возможно, вы можете избавиться от того, что заполняет ваши журналы. (Мои DC не 2008 года, так что это то, что я получил с точки зрения AD 2003 года, надеюсь, это не совсем другое)


Хороший вопрос, но я не удаляю существующие журналы. Это влияет только на будущие журналы.
Pacerier

-1

Вы можете написать приложение .net для удаления журнала событий и источника событий.

Пример исходного кода, как показано ниже:

class Program
{
    static void Main(string[] args)
    {
        System.Diagnostics.EventLog.DeleteEventSource("YourEventSourceName");
        System.Diagnostics.EventLog.Delete("YourEventName");
    }
}

Ссылка: http://msdn.microsoft.com/en-us/library/system.diagnostics.eventlog(v=vs.100).aspx


Как очистить ВСЕ записи Журнал событий приложения ?, а не удалять журнал событий приложения, только записи
Kiquenet

Кто-нибудь проверял это? Это работает для всех событий?
Pacerier

-1

Вы можете удалить запись из этого общего реестра, чтобы удалить событие:

HKEY_LOCAL_MACHINE \ SYSTEM \ ControlSet001 \ Services \ EventLog


Нет, вы не можете удалить конкретное событие оттуда. Вы можете удалить / разрушить журналы событий и поставщиков оттуда. Не то же самое.
Роб Мойр
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.