Очередная самописная фигнюшка

Dimon89

Если вдруг кому интересно, написал маленький пингер, висящий Always On Top, полупрозрачный (настраиваемо 0-255). Удобно для мониторинга текущего состояния сетки\инета в наше нестабильное время.
Вот скрин двух запущенных экземпляров программы (прозрачность 200).

Ping - текущий пинг, Count - количество попыток, Mid - средний пинг, Perc - процент успешных пингов, Errors - количество ошибок, Last - последняя ошибка (RTO = Request TimeOut).
Можно запускать из командной строки как-нибудь типа "pinger forum.local" или без параметров и ввести имя хоста в соответствующем окошке. Двойной клик по любому пустому месту формы (не по надписям) поставит пинг на паузу или снимет с паузы.

dangerr

А сырцы? :(

alekc34

маза, это боян, но еще прикольно было бы звук прикрутить, когда ответы от хоста идут
(боян в смысле про звук)

YUAL

а рпмчик?

serega1604

у меня в коньках подобная хрень есть.
> Интересно, как я могу помочь в борьбе с французским законодательством?
Бокотируй французские товары. Пей чай без булок.

Dimon89

Вряд ли кому-то здесь интересны сырцы под дельфи 2k9. Могу выложить pas-файл непосредственно пингующего потока.
Текущие планы на "когда-нибудь":
1) подсветка светло-красным, когда пинга нет, и светло-зеленым, когда он есть (опционально, через ini)
2) отметка "когда в последний раз наблюдалось 10 успешных пингов подряд" - т.е. когда пропала сеть
2а) возможно аналогичная отметка "когда сеть появилась"
3) режим "ожидания сети", запускающий нужную программу или проигрывающий звук в момент появления сети
основная проблема: не допустить перегруженности интерфейса и увеличения размеров панельки

spitfire

У меня такая проблема решена более топорно:
#!/bin/sh
while true
do
ping -q -c 1 $1 > /dev/null && eject && break
sleep 30
done
exit 0

Как только пинганётся — выдвинуть дисковод.

klyv


This program is intended for use in network testing, measurement and management. Because of the load it can impose on the network, it is unwise to use ping during normal operations or from automated scripts.

spitfire

А вообще да, интереснее будет заюзать fping наверное. Как раз, на несколько адресов сразу.
Да и описание:
Unlike ping , fping is meant to be used in scripts

spitfire

Спасибо за замечание, переписал с fping.
#!/bin/sh
PING=/usr/sbin/fping
while true
do
$PING -q $@ && eject && break
sleep 30
done
exit 0

dangerr

выдвинуть дисковод
Ну ты извращенец :grin:
У меня теперь возникла идея написать такой скрипт на lua, чтобы статистику выводить в статусной панельке ion.

spitfire

Я сейчас почитываю man xosd, через него весьма приятно выводить такого рода информацию.

dangerr

Вряд ли кому-то здесь интересны сырцы под дельфи 2k9.
А не важно. Если делаешь прогу для людей и не планируешь получить с нее деньги, то надо выкладывать сорцы в том же архиве, что и бинарник. Может кто-нить, кто знает дельфи решит твою прогу улучшить.

dangerr

На панельку wm имхо приятнее выводить. И вообще приятно, когда wm поддерживает скрипты. :)

pitrik2

Вряд ли кому-то здесь интересны сырцы под дельфи 2k9.
а вдруг у тя там виряк?

Andbar

А не важно. Если делаешь прогу для людей и не планируешь получить с нее деньги, то надо выкладывать сорцы в том же архиве, что и бинарник. Может кто-нить, кто знает дельфи решит твою прогу улучшить.
Ура, наконец-то имеется железное подтверждение того, что QIP - не для людей! =) =) =) =) =)

356ft85

Врядли , многие ведь хвалят его, значит он им нравится. ну а те 1% юзеров, что умеют прогать на C++ - кто о них думает?

Andbar

Врядли , многие ведь хвалят его, значит он им нравится. ну а те 1% юзеров, что умеют прогать на C++ - кто о них думает?
уж о C++ они думают меньше всего, тем более, что QIP на Delphi написан.

YUAL

Как только пинганётся — выдвинуть дисковод.
У меня таже хрень только фанфары играют. Хочется с чтоб с прозрачной менюшкой, таймером и желательно статистика в файлик ping.log

Andbar

Я в своё время использовал nnCron, его можно заставить пихать в трей иконку, символизирующую о доступности определённого хоста.

Serab

А вообще да, интереснее будет заюзать fping наверное. Как раз, на несколько адресов сразу.
Да и описание:
Unlike ping , fping is meant to be used in scripts
Там дальше написано
Unlike ping , fping is meant to be used in scripts, so its output is designed to be easy to parse.
Так что это немного о другом =)

spitfire

output мне в любом случае не нужен, мне достаточно return value. А fping обладает тем преимуществом в моём случае, что пингует сразу несколько машин.

Serab

Просто в том посте ты противопоставлял fping ping'у в плане того, что в мане к ping написано, что его не стоит использовать в скриптах, а в мане fping написано, что он для этого и придуман.
Но причины при этом разные и fping не отменяет нагрузок на сеть, упоминающихся в мане ping'а.

spitfire

Про нагрузки — это процитировал. А прочитав его пост я совершенно внезапно вспомнил про fping, который в этом случае будет удобнее потому что умеет много хостов пинговать сразу.
Таки да, нагрузку оно совершенно не отменяет, и таки повторюсь, что один пинг (в случае fping'а — несколько) раз в 30 секунд вряд ли сильно засорят сеть.

kill-still

А нафига спрашивается велосипед?
Уже давно можно сделать вплоть до отправки смс всему отделу, если что-то отвалилось...

Sharp

А еще есть SmokePing, он может мерить не только количество отвеченных пакетов, но и их задержки. И не только по icmp, но и реакцию сервера на HTTP, SSH, DNS etc запросы.
Но здесь человек делиться своим успехом, по-моему надо просто за него порадоваться.
Оставить комментарий
Имя или ник:
Комментарий: