|
Работа с подпискамиПроцесс настройки пересылки событий и создания подписок в предыдущей части статьи был описан при помощи графического интерфейса. В этом разделе описывается способ настройки пересылки событий, а также создания и управления подписками при помощи командной строки и утилиты Сборщика событий Windows – Wecutil. Настройка пересылки и сбора событийДля того чтобы правильно настроить компьютер, который будет являться сборщиком событий, желательно, чтобы он находился в домене. Прежде всего, войдите в систему с учетной записью, которая в домене имеет административные привилегии. В предыдущей части этой статьи я подробно описал метод настройки компьютера пересылки вручную. Для этого нужно было настроить автоматический запуск службы удаленного управления Windows с задержкой, запустить саму службу, создать прослушиватель RM, а также создать исключения брандмауэра для трафика Windows. Все эти действия можно выполнить при помощи командной строки. Используйте средство командной строки удаленного управления Windows – WinRM. При помощи этой утилиты легко организовывается протокол управления веб-службами WS-Management, обеспечивается безопасная связь с локальными и удаленными компьютерами с помощью веб-служб. В командной строке введите:
Winrm quickconfig –q
Если не указывать параметр q, то вам понадобится нажать на клавишу Y для подтверждения действий. Далее для настройки сбора пересылаемых событий нужно воспользоваться утилитой wecutil с командой qc, которая включает и настраивает службу сборщика событий Windows (Windows Event Collector). По запросу нужно будет нажать на клавишу Y. На контроллере домена нужно создать глобальную группу и добавить записи компьютеров-приемников событий. Затем в локальной группе администраторов создайте группу на каждом из компьютеров-источников. Для того чтобы выполнить эти действия, в командной строке введите следующее:
Net localgroup Administrators <Имя_глобальной_группы> /add
Создание и управление подпискамиСложные рутинные действия, которые проводятся при помощи графического интерфейса для создания и управления подписок можно автоматизировать средствами командной строки. Для этого, на центральном сервере регистрации событий применяется утилита командной строки Wecutil. Для этой утилиты созданы следующие команды: Полный вид команды | Краткий вид команды | Описание команды | Enum-subscription | Es | Вывод перечня подписок | Get-Subscription | Gs | Отображение конфигурации подписок | Get-SubscriptionRuntimeStatus | Gr | Вывод состояния выполнения времени подписок | Set-Subscribtion | Ss | Изменение конфигурации подписки | Create-Subscription | Cs | Создание новой подписки | Delete-Subscription | Ds | Удаление подписки | Retry-Subscription | Rs | Повторный опрос источников, которые заданы в подписке | Quick-Config | Qc | Включение и настройка службы Сборщика событий Windows |
Вывод перечня подписок Команда Enum-Subscribtion, в кратком виде es, предназначена для отображения перечня имен всех существующих подписок на удаленные события. Для этой команды не существует параметров. Пример использования:
Wecutil es
Отображение конфигурации подписок Команда Get-Subscription, в кратком виде gs, применяется для отображения сведений о конфигурации определенной удаленной подписки. Синтаксис команды: Wecutil Get-Subscription <код_подписки> (/Format:XML/Terse /Unicode:True/False) Где Код_подписки – это строка, которая определяет подписку, указанную тегом <SubscriptionID> в XML-файле конфигурации, использованном для создания подписки. Параметр Format, в кратком виде f, предназначен для определения вывода информации. Если указано значение XML, то данные будут выводиться в формате XML. Если указано значение Terse, то данные будут выводиться как пары имя-значение. Параметр Unicode отвечает за то, будут ли данные выводиться в Юникоде (UTF-16). Доступные значения True и False. Пример использования:
Wecutil gs newsubscribtion /f:xml
Вывод состояния выполнения времени подписок Команда Get-SubscriptionRuntimeStatus, в кратком виде gr, отвечает за отображение состояния выполнения подписки. В выводе команды можно увидеть сведения о последних ошибках, а также о состоянии подписки. В этой команде нужно указать только код подписки. Для нее не существует параметров. Пример использования:
Wecutil gr newsubscribtion
Удаление подписки Команда Delete-Subscribtion, в кратком виде ds, позволяет удалить определенную подписку и отменить подписки на все источники событий, из которых события доставляются в файл журнала для этой подписки. Те события, которые уже получены и записаны в журнал, не удаляются. Для этой команды также нужно ввести только код подписки, и не существует никаких дополнительных параметров. Пример использования: Wecutil ds newsubscription
Повторный опрос источников, заданных в подписке Команда Retry-Subscription, в кратком виде rs, позволяет возобновить неактивные подписки путем повторной активации всех или указанных источников событий с помощью установки подключения и отправки запроса на удаленную подписку. К отключенным источникам такую попытку применить невозможно. Синтаксис команды следующий: Wecutil Retry-Subscription <Код_подписки> <источник_подписки> Где Код_подписки – это строка, которая определяет подписку, указанную тегом <SubscriptionID> в XML-файле конфигурации, использованном для создания подписки. Источником подписки называется строка, определяющая компьютер с помощью полного доменного имени, IP-адреса либо NetBIOS-имени, служащего источником событий. Пример использования:
Wecutil rs newsubcribtion
Создание новой подписки Для создания подписки применяется команда Create-Subscribtion, в кратком виде cs, совместно с конфигурационным XML-файлом. Конфигурационный файл представляет собой XPath-запрос с определением пересылаемых событий, компьютера источника и идентификатора подписки. Синтаксис команды следующий: Для создания подписки применяется команда Create-Subscribtion, в кратком виде cs, совместно с конфигурационным XML-файлом. Конфигурационный файл представляет собой XPath-запрос с определением пересылаемых событий, компьютера источника и идентификатора подписки. Синтаксис команды следующий: Wecutil Create-Subscription <XML_файл> (/CommonUsername:<имя_пользователя> /CommonUserPassword:<пароль>) - Параметр CommonUserName, в кратком виде cup, задает общие учетные данные пользователя, используемые для источника событий, у которых нет собственных учетных данных пользователя. Если задан этот параметр, то параметры UserName и UserPassword для отдельных источников событий из файла конфигурации игнорируются. Если требуется использовать другие учетные данные для конкретного источника событий, они задаются командой ss (Set-Subscription).
- Параметр CommonUserPassword, в кратком виде cup, задает пароль пользователя для общих учетных данных пользователя. Когда пароль задается как * (звездочка), пароль считывается с консоли. Этот параметр действителен только при заданном параметре /cun (CommonUserName).
XML-файл конфигурации должен выглядеть примерно следующим образом:
<Subscription xmlns="http://schemas.microsoft.com/2006/03/windows/events/subscription">
<SubscriptionId>SampleCISubscription</SubscriptionId> <SubscriptionType>CollectorInitiated</SubscriptionType> <Description>Collector Initiated Subscription Sample</Description> <Enabled>true</Enabled> <Uri>http://schemas.microsoft.com/wbem/wsman/1/windows/EventLog</Uri> <!-- Use Normal (default), Custom, MinLatency, MinBandwidth --> <ConfigurationMode>Custom</ConfigurationMode> <Delivery Mode="Push"> <Batching> <MaxItems>20</MaxItems> <MaxLatencyTime>60000</MaxLatencyTime> </Batching> <PushSettings> <HostName>thisMachine.myDomain.com</HostName> <Heartbeat Interval="60000" /> </PushSettings> </Delivery> <Expires>2010-01-01T00:00:00.000Z</Expires> <Query> <![CDATA[ <QueryList> <Query Path="Application"> <Select>*</Select> </Query> </QueryList> ]]> </Query> <ReadExistingEvents>false</ReadExistingEvents> <TransportName>http</TransportName> <ContentFormat>RenderedText</ContentFormat> <Locale Language="ru-RU" /> <LogFile>ForwardedEvents</LogFile> <CredentialsType>Default</CredentialsType> <EventSources> <EventSource Enabled="true"> <Address>mySource.myDomain.com</Address> <UserName>myUserName</UserName> </EventSource> </EventSources> </Subscription>
Пример использования:
Wecutil cs newsubscription.xml
Изменение конфигурации подписки Для изменения свойств подписки применяется команда Set-Subscription, в кратком виде ss, при помощи которой можно настроить существующую подписку так, как вам нужно при помощи командной строки или XML-файла конфигурации. Для этой команды можно использовать 33 параметра. Синтаксис команды следующий: Wecutil Set-subscribtion <Код_подписки> (/Параметр:Значение) В этом руководстве рассматриваются лишь некоторые параметры этой команды: - Параметр Config, в кратком виде c, представляет собой строку, указывающую путь к XML-файлу, содержащему конфигурацию подписки. Путь может быть абсолютным или относительным по отношению к текущей папке. Этот параметр может использоваться только с необязательными параметрами /cus (CommonUserName) и /cup (CommonUserPassword) и является взаимно исключающим со всеми другими параметрами.
- Параметр Enabled, в кратком виде e, включает или отключает подписку. Доступные значения true или false.
- Параметр Description, в кратком виде d, представляет собой строку, которая описывает подписку.
- При помощи параметра Expires, в кратком виде ex, можно задать срок истечения подписки. Значение задается в стандартном формате XML или формате "дата/время" ISO8601: гггг-ММ-ддТчч:мм:сс[.ссс][Z], где T - это разделитель компонентов времени, а Z указывает на время в формате UTC.
- Параметр URI представляет строку, задающую тип событий, на которые настроена подписка. Адрес компьютера-источника событий вместе с URI уникальным образом определяет источник событий.
- Параметр ConfigurationMode, в кратком виде cm, задает режим конфигурации. Значение параметра может быть следующим: Normal, Custom, MinLatency или MinBandwidth. Режимы Normal, MinLatency, и MinBandwidth задают режим доставки, максимальное число элементов доставки, интервал пульсации и максимальное время задержки доставки. Параметры /dm (DeliveryMode), /dmi (DeliveryMaxItems), /hi (HeartbeatInterval) b /dmlt (DeliveryMaxLatencyTime) можно указывать только при выборе режима конфигурации Custom.
- Параметр Dialect, в кратком виде dia, указывает диалект, используемый в строке запроса.
- Параметр ContentFormat, в кратком виде cf, указывает формат возвращаемых событий. Параметр может иметь значение Events или RenderedText. При использовании RenderedText события возвращаются с локализованными строками (например, описанием события), связанными с событиями.
- Параметр Locale, в кратком виде l, определяет языковой стандарт для доставки локализованных строк в формате RenderedText. Язык представляет идентификатор языка или культуры, например "ru-RU". Этот параметр является действительным только в том случае, если параметр /cf (ContentFormat) имеет значение RenderedText.
- Параметр HeartbeatInterval, в кратком виде hi, представляет собой число, задающее тактовый интервал для извещающих (push) подписок или интервал опроса для опрашивающих (pull) подписок. МС задает число миллисекунд. Этот параметр действителен, только когда параметр /cm (ConfigurationMode) имеет значение Custom.
- Параметр EventSourceAddress, в кратком виде esa, отвечает за адрес источника событий. Этот параметр должен использоваться с параметрами /ese (EventSourceEnabled), /aes (AddEventSource), /res (RemoveEventSource) или /un (UserName) и /up (UserPassword).
- При помощи параметра EventSourceEnabled, в кратком виде ese, можно включать или отключать источник событий. Допустимые значения true и false. Этот параметр можно использовать, только если задан параметр /esa (EventSourceAddress). По умолчанию этот параметр имеет значение true.
- Параметр AddEventSource, в кратком виде aes, используется для добавления источника событий, задаваемого параметром /esa (EventSourceAddress), если он еще не является частью подписки. Если в параметре /esa (EventSourceAddress) указан адрес, уже являющийся частью подписки, возникает ошибка. Этот параметр можно использовать, только если задан параметр /esa (EventSourceAddress).
- При помощи параметра RemoveEventSource, в кратком виде res, можно удалять источник событий, задаваемый параметром /esa (EventSourceAddress), если он уже является частью подписки. Если в параметре /esa (EventSourceAddress) указан адрес, уже являющийся частью подписки, возникает ошибка. Этот параметр можно использовать, только если задан параметр /esa (EventSourceAddress).
- Параметром UserName, в кратком виде un, можно задать учетные записи пользователей, которые будут использованы источником, указанным в параметре /esa (EventSourceAddress). Этот параметр можно использовать, только если задан параметр /esa (EventSourceAddress).
- Параметр UserPassword, в кратком виде up, задает пароль для учетных данных пользователя с источником, указанным в параметре /esa (EventSourceAddress). Этот параметр можно использовать, только если задан параметр /un (UserName).
Пример использования:
wecutil ss sub2 /esa:myComputer /ese /un:USER /up:* /cm:Normal
ЗаключениеВ этой заключительной статье, посвященной работе с журналами событий Windows, рассказывается о применении командной строки и командной оболочки Windows PowerShell для работы с журналами событий. Подробно рассмотрены действия для базовых операций, которые проводятся над журналами событий при помощи командной оболочки Windows PowerShell, всевозможных настройках журналов событий при помощи утилиты командной строки Wevtutil, а также об операциях, связанных с настройкой пересылки и управлением подписками при помощи утилиты командной строки Wecutil. Разумеется, это руководство нельзя считать исчерпываемым, но в нем описано большинство операций и процедур, которые должны использовать системные администраторы и ИТ-специалисты на предприятиях для устранения большинства проблем, которые могут возникнуть у конечных пользователей и обеспечения стабильной работы ИТ-инфраструктуры в целом.
Автор: Dmitry Bulanov
|
|