LINUX.ORG.RU

Salmon - значок в трее и уведомления о проблемах с systemd-сервисами и не только

 , , , ,

Salmon - значок в трее и уведомления о проблемах с systemd-сервисами и не только

0

4

Опубликована версия Salmon 1.1.1 - простой системы мониторинга локальных и удаленных Linux-машин.

Идея проекта появилась после того, как я обнаружил, что на одной из моих машин systemd-сервис Syncthing не работал уже несколько недель, а я об этом ничего не знал и понял это лишь позднее, по косвенным признакам. Разворачивать полноценный стек мониторинга в моем случае было избыточно - мне просто хотелось иметь значок в трее, который начинает мигать и напоминает о проблемном сервисе, пока инцидент не будет устранен или временно отложен. Минимально работоспособная версия Salmon была написана еще в 2021 году, после чего несколько лет использовалась только для собственных нужд. Теперь проект приведен в более законченный вид и опубликован.

Основные возможности:

  • Наблюдение за состоянием systemd-сервисов;
  • Периодический запуск произвольных скриптов для проверки состояния системы;
  • Объединение инцидентов с нескольких машин в одном приложении;
  • Значок в трее, уведомления на рабочем столе и небольшое нативное окно;
  • Возможность временно отложить отдельный инцидент.

Проект состоит из двух компонентов: фоновая служба salmon устанавливается на каждую наблюдаемую машину, выполняет проверки и сообщает об обнаруженных инцидентах; а десктопное приложение salmon-watch подключается к одной или нескольким таким службам и объединяет полученные данные в минималистичном интерфейсе.

Для подключения к удаленным машинам поддерживаются автоматически управляемые SSH-туннели, а также прямое соединение с использованием TLS и аутентификации по bearer-токену.

Серверная часть написана на Go, десктопное приложение - на Rust с использованием Slint. Проект распространяется под лицензией BSD 2-Clause.

>>> Демо gif

>>> GitHub проекта



Проверено: hobbit ()
Последнее исправление: dimonomid (всего исправлений: 9)

админы локалхостов в восторге

gagarin0
()

Разворачивать полноценный стек мониторинга в моем случае было избыточно - мне просто хотелось иметь значок в трее

Во-во. Точно такое ощущение у меня было, когда я хотел поднимающийся с полпинка шареный блокнотик с клипбордом для маленькой локалки, а мне всем ЛОРом советовали кто Некстклауд, кто Упытор Ноутбук, кто Жоплин Сервер (ничего против перечисленного не имею, это очень полезные инструменты, но в моём случае это была пушечная батарея супротив воробья).

А ты молодец, не только захотел, но собрался и написал. Уважаю.

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

У него узкоспециализированная тулза - следить за сервисами systemd, а не логи мониторить. Далее первого предложения читал?

Gonzo ★★★★★
()

trollmode> Go вместо Rust? Нет пути!

unclestephen ★★★★★
()
Последнее исправление: unclestephen (всего исправлений: 1)

Вещь полезная. Пользуюсь Beszel и навайбкоженной выезжающей панелькой с важными показателями. Вообще, с приходом ИИ ценность кода резко упала. Теперь даже столяр может себе за пару дней накодить программу управления и мониторинга деревообрабатывающим станком с контролем через облако, сбором статистики и голосовым управлением.

Наступает эпоха одноразового кода. Надо что-то - навайбкодил. Не надо - выбросил в помойку.

Puzan ★★★★★
()
Последнее исправление: Puzan (всего исправлений: 3)

А напрямую через dbus состояние получать не вариант без демона-прослойки, или там не всё доступно от юзера?

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

Не на помойку, а на гитхаб!

такими темпами это скоро будут синонимы.

steq
()
Ответ на: комментарий от Radjah

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

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

dimonomid
() автор топика
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.