LINUX.ORG.RU
ФорумTalks

Пилю систему мониторинга

 ,


0

1

Здравствуй, ЛОР! Решил некоторое время назад запилить облачную систему для мониторинга серверов. Сейчас она может проводить следующие проверки:

  • ping
  • TCP-Port
  • HTTP OK
  • Время загрузки страницы
  • Поиск строки на сайте
  • Срок действия SSL-сертификата

а также, после установки Monitor (https://github.com/ismeup/Monitor, написан на Java) еще можно мониторить

  • Использование памяти
  • Использование диска
  • Load Average
  • Uptime

В случае сбоя какой-либо из проверок пользователь получит PUSH-уведомление в мобильное приложение, а десктопное приложение в трее покажет иконку с красным кружком.

Также есть возможность мониторинга серверов за NAT при помощи агента Watcher (https://github.com/ismeup/Watcher, написан на Java), который подключается к серверу приложения и получает от него задания на мониторинг.

К серверам также можно добавлять членов команды, которые будут получать уведомления, в случае сбоя

Сейчас платежные системы не подключены, так что пополнять баланс можно не тратя своих денег))

Написано сие поделие на Java, Flutter и PHP. Есть клиенты на Web, Android, iOS, Linux (пока только Snap x86_64), macOS на M1, и Windows 64-bit

Над проектом активно работаю и дорабатываю. Буду рад услышать какие плюшки еще нужны. Сейчас планирую добавить еще один тип проверки, который будет работать просто как напоминание, например, как срок оплаты сервера/домена, что, на мой взгляд, должно быть удобно для организации информации тем, кто арендует кучу разных серверов в разных дата-центрах.

Скажите, нужен ли такой велосипед и зарабатывабелен ли он?

Ссылка на проект: https://ismeup.net

★★★★★

Ответ на: комментарий от etwrq

Да, был не прав, там какая-то хрень на яве, а не полностью.

einhander ★★★★★
()

кажется нужна опция игнорировать ошибки SSL для HTTPS, сейчас нельзя добавить хост на котором настроен невалидный сертификат (показывает предупреждение в браузере), тем не менее в реальности особенно с учетом нынешней внешнеполитической ситуации такие вполне могут существовать не только для разработок

Syncro ★★★★★
()

скрипт системд для вочера, что-бы запускался сам

$cat /etc/systemd/system/ismeup.service


[Unit]
Description=Ismeup Watcher
After=network.target

[Service]
Type=simple

User=ismeup
Group=ismeup

WorkingDirectory=/opt/Watcher

ExecStart=java -jar /opt/Watcher/target/Watcher.jar

[Install]
WantedBy=multi-user.target
Syncro ★★★★★
()
Последнее исправление: Syncro (всего исправлений: 2)

Ты конечно пили, но вряд ли оно нужно. Процентов 80 твоего функционала - ваяется на пыхе за один вечер, без всяких «планирую», «активно работаю и дорабатываю».

Ну вот например мой «мониторинг» выглядит вот так, https://ibb.co/5nkpRgZ - при этом имея кучу доп. фишек типа перезапуска сервисов, очистки памяти\свопа, проверку\очистку mail queue и тд.

При этом кучу файлов на сервер ставить не надо, все умещается в одном пых-демоне, запускаемом с командной строке, а сам «мониторинг» без активных действий будет работать даже если скрипт запустить в браузере без root-привилегий.

Зачем такую херню «пилить», выставлять в продакшон - я хз, это что-то на уровне баш-скрипта для меня.

windows10 ★★★★★
()
Ответ на: комментарий от MKuznetsov

Время отдачи по HTTP

На Java сделан основной Worker, который крутится на сервере и управляет задачами, балансами, отправкой уведомлений и проч., Watcher - клиент для Worker, который получает от него задания и шлет ответы, а также Monitor - Web-сервер, который сообщает информацию о состоянии сервера.

Само приложение сделано на Flutter

r0ck3r ★★★★★
() автор топика
Последнее исправление: r0ck3r (всего исправлений: 1)
Ответ на: комментарий от stalkerbss

Ну целью моего поделия было создать систему, которая с минимальными телодвижениями сообщит если что-то идет не так

r0ck3r ★★★★★
() автор топика
Ответ на: комментарий от Syncro

Спасибо! Внедрю. Как думаешь, стоит сделать bash-скрипт, который его сам установит с правкой путей или просто поместить как ismeup_watcher.service.sample ?

r0ck3r ★★★★★
() автор топика
Ответ на: комментарий от r0ck3r

вообще, такие скрипты должны устанавливаться во время postinstall .deb, .rpm или иного пакета. Но и как sample-образец будет хорошо и скрипт или таск мавена может пригодиться и можно было бы и инструкцию по развертыванию пошаговую написать.

Syncro ★★★★★
()
Ответ на: комментарий от Syncro

ок. Больше спасибо за помощь!

r0ck3r ★★★★★
() автор топика
Ответ на: комментарий от r0ck3r

Сколько памяти на линуксе отжирает приложение на флутере? А если только хелловорлд? У меня на свинге порядка 80 МБ на хелловорде, а на джавафыксе улетает под 200 МБ.

foror ★★★★★
()
Ответ на: комментарий от foror

На старте 35 МБ, дальше жиреет до 80. Но оно запущено из снапа. Без него может меньше было бы

r0ck3r ★★★★★
() автор топика
Ответ на: комментарий от r0ck3r

Действительно, нужно попробовать проработать возможность развертывания мониторинга клиентами у себя.

Не нужно. Сделай лучше то что пытался, но сделай хорошо. Что нужно клиенту поймёшь когда будут клиенты. Распылять силы вредно. Плюс могу сказать что корп клиентам внешние пинговалки тоже нужны.

upcFrost ★★★★★
()

Небольшой отзыв по тому что вижу:

  • проверь английский на сайте, там есть ляпы
  • проверь вёрстку на мобильниках, в районе кнопок аппсторов она уехала
  • для pay-as-you-go лучше сделать хоть какую-то тарифную сетку. Чтоб хоть как-то оценить стоимость без регистрации и прочего.
upcFrost ★★★★★
()
Ответ на: комментарий от upcFrost

Большое спасибо! Замечания приняты. Тарифная сетка была, но мне ее заплевали тут. В любом случае, она нуждалась в доработке. Посмотрю как это сделано у конкурентов и сделаю что-то похожее

r0ck3r ★★★★★
() автор топика
Ответ на: комментарий от targitaj

Нет, я не планирую конкурировать с Zabbix, так как у моего приложения немного другая ЦА. Zabbix требуется устанавливать, настраивать и, если он собирает информацию снаружи, то выделять под него отдельные мощности. Он дает практически безграничные возможности для мониторинга, было бы желание это все настраивать. Данное же приложение - это монитор доступности твоего ресурса, которое будет тебя уведомлять о нештатных ситуациях без лишних телодвижений

r0ck3r ★★★★★
() автор топика
Ответ на: комментарий от r0ck3r

Угу... Но потом тебе захочется «пингануть» сервис-машину за шлюзом... и панеслась. Внезапно, ты выяснишь, что без агента на машинах не обойтись. А потом захочется посмотреть историю событий. А потом догадаешься поставить промежуточный сборщик. Штош...

targitaj ★★★★★
()

Чем оно лучше Zabbix или nagios?

slowpony ★★★★★
()
Ответ на: комментарий от targitaj

История событий есть. И мониторить машины за шлюзом тоже можно. И агент для машин тоже есть

r0ck3r ★★★★★
() автор топика
Последнее исправление: r0ck3r (всего исправлений: 1)
Ответ на: комментарий от r0ck3r

Тарифная сетка была, но мне ее заплевали тут.

На лоре могут заплевать что угодно. Тут скорее нужно посмотреть со стороны клиента. Вот зашёл на сайт, что ты хочешь увидеть? Скорее всего «что, зачем, почём» и call-to-action кнопку. Попробуй от этого идти.

Про то что кому нужно - всем нужна волшебная кнопка «зделать крута». Подумай какую аудиторию хочешь на данном этапе, и попробуй сделать для неё. Например для sme облачный вариант вполне пойдёт, главное чтоб просто, понятно и надежно. А потом юзеры сами скажут, может ты думал смс а они захотят слак или teams. Сделать «для всех и сразу» ресурсов даже у big five не хватит.

upcFrost ★★★★★
()
Ответ на: комментарий от upcFrost

Спасибо! Сейчас потрачу время на проработку сайта, чтобы довести его до приемлемого уровня, займусь текстом и добавлю калькуляторы расценок. Потом вернусь к работе над самим проектом. Еще раз спасибо!

r0ck3r ★★★★★
() автор топика
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)