Форум TRACE MODE: техническая поддержка Послать новую тему / Post New Topic  Послать ответ / Post A Reply
мой профиль / my profile авторизация / login | регистрация / register | поиск / search | часто задаваемые вопросы / faq | начало / forum home

  Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
» Форум TRACE MODE: техническая поддержка » Пользователи для пользователей » Пользователи для пользователей » Опрос оборудования командой ping с помощью Trace mode

   
Автор / Author Тема / Topic: Опрос оборудования командой ping с помощью Trace mode
rudiyvv
Junior Member / Новичок
Участник № / Member № 6459


Icon 1 отправлено / posted      Профиль для / Profile for rudiyvv           Редактировать/удалить сообщение / Edit/Delete Post   Вставить в ответ текст исходного сообщения  / Reply With Quote 
Здравствуйте, уважаемые читатели и писатели форума!
Хочу поделиться с вами одним из технических решений. Решение не претендует на высший бал, для некоторых оно может показаться простым и не заслуживающим описания, другим может быть полезно.
Существует задача проверять наличие сетевого оборудования (коммутатора в частном случае) в сети, при отсутствии ответа выдавать сообщение диспетчеру. Из Trace Mode можно к оборудованию обращаться по протоколу SNMP, но если этот протокол оборудованием мне поддерживается, остается команда ping. На языке Autoit пишется небольшой скрипт:

$timeout = Ping("192.168.0.1",1000)
$err = @error
$file = FileOpen("call_ping_1.dat", 2)
FileWriteLine($file, "A000 " & $timeout)
FileWriteLine($file, "A001 " & $err)
FileClose($file)

Затем этот скрипт можно скомпилировать в случае установленной программы autoit-v3-setup, получится exe файл программы.
Задача программы - записать в файл call_ping_1.dat значение таймаута ответа и код возвращаемой ошибки в случае отсутствия ответа.
Содержимое файла call_ping_1.dat после работы программы будет следующим:

A000 38
A001 0

Первая строка содержит время ответа устройства в мс, вторая - код ошибки.
Коды ошибок:
1 = хост в автономном режиме
2 = хост недостижим
3 = хост неверно указан
4 = другие ошибки
Чтобы передать эти данные в Trace mode, необходимо в IDE в узле создать канал call с именем call_ping с двумя аргументами, в МРВ для чтения данных послать 1 в атрибут 128 "read" канала. Данные передадутся в МРВ. Запуск скрипта - через канал call с типом вызова exec.
Нужно учесть следующие моменты:
- нужно подождать, пока отработает скрипт, а лишь затем считывать данные в МРВ.
- каждый вызов опроса приводит к перезаписи файла, поэтому нужно соблюдать баланс между быстродействием диагностики связи и ресурсами на чтение запись у оборудования.

Сообщения / Posts 1 | Из / From: Россия  |  IP / IP: IP адрес / IP address | Report this post to a Moderator
   

Quick Reply
Сообщение / Message:

HTML код не разрешен. / HTML is not enabled.
UBB код разрешен. / UBB Code is enabled.

Значки Graemlins / Instant Graemlins
   


Послать новую тему / Post New Topic  Послать ответ / Post A Reply Закрыть тему / Close Topic   Feature Topic   Переместить топик / Move Topic   Удалить топик / Delete Topic Следующая старая тема / next oldest topic   Следующая новая тема / next newest topic
 - Printer-friendly view of this topic
Перейти к / Hop To


Новости АСУ ТП / News | SCADA / HMI | Обучение / Trainings | Свяжитесь с нами / Contact Us



Powered by Infopop Corporation
UBB.classic™ 6.7.2