Как лучше организовать интерактивное слежение/управление удалённой машиной через ssh (linux)?

Имею сервер на котором запущенно n-ое кол-во процессов,
каждый из них пишет лог.
Нуждаюсь в частом просмотре разных комбинаций логов online (tail -F), запуске bash команд/скриптов в определённых моментах.
Хочу написать утилиту (web аппликацию) для этих нужд.
Клик по кнопке по замыслу должен будет запускать определённую bash команду на удалённой машине.
Online хочу видеть что происходит в логах/dmesg/etc.

Подскажите как организовать всё так, что бы интерактивное управление происходило используя одно ssh подключение?

Пока нашёл только подобный способ:
sshpass -p pass ssh otherhost << EOF
 > ./opt/scripts/some_script1.sh
 > ./opt/scripts/some_script2.sh
 > ./opt/scripts/some_script3.sh

но вся секвенция команд выполнится только после завершающего EOF а не в момент локального вписывания...

Так же прошу направить - как лучше организовать приход потоков (от tail -F , dmesg, etc) (в идеале всё в том же одном ssh)?

Интересно будет узнать и о готовых универсальный решениях, linux утилитах, библиотеках.

Спасибо!
  • Вопрос задан
  • 447 просмотров
Пригласить эксперта
Ответы на вопрос 1
voidnugget
@voidnugget
Программист-прагматик
Сейчас вообще принято индексировать логи в движках для полнотекстового поиска и подчищать за ненадобностью. Чаще всего используют logstash fluentd flume с Kibana, индексируется эт всё в ElasticSearch. Всё автоматом обновляется в реальном времени, можно даже красивые кастомные графики рисовать на любой вкус.
Вот и вот есть немного устаревшие примеры использования. Kibana сейчас является одним из основных инструментов для обработки логов в Яндексе.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы