Как обнаружить проблему, возникающую в сторожевом демоне в Linux (Debian), до того, как сторожевой таймер перезагрузит ОС

c linux debian systems-programming

542 просмотра

1 ответ

Я работаю над проектом приложения для Debian Linux, в котором используется программный сторожевой таймер для мониторинга других сервисов с помощью файла PID, созданного сервисами.

Я следую инструкциям http://linux.die.net/man/5/watchdog.conf и установил его

apt-get установить сторожевой таймер

Механизм заключается в том, что сторожевой таймер проверяет наличие этих PID-файлов, которые сконфигурированы в / etc / watchdog, файл conf.

Я проверил это, остановив любую службу остановкой имени службы

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

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

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

В противном случае можно изменить скрипт инициализации сторожевого таймера в /etc/init.d/ для вызова пользовательской программы при остановке сторожевого таймера программного обеспечения, чтобы программист мог поддерживать счетчик в энергонезависимой памяти, чтобы избежать бесконечной перезагрузки по времени.

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

Автор: Awadhesh Maurya Источник Размещён: 08.11.2019 11:27

Ответы (1)


1 плюс

Сторожевой таймер предназначен в качестве последнего средства для спасения системы после сбоя после восстановления. Аппаратный сторожевой таймер физически сбрасывает процессор и используется для того, чтобы система не зависала в течение длительного времени.

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

Если вам нужно решение, которое обнаруживает, что процесс больше не отвечает, вы должны отделить его от сторожевого таймера.

Смотрите ответы на этот вопрос примерно так: Разработка процесса мониторинга для мониторинга и перезапуска процессов.

Автор: js441 Размещён: 20.08.2016 04:07
Вопросы из категории :
32x32