Методика діагностики причин довгого застосування GPO в Windows

Повільне завантаження комп'ютера, викликана тривалим застосуванням групових політик, є однією з найчастіших проблем в домені, на які скаржаться користувачі. З точки зору користувача комп'ютер завантажується дуже довго, і як ніби зависає на кілька хвилин на етапі "Застосування параметрів комп'ютера / користувача". У цій статті я спробую зібрати корисні діагностичні інструменти і прийоми, що дозволяють адміністратору виявити причини повільного застосування GPO на комп'ютерах домену.

Насправді причин, через які на комп'ютері довго застосовуються групові політики може бути безліч: це і проблеми з DNS, доступністю і швидкістю підключення до DC, неправильно вибрано параметр сайтів AD або проблеми з реплікацією, невірно налаштовані групових політики і криві скрипти і т .п. Проблематично описати універсальний алгоритм по діагностиці всіх цих проблем. При вирішенні таких проблем, як правило, більшу роль має досвід і навички фахівця, яка провадить діагностику. У цій статті ми зупинимося тільки на діагностики проблем, пов'язаних з самими механізмами роботи GPO і клієнта GPClient.

зміст:

  • Блокування спадкування груповий політик
  • Висновок докладних повідомлень на екрані завантаження
  • звіт GPResult
  • Аналіз подій від Group Policy в системних журналах Windows
  • Налагоджувальний журнал служби GPSVC
  • Налагодження журнали Group Policy Preferences

Блокування спадкування груповий політик

Щоб переконатися, що проблема пов'язана саме з доменними GPO, створіть в домені окрему OU, перенесіть в неї проблемний комп'ютер і за допомогою консолі Group Policy Management Console (GPMC.msc) включите блокування успадкування політик для даного контейнера (Block Inheritance). Таким чином на комп'ютер перестануть діяти всі доменні політики (виняток - політики, для яких включений режим Enforced) .

Перезавантажте комп'ютер і перевірте, чи збереглася проблема з довгим застосуванням GPO. Якщо збереглася, найімовірніше проблема з самим комп'ютером або локальними політиками (спробуйте їх скинути на дефолтні).

Висновок докладних повідомлень на екрані завантаження

У Windows на екрані завантаження системи можна включити відображення розширеної статусної інформації, що дозволяє користувачам і адміністраторові візуально зрозуміти на якому етапі завантаження комп'ютера спостерігається найбільша затримка. При включенні даної політики, в тому числі, починає відображатися інформація про застосовувані компонентах GPO.
Включити цю політику можна в наступному розділі GPO:

  • в Windows 7 / Vista: Computer Configuration -> Policies -> System -> Verbose vs normal status messages = Enabled
  • в Windows 8/10: Computer Configuration -> Policies -> System -> Display highly detailed status messages = Enabled

Цей же параметр можна активувати через реєстр, створивши в гілці HKEY_LOCAL_MACHINE \ SOFTWARE Microsoft \ Windows \ CurrentVersion \ Policies \ System параметр типу DWORD з ім'ям verbosestatus і значенням 1.

В результаті на екрані в процесі завантаження будуть відображатися такі повідомлення:

звіт GPResult

Результуючу політику, яка була застосована до комп'ютера, варто проаналізувати за допомогою HTML звіту gpresult, створити який можна такою командою, запущеної з правами адміністратора:

gpresult / h c: \ ps \ gpreport.html

Цей звіт досить зручний для аналізу і може містити посилання на різні помилки при застосуванні GPO.

Крім того, в розділі звіту Computer Details -> Component Status присутні корисні дані про час (у мс) застосування різних компонентів GPO у вигляді:

Group Policy Files (N / A) 453 Millisecond (s) 18.01.2017 14:10:01 View Log
Group Policy Folders (N / A) 188 Millisecond (s) 18.01.2017 14:10:00 View Log
Group Policy Local Users and Groups (N / A) 328 Millisecond (s) 18.01.2017 14:10:00 View Log
Group Policy Registry (N / A) 171 Millisecond (s) 18.01.2017 14:10:01 View Log
Group Policy Scheduled Tasks (N / A) 343 Millisecond (s) 18.01.2017 14:10:01 View Log
Scripts (N / A) 156 Millisecond (s) 18.01.2017 14:09:04 View Log
Security (N / A) 3 Second (s) 495 Millisecond (s) 18.01.2017 14:09:08 View Log
Реєстр (N / A) 18 Second (s) 814 Millisecond (s) 18.01.2017 14:10:00 View Log

Аналіз подій від Group Policy в системних журналах Windows

В журналі додатків про повільне застосуванні політик може свідчити подія з EventID 6006 від джерела Winlogon з текстом:

Передплатник повідомлень winlogon витратив 3594 сек. на обробку події повідомлення (CreateSession) .The winlogon notification subscriber took 3594 seconds to handle the notification event (CreateSession).

Судячи по даній події, користувачеві довелося чекати застосування групових політик при завантаженні комп'ютера протягом майже години ...

У Windows 7 / Windows 2008 R2 і вище всі події, що стосуються процесу застосування групових політик на клієнті доступні в журналі подій Event Viewer (eventvwr.msc) в розділі  Applications and Services Logs -> Microsoft -> Windows -> Applications and Services Logs -> Group Policy -> Operational.

Примітка. У журналі System залишилися тільки події, пов'язані з функціонування самої служби Group Policy Client (gpsvc).

Для аналізу часу застосування політик будуть корисні наступні EventID:

  • події 4016 і 5016 показують час початку і завищення процесу обробки розширень застосування GPO, причому в останньому зазначено загальну тривалість обробки расшіренія.К наприклад, на скріншоті нижче активізували фільтр журналу Group Policy -> Operational щодо подій 4016 і 5016. По тексту події 5016 можна побачити час обробки цього компонента GPOЗавершена обробка розширення Group Policy Local Users and Groups за 1357 мс.

  • подія 5312 містить список застосованих політик, а в подію 5317 є список відфільтрованих GPO.
  • У подіях 8000 і 8001 міститься, відповідно, час обробки політик комп'ютера і користувача при завантаженні комп'ютера. А в подіях 8006 і 8007 є дані про час застосування політик при періодичному обновленіі.Завершена обробка політики завантаження комп'ютера для CORP \ pc212333 $ за 28 з.

При аналізі журналу варто також звертати на час, що минув між двома сусідніми подіями, це може допомогти виявити проблемний компонент.

Налагоджувальний журнал служби GPSVC

У деяких ситуаціях буває корисним включити ведення отладочного журналу обробки GPO - gpsvc.log. За допомогою тимчасових міток у файлі gpsvc.log можна знайти компоненти GPO, які довго відпрацьовували.

Налагодження журнали Group Policy Preferences

Розширення Group Policy Preferences також можуть вести докладні лог завантаження кожного компоненті CSE (Client-Side Extensions). Налагодження журнали CSE можна включити в розділі GPO: Computer Configuration -> Policies -> Administrative Templates-> System-> Group Policy -> Logging and tracing

Як ви бачите, доступні індивідуальні налаштування для кожного CSE. В налаштуваннях політики можна вказати тип подій, що записуються в журнал (Informational, Errors, Warnings або все), максимальний розмір журналу і місце розташування балки:

  • Трейс файл призначених для користувача політик% SYSTEMDRIVE% \ ProgramData \ GroupPolicy \ Preference \ Trace \ User.log
  • Трейс файл політик комп'ютера% SYSTEMDRIVE% \ ProgramData \ GroupPolicy \ Preference \ Trace \ Computer.log

Порада. У тому випадку, якщо у вас в консолі gpedit / GPMC в розділі Group Policy відсутня підрозділ Logging and Tracing, потрібно буде завантажити і встановити шаблони Group Policy Preferences ADMX і скопіювати GroupPolicyPreferences.admx з% PROGRAMFILES% \ Microsoft Group Policy в локальний каталог PolicyDefinitions або в централізований каталог PolicyDefinitions на SYSVOL.

Після збору логів потрібно проаналізувати їх на помилки, а також спробувати знайти сусідні події, час між якими відрізняється на декілька хвилин.

Отже, в цій статті ми розглянули основні способи діагностики проблем довгого застосування групових політик на комп'ютерах домену. Сподіваюся, стаття буде корисною.