PING с Записью в Файл и Отображением Времени. Всем здравствуйте. Столкнулся с ситуацией когда надо весь PING залогировать с отображением времени. Устанавливать различные программы на сервер не хочется. Сразу пришла в голову мысль о CMD только как это сделать??? Начал копать интернет, нашел очень много различных скриптов, но что-то работать ничего не хотело. Как я ни бился как не старался но время никак не хотело прописываться в логах PING. Долго я провел время на различных тематических форумах, и наконец заработало.
PING с записью в файл:
Вот собственно и сам скрипт. Его можно немного отредактировать и пометь для своих целей. Если вы не хотите экспериментов, то смело пролистывайте вниз там вы найдете готовый zip архив.
Скрипт:
option explicit ‘ conHost адрес хоста для слежения ‘ conCheckInterval временной интервал const conHost = «8.8.8.8», conCheckInterval = 999 ‘ создаём объект: dim soWshShell : set soWshShell = CreateObject(«WScript.Shell») WScript.Quit Main() function WriteLog(strText) WScript.Stdout.WriteLine FormatDateTime(Time(), vbLongTime) & » » & strText end function function GetHostStatus(strHost) dim oPing : set oPing = soWshShell.Exec(«ping -n 1 » & strHost) dim strOut : strOut = «» do WScript.Sleep 100 if not oPing.Stdout.AtEndOfStream then strOut = strOut & oPing.Stdout.ReadAll end if loop until oPing.Status = 1 dim oRegExp : set oRegExp = new RegExp oRegExp.IgnoreCase = true oRegExp.Pattern = «[^ ]+:.+TTL=[^\r\n]+» dim oMatches : set oMatches = oRegExp.Execute(strOut) if oMatches.Count > 0 then GetHostStatus = oMatches(0).Value else GetHostStatus = «Inaccessible!..» end if end function function Main() do WriteLog(GetHostStatus(conHost)) WScript.Sleep(conCheckInterval) loop end function
Скачать готовый скрипт.
Далее все просто скопировали скрипт допустим в корень диска C: Открываем от имени Администратора командную строку и вводим cd C:/
Важно: В файле pingtime.log иногда не читабельный текст. Данная проблема возникает из-за кодировки. Чтоб избежать этого смените кодировку. Либо просто поменяйте текстовый редактор. Мне нравится Notepad++ он подсвечивает код и в нем очень много настроек.
Вот в принципе и все. Если кому то помог то значит статью писал не даром.
Скачать готовый скрипт.
Скачав архив вы найдете 3 файла.
- pingtime.vbs
- start.bat
- pingtime.log
Чтоб не заморачиваться рекомендую скачать и распаковать архив, запустить start.bat. И уже через пару секунд вы увидите pingtime.log начнет записывать пинги.