• Почему иногда падает zabbix сервер?

    @fens Автор вопроса
    Никита Павлов, нет это не саппорт, это пока сбор информации для саппорта что бы они не отшили. Пока думал что еще помониторить, вебка заббикса перестала отвечать, по какой причине пока не понял, апач рестартанул не помогло по нагрузке Steal time был на нуле смотрел через ssh в top. Но тут интереснее другое, после того как вебка поднялась:
    5aba3d2b95be8132683710.png
    пошел смотреть что с RDS:
    5aba3d4567383921129082.png
    И еще один интересный момент, что после окончания бэкапа, вебка заббикса кричала что сервер не запущен, хотя сам сервер был запущен и мускуль уже был доступен. Рестарт сервера zabbix помог.
    А судя по логу событий RDS вообще фиг знает что происходит:
    5aba415fce1c4212540742.png

    И так на данный момент больше вопросов чем ответов:
    1. Почему после восстановления БД zabbix не восстанавливается сразу, а восстанавливается часа через полтора?
    2. Почему в момент падения БД у zabbix даже вебка не отвечает (это точно не проблема apache т.к. а нем висит еще и проектирование запросов на Grafana и она работала.)?
    3. Что за хрень происходит с RDS?
  • Почему иногда падает zabbix сервер?

    @fens Автор вопроса
    Никита Павлов, предварительные итоги:
    1. на приведенных выше графиках не очень заметно, но все же кажется суть в Steal time =) какие-то vps на Амазоне жрут тот же проц на котором вертится zabbix учитывая что zabbix практически не потребляет ресурсов у нашей vps их крадут проц. время прожорливые.
    2. так же на приведенных выше графиках видно что Steal Time может быть высоким скачками по несколько минут в течении нескольких часов но очередь забивается внезапно, это связанно с тем что есть одна машина на которой есть активные проверки около 270 метрик, вот видимо когда они приезжают, а соседние vps забирают процессорное время очередь забивается.
  • Почему иногда падает zabbix сервер?

    @fens Автор вопроса
    Никита Павлов, хотя машинок около 10 мониторятся система, апач, мускуль. Сейчас бы поставил Graphite + Grafana.
    По сабжу, только сейчас заметил что за за 7 минут до начала проблем с забиванием пулеров, на графике Zabbix performance начала расти очередь с 110 до 900 единиц. и через пару минут сервак как бы упал. И где то за 8 минут до того как он поднялся очередь сократилась с 1070 до 14. Т.е. теперь вопрос можно сформулировать иначе почему внезапно начинает увеличиваться очередь?

    5ab4bb4a34040203708945.png5ab4bb52d3766491152206.png5ab4bb5e37b69178644050.png5ab4bb674dbff522677503.png5ab4bb74cc199170902742.png5ab4bb7e64f9e975056012.png

    Теперь то хоть триггер знаю на что повесить только вот отработает ли он...
  • Почему иногда падает zabbix сервер?

    @fens Автор вопроса
    Никита Павлов, БД мониторить zabbix`ом не получиться т.к. это RDS а машинка на которой стоит zabbix EC2 по мониторингу от AWS единственное что смущает количество открытых заббиксом подключений на RDS стоит ограничение в 40 и zabbix держит открытыми их все но он так делает все время, по этому маловероятно что проблема в этом.
    RDS мониторинг, период 3 часа, падение в 15:20
    5ab3ca00c4960356575468.png
    RDS мониторинг, период 24 часа
    5ab3caeb775cb283933108.png

    Падения продолжаются... =(
  • Почему иногда падает zabbix сервер?

    @fens Автор вопроса
    Никита Павлов, количество пуллеров подкручивал не помогло.
    БД не партиционирована.
  • Yii2 3 таблицы и 2 ActiveRecord?

    @fens Автор вопроса
    по сути единственное что будет делать переписанная ActiveQuery так это запрашивать у основной модели Entities список классов наследников и выполнять один запрос с джоином всех таблиц подробностей ну, а дальше по накатанной дорожке https://github.com/samdark/yii2-cookbook/blob/mast...
    Какое упрощение это даст, для добавления сущности нового типа понадобится только добавить информацию о новом типе в базовый класс и собственно сделать новый класс. Вообще тут еще подсказали другое решение: https://github.com/mdmsoft/yii2-ar-behaviors по аналогии с ним можно просто переписать сеттеры и геттеры для прозрачной передачи параметров к модели подробностей, но тогда в каждой поисковой модели в каждом запросе прийдется руками добавлять какие таблицы джойнить.
  • Yii2 3 таблицы и 2 ActiveRecord?

    @fens Автор вопроса
    Ну мой взгляд решение такое: сделать наследника от ActiveQuery который будет джойнить все таблицы, при вызове метода all(), всех наследников от entities, а метод populate будет вызывать instantiate у главной модели которая будет возвращать по типу конкретный класс а дальше populate запихнет в модель всю строку ну а модель примет только те поля которые ее.
  • Yii2 3 таблицы и 2 ActiveRecord?

    @fens Автор вопроса
    дополнил вопрос может это поможет понять чего хочется добиться. По сути хочется получить наследование в РСУБД, которое будет прозрачно перетекать в объекты.
  • Yii2 3 таблицы и 2 ActiveRecord?

    @fens Автор вопроса
    не совсем, связь один к одному у основной таблицы и у конкретной таблицы подробностей, т.е. основная таблица делит первичный ключ с таблицей подробностей. Мне скорее всего надо копать в сторону популяции из ActiveQuery но что бы не писать свой велосипед ищу готовое решение.