Сообщение об ошибках загрузки

Автор sonny363, Вчера в 04:18:50

« назад - далее »

0 Пользователи и 2 гостей просматривают эту тему.

sonny363

Добрый день, коллеги. Хочется странного.
Время от времени приходится перезагружать какой-нибудь из своих серверов. Как правило, всё проходит нормально, но я всё-таки стараюсь отслеживать процесс загрузки - нет ли каких ошибок.
Вопрос, собственно, такой: есть ли какой-нибудь способ автоматизации контроля процесса загрузки - чтобы при ошибке запуска чего-либо генерировалось соответствующее сообщение (в идеале - на почту)?
Чтобы не просматривать портянки dmesg в поисках неизвестно чего.

Грубо говоря: я сейчас смотрю на поток данных на консоли и вижу бегущие зелёные "ОК", если больше ничего не вижу - не беспокоюсь. Если же мелькнуло что-то красное - надо реагировать. Хотелось бы, чтобы информация об этом красном куда-то попадала в особо оговоренное место :)

Лия

#1
Цитата: sonny363 от Вчера в 04:18:50Хотелось бы, чтобы информация об этом красном куда-то попадала в особо оговоренное место :)
systemctl --state=failed

22 ноября 2024, 11:34:56
Цитата: sonny363 от Вчера в 04:18:50Вопрос, собственно, такой: есть ли какой-нибудь способ автоматизации контроля процесса загрузки - чтобы при ошибке запуска чего-либо генерировалось соответствующее сообщение (в идеале - на почту)?
Можно так:

sudo mkdir /etc/systemd/system/service.d

/etc/systemd/system/service.d/on-failure.conf
[Unit]
OnFailure=fail@%n.service

/etc/systemd/system/fail@.service
[Unit]
Description=%I Instance of Fail Service

[Service]
ExecStart=/bin/bash -c '/root/log-failed.sh %i'
StandardOutput=journal

Тогда /root/log-failed.sh будет вызываться для каждого юнита, запуск которого завершился ошибкой с аргументом его имени (например, wpa_supplicant.service) :)

sonny363

Цитата: Лия от Вчера в 11:30:07/root/log-failed.sh будет вызываться для каждого юнита, запуск которого завершился ошибкой
Ух ты ж, красотень-то какая!
Спасибо, буду пробовать.