Как определить наличие новой службы на сервере Windows с помощью сценария PowerShell

Нам необходимо обнаружить установку новых сервисов на наших серверах приложений. Это серверы Windows 2016 и 2019. Я решил написать и запланировать PS-скрипт, который будет запускаться два раза в день. Этот скрипт утром подсчитает количество существующих сервисов. Вечером он снова заработает. Если вечером количество служб выше, в журнале просмотра событий будет создана запись. Это будет обнаружено SCOM и сгенерировано оповещение.

Это то, что я сделал до сих пор:

          $Kaizen = (Get-Service | Measure.Object).Count
    $Vic = 800 #The 800 is just an arbitrary number used for testing purposes

        If($Vic -gt $Kaizen) 
           {
            Write-Eventlog -LogName "Windows Powershell" -Source 'Pwershell' -Entrytype Error 
            -EventId 45874 -Message "New Service detected"
           }

Приведенный выше сценарий работает, но я бы предпочел не использовать статические данные, как в $Vic. Предпочтительно, чтобы сценарий фиксировал количество сервисов утром, сохранял его и повторно использовал для сравнения вечером. Во-вторых, нам нужно, чтобы сценарий включал имя или описание новой службы, обнаруженной в -Message.

0 ответов

Другие вопросы по тегам