Я пишу сценарій powerhell для захоплення таких лічильників сервера SQL:
SQL Server: Менеджер пам'яті: Загальна пам'ять сервера (КБ)
SQL Server: Менеджер пам'яті: Цільова пам'ять сервера (КБ)
Моя машина має 3 екземпляри SQL-серверів, тому я хочу, щоб цей скрипт динамічно захоплював усі лічильники і повідомляв про значення лише для 1 зразка. я спробував написати наступне:
Get-counter -List *SQL*Memory* | Select paths, counter | format-list # doesn't display full list
Get-counter -List *SQL*Memory* | Select paths, counter | where {_.counter -like "*server memory*"} |format-list # displays nothing
врешті-решт, я хочу запустити це на декількох серверах з -computername
параметром, і тому я хочу, щоб він динамічно фіксував.
Чи може хто-небудь допомогти мені у пошуку того, чого не вистачає? Далі йде точний сценарій, який я виконую:
Function checkTransactionsPerSecond([string] $Hostname )
{
(Get-Counter -ListSet "*Databases").Counter | Where {$_ -like "*\Transactions/sec"} #this returns nothing
# $listofmetrics = (Get-Counter -ListSet "*Databases").Counter | Where {$_ -like "*\Transactions/sec"}
# $listofmetrics | Get-Counter
}
clear
foreach ($Hostname in Get-Content "D:\TEMP\machines.txt")
{
Write-Host $Hostname
checkTransactionsPerSecond($Hostname)
}
Спасибі заздалегідь