Как использовать Get-EventLog для получения того же результата, что и Get-WinEvent в PowerShell? - PullRequest
0 голосов
/ 19 марта 2019

Я работаю на Windows Server 2003, и мне нужно получить что-то вроде следующего с помощью этой команды Get-WinEvent -ListLog Application, Security, System

LogMode   MaximumSizeInBytes RecordCount LogName
-------   ------------------ ----------- -------
Circular            33554432       15188 Application
Circular           201326592      298459 Security
Circular            33554432       10074 System

Мне нужен результат свойства MaximumSizeInBytes, но Get-WinEvent не поддерживается на Server 2003

Я вижу, что Get-EventLog имеет свойство с именем MaximumKilobytes, но результат, который я получаю, отличается

Я хотел бы знать, можно ли выполнить команду локально, чтобы получить тот же результат

Ответы [ 2 ]

1 голос
/ 19 марта 2019

Во-первых, почему вы все еще на WS2K3? ---; -} Прежде чем вы ответите, я знаю, я знаю, некоторые организации ... правильно !? ; -}

Тем не менее, если у кого-то на этом сайте нет WS2K3, у него нет возможности проверить вещи.

Этот командлет, не поддерживаемый в WS2K3, не является ошибкой или отсутствующей вещью. Командлеты соответствуют версии ОС и PowerShell.

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

Вот почему существует неявное PSRemoting.

Удаленный неявный путь

Использование неявного удаленного взаимодействия PowerShell для импорта удаленных модулей

В основном вы видите, что это используется для командлетов ADDS, Exchange, O365 и т. П., Но вы можете сделать это для любого модуля / командлета на удаленном хосте, чтобы использовать его в локальном сеансе. Используя неявное удаленное взаимодействие, командлет действительно не работает в вашей системе, он проксируется. Просто убедитесь, что вы используете аргумент -prefix, чтобы избежать появления дублирующих командлетов.

Пример * * тысяча двадцать-одна

$RemoteSession = New-PSSession -ComputerName 'RemoteHost' -Credential (Get-Credential -Credential "$env:USERDOMAIN\$env:USERNAME")
Import-PSSession -Session $RemoteSession -Prefix RS

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

Get-RSWinEvent

Теперь, как я уже сказал, у меня нет коробок WS2K3, с которыми можно связываться, так как я все WS2K12R2 / 16/19. Тем не менее, дать ему шанс.

0 голосов
/ 20 марта 2019

Поскольку никто не дал удовлетворительного ответа, я просто опубликую ответ, который нашел в Интернете здесь . Следующая команда спасла мне жизнь:

Get-WmiObject -Class Win32_NTEventLogFile | Select-Object -Property MaxFileSize, LogfileName, Name, NumberOfRecords

Я пока не буду выбирать свой собственный ответ в качестве окончательного, поэтому, если вы можете придумать лучшее решение, пожалуйста, не стесняйтесь добавлять его:)

Спасибо за просмотр моего поста и пытались помочь

...