Доброго все дня!
Подскажите знающие люди, может уже было где то. Или как подобное реализовать.
Идея: перезагрузка MD по событию.
у меня MD крутится на RPi3 а сама база на NAS Synology. Nas делает 1 раз в неделю бэкап системы и соответственно база отваливается, при этом MD уходит в ступор и пишет бесконечный лог, пока вся карта не забьется...
1. пинговать порт базы и при дисконекте, через какое то время перезапустить MD или всю RPi (почему через какое то время? потому что бэкап идет какое то время и в течении этого времени связи нет.)
2. решить вопрос с заполняющимся до бесконечности файла лога(ов).
3. может вообще есть решение проще.....
Перезагрузка MD по пингу
Модератор: immortal
- blackangel
- Сообщения: 148
- Зарегистрирован: Пт окт 21, 2016 2:00 pm
- Благодарил (а): 31 раз
- Поблагодарили: 13 раз
-
- Сообщения: 3006
- Зарегистрирован: Чт авг 21, 2014 8:28 am
- Откуда: Киров, Россия
- Благодарил (а): 400 раз
- Поблагодарили: 1753 раза
- Контактная информация:
Re: Перезагрузка MD по пингу
А что за логи забиваются? И что в них пишется при этом?
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Мой CONNECT | Блоги | Telegram
- blackangel
- Сообщения: 148
- Зарегистрирован: Пт окт 21, 2016 2:00 pm
- Благодарил (а): 31 раз
- Поблагодарили: 13 раз
Re: Перезагрузка MD по пингу
Если память не изменяет, то те что в папке debmes вроде... что именно там. Посмотрю позже.skysilver писал(а):А что за логи забиваются? И что в них пишется при этом?
Отправлено с моего iPhone используя Tapatalk
- blackangel
- Сообщения: 148
- Зарегистрирован: Пт окт 21, 2016 2:00 pm
- Благодарил (а): 31 раз
- Поблагодарили: 13 раз
Re: Перезагрузка MD по пингу
СпойлерПоказать
blackangel писал(а):Если память не изменяет, то те что в папке debmes вроде... что именно там. Посмотрю позже.skysilver писал(а):А что за логи забиваются? И что в них пишется при этом?
Отправлено с моего iPhone используя Tapatalk
сегодня был бэкап. MD естественно отвалился. Перезагрузил его с работы по SSH. Отвалился как я уже писал из за того что потерял связь с базой.
при этом весь диск забился....
вот что имеем:
папка debmes:
и вот что в этой папке.... честно говоря вытягивать файл 2018-03-30_error.log который весит полтора гига... нет желания... но если ради дела нужно... могу попробовать его открыть...
естественно до отвала от базы, все в логах хорошо и файлы весят по несколько кило.
- blackangel
- Сообщения: 148
- Зарегистрирован: Пт окт 21, 2016 2:00 pm
- Благодарил (а): 31 раз
- Поблагодарили: 13 раз
Re: Перезагрузка MD по пингу
[quote="blackangel"][/quote]
посмотрел лог... как и следовало ожидать... нет связи с базой.
это малюсенькая часть лога
и почему в MD нет механизма очистки.... логов и прочего мусора....
посмотрел лог... как и следовало ожидать... нет связи с базой.
это малюсенькая часть лога
Код: Выделить всё
WHERE EXCLUSIVE = 0
ORDER BY PRIORITY DESC, ID
Backtrace:
#0 /var/www/lib/mysqli.class.php(394): registerError('sql', '2006: MySQL ser...')
#1 /var/www/lib/mysqli.class.php(177): mysql->Error('SELECT *\n ...')
#2 /var/www/lib/mysqli.class.php(198): mysql->Exec('SELECT *\n ...')
#3 /var/www/lib/mysqli.class.php(511): mysql->Select('SELECT *\n ...')
#4 /var/www/scripts/cycle_execs.php(68): SQLSelect('SELECT *\n ...')
#5 {main}
15:28:01 0.24781900 Error registered (type: sql):
2006: MySQL server has gone away
SELECT *
FROM safe_execs
WHERE EXCLUSIVE = 0
ORDER BY PRIORITY DESC, ID
Backtrace:
#0 /var/www/lib/mysqli.class.php(394): registerError('sql', '2006: MySQL ser...')
#1 /var/www/lib/mysqli.class.php(207): mysql->Error('SELECT *\n ...', 0)
#2 /var/www/lib/mysqli.class.php(511): mysql->Select('SELECT *\n ...')
#3 /var/www/scripts/cycle_execs.php(68): SQLSelect('SELECT *\n ...')
#4 {main}
-
- Сообщения: 2084
- Зарегистрирован: Пт апр 07, 2017 12:20 pm
- Благодарил (а): 313 раз
- Поблагодарили: 457 раз
Re: Перезагрузка MD по пингу
2. keepLatestLimitedBySize('./debmes',50*1024*1024);
повесить запуск на ThisComputer.SpaceProblems к примеру
1. потом по таймеру перезагрузить циклы
п.с. через опу, но ...
повесить запуск на ThisComputer.SpaceProblems к примеру
1. потом по таймеру перезагрузить циклы
п.с. через опу, но ...
Последний раз редактировалось Logrus Пт мар 30, 2018 11:08 pm, всего редактировалось 2 раза.
Telegram | Блог
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
Raspberry Pi3, с образа от Сергея 3.31, PHP 7, флешка 16 Гб работает с 10.09.2017
Почти всё время уходит на исправление ошибок, оставшееся - на их повторение. (с) ))) Спасибо
-
- Сообщения: 3006
- Зарегистрирован: Чт авг 21, 2014 8:28 am
- Откуда: Киров, Россия
- Благодарил (а): 400 раз
- Поблагодарили: 1753 раза
- Контактная информация:
Re: Перезагрузка MD по пингу
У меня сроду не было логов больше 50Мб, не говоря уже про гигабайты. )) Поэтому даже не задумывался об этом. Но идея хороша, предложи ее в коннекте в разделе разработки и поддержки ядра МДМ.blackangel писал(а):и почему в MD нет механизма очистки.... логов и прочего мусора....
Насколько знаю, в текущих версиях есть наработки в этом вопросе в виде сценариев и методов - глянь демку, там есть примеры обслуживания сервера.
А по сути, на время бэкапа sql нужно останавливать службу МДМ, а по окончанию заново запускать. Полностью от ошибок это не избавит, т.к. если где-то будет открыта веб-морда, или контроллеры будут дергать по сети ссылки МДМ или слать по MQTT, то один фиг будет обращение к БД, которая не доступна в этот момент.
MajorDoMo (GitHub) на Cubietruck. ОС Debian 7 (wheezy) (kernel 3.4.105) с переносом на HDD.
Мой CONNECT | Блоги | Telegram
Мой CONNECT | Блоги | Telegram