Function netstat {
Get-WmiObject Win32_PerfFormattedData_Tcpip_NetworkInterface | where{$_.Name -eq "vmxnet3 Ethernet Adapter"} | % { 'OK | Rx-B/s=
{0:0}; Tx-B/s={1:0}' -f ($_.BytesReceivedPersec), ($_.BytesSentPersec)}
}
Я создал приведенный выше сценарий PowerShell для графического отображения сетевого интерфейса с Nagios.
Меня беспокоит то, что nagios опрашивает клиента каждые 10 минут и выполняет этот сценарий. Таким образом, возвращается только статистика на момент опроса. Как я могу сделать отчеты в реальном времени, изменив скрипт так, чтобы данные собирались в реальном времени, или любым другим способом?
Вместо сценария PowerShell используйте CheckCounter
/Check_Pdh
команда из Модуль CheckSystem который поставляется с NSClient ++ - он в значительной степени создан для этого.
Имя счетчика, переданное в check_nrpe, будет примерно таким:
\Network Interface(vmxnet3 Ethernet Adapter)\Bytes Sent/sec
\Network Interface(vmxnet3 Ethernet Adapter)\Bytes Received/sec
Хотя вам может потребоваться избежать косой черты (см. Эта статья)