3.8 KiB
Windows Collector Suite
3. Windows collectors
Коммит cc9e4a0 существенно усилил Windows/RDP контур, особенно windows/worktime-session-collector.ps1 и общую recovery библиотеку windows/ActivityWatch.Windows.Common.psm1.
Worktime Session Collector
worktime-session-collector.ps1 получил крупное расширение: новые helper-функции для session/process state, отдельную публикацию session events и более строгую нормализацию buckets.
Ключевые изменения:
Ensure-Bucketтеперь принимаетClientNameиBucketType, а не жестко прошитые значения;- добавлена поддержка bucket
aw-session-events_<host>; - collector публикует logon/session state и process transitions, если это включено конфигурацией;
- session records лучше отделяют active/disconnected/unknown состояния;
- downstream server-side bridge получает более качественные
sessionId,username,sessionNameи activity markers.
Process events
Флаг:
aw_windows_process_events_enabled: false
Он попадает в deployment config как:
sessionEvents.processEventsEnabled
По умолчанию флаг выключен во всех путях deploy/recovery: постоянная публикация process-level изменений в aw-session-events_<host> создает чрезмерный поток событий и быстро раздувает SQLite на AW server. Включать его следует только явно и временно для forensic/debug окна, после чего возвращать false.
Localized Administrator
Новый параметр:
aw_windows_builtin_administrator_name: "Администратор"
Назначение: явно фиксировать локализованное имя встроенной учетной записи Administrator с SID *-500.
Для текущего Windows host SHARKON2025 task name должен строиться как:
ActivityWatch Launch [SHARKON2025_Администратор]
Если task по SHARKON2025_Administrator не найден, recovery/deploy path обязан пробовать кириллическое имя Администратор. Это зафиксировано через:
- default vars в
ansible/deploy_aw_windows.yml; ansible/group_vars/aw_windows.yml;- example vars в
ansible/group_vars/windows.example.yml; - env override
AWATCH_RUS_BUILTIN_ADMINISTRATOR_NAME; - fallback в
Get-ActivityWatchBuiltInAdministratorName.
Recovery hardening
ActivityWatch.Windows.Common.psm1 усилил recovery path:
Get-ActivityWatchBuiltInAdministratorNameсначала смотрит env override, затем SID-500 lookup, затем host-specific fallbackSHARKON2025 -> Администратор;Normalize-ActivityWatchUsersстабилизирован для pipeline/list cases;- удаление scheduled tasks стало устойчивее к частично удаленным task definitions;
- recovery task может ориентироваться на live interactive session и запускаться в interactive logon context, когда это безопаснее для watcher'ов.
Операционный вывод: для RDP/console telemetry нельзя полагаться на task name с английским Administrator на русифицированной Windows. Локализованное имя должно быть частью deploy vars.