Пингуем устройства. Как быть? Устройства Online.
Модератор: immortal
- Kod.Begemot
- Сообщения: 358
- Зарегистрирован: Чт июн 20, 2013 5:53 pm
- Благодарил (а): 32 раза
- Поблагодарили: 42 раза
Re: Пингуем устройства. Как быть? Устройства Online.
Ну насчёт падений цикла - тут согласен, у меня тоже цикл падал, но только до тех пор, пока не устранил ошибку в методе, который исполнялся при изменении связанного с устройством статуса.
Сейчас цикл не падает. Но и реакция больно уж запоздалая. Причём "время следующего обновления" зачастую " в прошлом"...
Сейчас цикл не падает. Но и реакция больно уж запоздалая. Причём "время следующего обновления" зачастую " в прошлом"...
-
- Сообщения: 560
- Зарегистрирован: Ср сен 04, 2013 10:31 am
- Откуда: Самара
- Благодарил (а): 99 раз
- Поблагодарили: 140 раз
- Контактная информация:
Re: Пингуем устройства. Как быть? Устройства Online.
Есть предложение попробовать увеличить интервал проверки, например до 1 минуты.
-
- Сообщения: 708
- Зарегистрирован: Сб авг 18, 2012 10:21 am
- Благодарил (а): 26 раз
- Поблагодарили: 183 раза
Re: Пингуем устройства. Как быть? Устройства Online.
Все перепробовал, не помогает.ErmolenkoM писал(а):Есть предложение попробовать увеличить интервал проверки, например до 1 минуты.
- sergejey
- Site Admin
- Сообщения: 4284
- Зарегистрирован: Пн сен 05, 2011 6:48 pm
- Откуда: Минск, Беларусь
- Благодарил (а): 75 раз
- Поблагодарили: 1559 раз
- Контактная информация:
Re: Пингуем устройства. Как быть? Устройства Online.
Посмотрите логи работы цикла -- там вполне может быть отражена причина падения. Либо просто логи системы на момент падения.Jager писал(а):Я как то прописал все устройства в онлайн (30+), через день начал падать цикл Ping.Kod.Begemot писал(а):Ну так как одно устройство может влиять на всю группу?
Они ж не савязаны вроде....
Начал удалять по одному, в какой то момент падения прекратились. Вычислил что это за устройство, вернул ранее удаленные за исключением проблемного, неделю работало и вновь начало падать. В результате не пользуюсь online сейчас совсем, а хотелось бы.
Сергей Джейгало, разработчик MajorDoMo
Идеи, ошибки -- за предложениями по исправлению и развитию слежу только здесь!
Профиль Connect -- информация, сотрудничество, услуги
-
- Сообщения: 708
- Зарегистрирован: Сб авг 18, 2012 10:21 am
- Благодарил (а): 26 раз
- Поблагодарили: 183 раза
Re: Пингуем устройства. Как быть? Устройства Online.
Это было несколько месяцев назад, сейчас нет желания опять все устройства прописывать вручную.sergejey писал(а):Посмотрите логи работы цикла -- там вполне может быть отражена причина падения. Либо просто логи системы на момент падения.
Было бы прекрасно иметь модуль который бы сканировал все устройства в сети и автоматом прописывал, осталось бы только ручками назначить действия.
В модуле MegaD это хорошо реализовано.
- Kod.Begemot
- Сообщения: 358
- Зарегистрирован: Чт июн 20, 2013 5:53 pm
- Благодарил (а): 32 раза
- Поблагодарили: 42 раза
Re: Пингуем устройства. Как быть? Устройства Online.
Насчет сканера - поддерживаю, возможно - многим будет полезен. Только сканер нуно запускать вручную, а то подобавляются всякие временные девайсы....
А у себя я проблему с пингами вроде бы как решил... И даже уже реализовал "авторебут" зависших девайсов (ну тех, которые необходимо, разумеется, и тех, питанием которых я могу управлять). Сейчас "вылизываю" и тестирую решение. Остались мелочи.
Реализовал на костылях, конечно. Но работает, и быстро. Автоматом запускаю для каждого устройства батничек, которому скармливаю в параметрах имя объекта и IP адрес, батник пингует 6 раз, если ВСЕ 6 пингов не прошли - то вызываю метод "GoToOffline", в противном случае - "GoToOnline" соответственно... А там уже дело техники, что с полученными данными делать.
Понимаю, что можно пинговать и из PHP непосредственно, но пока не пробовал и в тонкостях процесса не разбирался.
А у себя я проблему с пингами вроде бы как решил... И даже уже реализовал "авторебут" зависших девайсов (ну тех, которые необходимо, разумеется, и тех, питанием которых я могу управлять). Сейчас "вылизываю" и тестирую решение. Остались мелочи.
Реализовал на костылях, конечно. Но работает, и быстро. Автоматом запускаю для каждого устройства батничек, которому скармливаю в параметрах имя объекта и IP адрес, батник пингует 6 раз, если ВСЕ 6 пингов не прошли - то вызываю метод "GoToOffline", в противном случае - "GoToOnline" соответственно... А там уже дело техники, что с полученными данными делать.
Понимаю, что можно пинговать и из PHP непосредственно, но пока не пробовал и в тонкостях процесса не разбирался.
- m-malva
- Сообщения: 291
- Зарегистрирован: Чт фев 26, 2015 1:38 am
- Откуда: Санкт-Петербург
- Благодарил (а): 16 раз
- Поблагодарили: 66 раз
- Контактная информация:
Re: Пингуем устройства. Как быть? Устройства Online.
Падает пинг через 1-2 дня
в логе ВОТ
log_2016-04-03-cycle_ping.php
.......
Checking %LG Smart.ip%
Checking %UserDevice01.ip%
Checking %UserDevice02.ip%
Fatal error: Cannot redeclare class telegram in C:\_majordomo\htdocs\modules\telegram\telegram.class.php on line 673
Как такое может быть?
в логе ВОТ
log_2016-04-03-cycle_ping.php
.......
Checking %LG Smart.ip%
Checking %UserDevice01.ip%
Checking %UserDevice02.ip%
Fatal error: Cannot redeclare class telegram in C:\_majordomo\htdocs\modules\telegram\telegram.class.php on line 673
Как такое может быть?
-
- Сообщения: 207
- Зарегистрирован: Вт июл 12, 2016 6:16 pm
- Благодарил (а): 2 раза
- Поблагодарили: 14 раз
Re: Пингуем устройства. Как быть? Устройства Online.
А зачем пинговать устройства и убивать их и так слабые батареи?
Берите запись об активных устройствах с роутеров по telnet/ssh/web
Берите запись об активных устройствах с роутеров по telnet/ssh/web
- nightwind
- Сообщения: 333
- Зарегистрирован: Вс июн 26, 2016 4:42 pm
- Откуда: Барановичи
- Благодарил (а): 28 раз
- Поблагодарили: 52 раза
- Контактная информация:
Re: Пингуем устройства. Как быть? Устройства Online.
Без лишнего понта и гемороя сделал класс device, с единственным методом check
$online = ping($this->getProperty('ip'));
if ($online==1) {$new="On";} else $new="Off";
$old=$this->getProperty('online');
if ($old !=$new) {
if ($new=="On") {
$this->setProperty("onlineAt",time());
$this->setProperty("onlineAtTime",date("H:i",time()));
$this->setProperty("online",'On');
}
else
{
$this->setProperty("offlineAt",time());
$this->setProperty("offlineAtTime",date("H:i",time()));
$this->setProperty("online",'Off');
}
}
хоть миллион устройств - все быстро и хорошо
$online = ping($this->getProperty('ip'));
if ($online==1) {$new="On";} else $new="Off";
$old=$this->getProperty('online');
if ($old !=$new) {
if ($new=="On") {
$this->setProperty("onlineAt",time());
$this->setProperty("onlineAtTime",date("H:i",time()));
$this->setProperty("online",'On');
}
else
{
$this->setProperty("offlineAt",time());
$this->setProperty("offlineAtTime",date("H:i",time()));
$this->setProperty("online",'Off');
}
}
хоть миллион устройств - все быстро и хорошо
- За это сообщение автора nightwind поблагодарил:
- Kod.Begemot (Вт июл 12, 2016 10:20 pm)
- Рейтинг: 1.16%
- nightwind
- Сообщения: 333
- Зарегистрирован: Вс июн 26, 2016 4:42 pm
- Откуда: Барановичи
- Благодарил (а): 28 раз
- Поблагодарили: 52 раза
- Контактная информация:
Re: Пингуем устройства. Как быть? Устройства Online.
хаха, а если там нет никакого роутера? а если он сдохнет? а если и есть - то как безпалевно брать? устройства ethernet, статика.Sas писал(а):А зачем пинговать устройства и убивать их и так слабые батареи?
Берите запись об активных устройствах с роутеров по telnet/ssh/web
и нафига в доме, где 100500 розеток или подвести можно куда надо питание без проблем - иметь слабые батареи???
arp наше все)