Archive for March, 2009
Система мониторинга серверов и сайтов с помощью тестов perl на iPhone
Есть такие мега штуки, как возможность написе unit тестов на perl, а так же не фреймворк iui, коорый позволяет делать html страницы с нативным интерфейсом айфона. К сожалению, про эти вещи я узнал не так давно, как бы мне хотелось (посыпаю голову пеплом). Я некоторое время думал, где-то применить их и тут подвернулась подходящая задачка (Кроме этого есть еще и чудестный бесплатный набор иконок, котороый я тоже тут заиспользовал).
У меня достаточно большая сетевая инфраструктура на работае + есть несколько машин дома. Я бы хотел иметь возможность, находясь где-то в пути проверить, что сейчас работает, а что нет. У меня есть всякие системы системы мониторинга, .но для их нормального использования мне нужно сидеть за компьютером. Я хотел сделать нечно простое, что просто показывает, что on, а что off. У меня есть iPhone и я решил, что вполне логично сделать нечно для него.
Таким образом родился крохотный проект — bmon — bessarabov’s monitoring system.
Эта штукенция состоит из 2-х частей:
- система мониторинга — запускатеся по crontab выполняет все perl тесты, определяет, что не работает и записывает в файл
- система отображения — perl cgi-bin скрипт, который на основе файлов с результатами работоты тестов формирует html страницу
Не отходя от кассы, вот ссылка на bmon.zip.
В архиве есть дока, там я понятно (я старался) написано, как запускать эту штуку + весь код (там всего ничего) так же достаточно подробно закомментирован.
Хочу подчеркнуть, что это не идеальное творение, но для моих целей подходит идеально =)
Вот пример, как я исползую perl тесты, для проверки:
# Если гугл не пигуется, значит интернет сломался
ok (ping(host => “google.com”, count => 3, size => 1024, timeout => 3 ), “internet is down”);
# Проверяем, работает ли сайт (в случае, если все нормально должен получить статус 200)
$mech->get( “http://example.com” );
is($mech->status(), 200, “example.com is down”);
А вот несколько синшотов:
Еще раз ссылка на эту программу.
Буду рад, если вам эта штуку пригодится, и вдвойне буду рад за любой feedback =)
Подключение по ssh с x11 forwarding по умолчанию
Я очень часто подключаюсь к разным линукс машинам с помощью вот такой команды:
ssh host -X -C
- -X — включается проброска x11 трафика
- -C — осуществляется сжатие трафика
Эту комманду я использую для того, чтобы запускать на удаленной машине всякие графические программы - медленно, но очень удобно (хотя, я, конечно же, предпочитаю консоль и всегда, когда возможно, пытаюсь использовать ее).
Вообщем, мне надоело каждый раз вводить параметры, и я решил один раз разобраться, как сделать так, чтобы это все было по умолчанию. Ответ нашелся в man 5 ssh_config. Всего-то нужно создать файл ~/.ssh/config, следующего содержания:
ForwardX11 yes
Compression yes
UPDATE 24.03.2009 — изначально я писал, что в файл ~/.ssh/config стоит писать так же CompressionLevel 9, но это неправильно. Вот фрагмент man ssh: Compression is desirable on modem lines and other slow connections, but will only slow down things on fast networks. . Действительно, с этой настройкой работает медленее, так что ее лучше не указывать.
С днем рождения, меня =)
Сегодня, 20 марта, точно так же как и в прошлом году, у меня день рождения. 27 лет.
Список подарков
В связи с приближающимся моим днем рождением (уже завтра, 20-ого), актуализировал свой wishlist — http://hachoo.ru/users/bessarabov/ =)





