Опубликована версия Salmon 1.1.1 - простой системы мониторинга локальных и удаленных Linux-машин.
Идея проекта появилась после того, как я обнаружил, что на одной из моих машин systemd-сервис Syncthing не работал уже несколько недель, а я об этом ничего не знал и понял это лишь позднее, по косвенным признакам. Разворачивать полноценный стек мониторинга в моем случае было избыточно - мне просто хотелось иметь значок в трее, который начинает мигать и напоминает о проблемном сервисе, пока инцидент не будет устранен или временно отложен. Минимально работоспособная версия Salmon была написана еще в 2021 году, после чего несколько лет использовалась только для собственных нужд. Теперь проект приведен в более законченный вид и опубликован.
Основные возможности:
- Наблюдение за состоянием systemd-сервисов;
- Периодический запуск произвольных скриптов для проверки состояния системы;
- Объединение инцидентов с нескольких машин в одном приложении;
- Значок в трее, уведомления на рабочем столе и небольшое нативное окно;
- Возможность временно отложить отдельный инцидент.
Проект состоит из двух компонентов: фоновая служба salmon устанавливается на каждую наблюдаемую машину, выполняет проверки и сообщает об обнаруженных инцидентах; а десктопное приложение salmon-watch подключается к одной или нескольким таким службам и объединяет полученные данные в минималистичном интерфейсе.
Для подключения к удаленным машинам поддерживаются автоматически управляемые SSH-туннели, а также прямое соединение с использованием TLS и аутентификации по bearer-токену.
Серверная часть написана на Go, десктопное приложение - на Rust с использованием Slint. Проект распространяется под лицензией BSD 2-Clause.
>>> Демо gif
>>> GitHub проекта






