PING с записью в файл и отображением времени.

Всем здравствуйте. Столкнулся с ситуацией когда надо было весь PING залогировать с отображением времени. Как я ни бился как не старался но время никак не хотело прописываться в логах PING.
Но на просторах интернета наткнулся на очень хороший и скрипт, выполнит PING, сохранит в лог и покажет время каждого пинга.



Скрипт:
option explicit
' conHost -- адрес хоста для слежения
' conCheckInterval -- временной интервал
const conHost = "8.8.8.8", conCheckInterval = 1000


' создаём объект:
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:/
PING с записью в файл и отображением времени.

Далее водим команду:

 cscript //nologo pingtime.vbs>pingtime.log

PING с записью в файл и отображением времени.

 Рядом со скриптиком появится файлик pingtime.log, открыв его вы увидите пинг и время пинга вот такого формата.
PING с записью в файл и отображением времени.

Вот в принципе и все. Если кому то помог то значит статью писал не даром. 

Комментарии

  1. Спасибо большое помогло.

    ОтветитьУдалить
  2. с горем попалам сделал.... а вообще током нихрена не понятно....

    ОтветитьУдалить
    Ответы
    1. Что именно не понятно??? Что поменять чтоб было более понятней?

      Удалить
  3. кириллицу не пишет в логе. Набор символов

    ОтветитьУдалить
    Ответы
    1. Поменяйте кодировку в вашем логе и будет счастье.

      Удалить
  4. при записи в файл ползут иероглифы. Как исправить???

    ОтветитьУдалить
  5. Думаю стоит попробовать поменять кодировку файла .txt

    ОтветитьУдалить

Отправить комментарий

Popular Posts

Установка Active Directory Domain Services на Windows Server 2012 R2

TCP Port Ping с помощью PowerShell.