[controlErrorLog] Уведомление об ошибках на сайте
Думаю, не только у меня были ситуации, когда заходишь в админку, а там ошибок в журнале навалило прилично, хотя всё настроено правильно. Каждый день заходить для проверки, конечно, можно, но быстро надоест. Поэтому я добавил функционал для уведомления админа о появившихся ошибках. Теперь при каждом просмотре пользователем страницы журнал ошибок проверяется на наличие новых записей. И если они появились, то высылается уведомление на указанную почту. Уведомление высылается один раз для каждого изменения журнала.
Чтобы это заработало нужно настроить 2 системные настройки.
Напомню, что компонент бесплатный. Кому пригодится данный функционал плюсуйте для стимулирования моего эго. :)
Полная документация.
Чтобы это заработало нужно настроить 2 системные настройки.
- control_frontend — Включает мониторинг на сайте. По-умолчанию включено.
- admin_email — почта для уведомления о появившихся ошибках.
Напомню, что компонент бесплатный. Кому пригодится данный функционал плюсуйте для стимулирования моего эго. :)
Полная документация.
Комментарии: 43
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Например у меня каждый день логи забиваются на несколько мегобайт бесполезными записями типа:
Как я понял, эта ошибка будет сыпаться, пока Василий не исправит все свои пакеты modx.pro/help/5732/.
И ещё: если почта использует SMTP от Яндекса например, то там кажется есть лимит отправки сообщений в день. По сути если я включу эту функцию у себя на сайте, то она сожрёт весь лимит писем, и пользователям не останется ничего (например если они захотят зарегистрироваться на сайте).
Вот бы была возможность подключить и другие оповещения, например на skype.
Надо сначала решить проблему. Для начала обновить тикетс.
Твоим дополнением постоянно пользуюсь — очень удобная штука для мониторинга ошибок и действий на сайте!
Просто надеюсь что с очередным обновлением тикетса прекратятся эти лавины ругани в логи… ))
Ок, забэкаплю тут всё и проверю. По результатам отпишусь.
Главное, бэкап сделать.
Деинсталлирую
Устанавливаю по новой
Настройки снова переношу что были
Чанки запихиваю обратно в папку Tickets
и пока я это делаю (буквально пару минут), в логи снова сыпятся трёхэтажные ругательства:
1. Можно попробовать отключить подсчет просмотров гостями. Если не помогло, идем дальше.
2. Можно в плагине Tickets попробовать закомментировать вызов функции $Tickets->logVew(). Очисти журнал ошибок и походи по сайту.
Посмотри структуру таблицы modx_tickets_views. Должно быть так
Это для начала.
Структура таблицы один в один.
А вот после комментирования функции $Tickets->logVew() лог сказочно очистился — давно его таким не наблюдал — аж душе приятно!
Спасибо за совет, теперь всё в норме!
P.S. А зависания исчезли после обновления движка и controlErrorLog до последних версий (не знаю после чего именно).
Странно, что инсёртятся 3 поля, а не 4. Нет поля guest_key. Поэтому в таблицу пишется пустое значение в это поле. А так как оно является частью первичного ключа, то при добавлении второй записи с пустым значением происходит ошибка, так как такой ключ уже есть.
Тут дебажить надо.
при этом на тестовом сайте где sql более ранняя все работает. возможно в этом дело, думаю как решить.
сходу гуглится репорт
github.com/rails/rails/issues/13203
и изменения
dev.mysql.com/doc/relnotes/mysql/5.7/en/news-5-7-3.html
@Василий, возможно имеет смысл поправить в базе структуру под требования последней версии mysql?
Собирать ничего не нужно, последняя версия лежит в modstore.pro.
Третья попытка.
сейчас ошибка с
SQL_MODE у меня сейчас такой:
не могу однозначно сказать, повредит ли чему-то отсутствие таких проверок дат, но по идее раньше ведь работало :)
sql версия
Tickets в репозитории обновил еще раз, без смены версии.
[2016-05-23 08:37:44] (INFO @ /home/s2/www/core/model/modx/transport/modtransportpackage.class.php : 272) Загрузка рабочего пространства пакета... [2016-05-23 08:37:44] (INFO @ /home/s2/www/core/model/modx/transport/modtransportpackage.class.php : 280) Рабочее пространство загружено, сейчас устанавливаем пакет... [2016-05-23 08:37:44] (ERROR @ /home/s2/www/core/xpdo/om/xpdoobject.class.php : 1452) Error 22007 executing statement: INSERT INTO `mysql_system_settings` (`key`, `value`, `xtype`, `namespace`, `area`) VALUES ('mgr_tree_icon_mscategory', 'icon icon-barcode', 'textarea', 'minishop2', 'ms2_category') Array ( [0] => 22007 [1] => 1292 [2] => Incorrect datetime value: '0000-00-00 00:00:00' for column 'editedon' at row 1 )Так что, у кого есть желание — шлите PR в xPDO и MODX с исправлениями, а я пока откатываюсь в разработке на 5.5, которая идёт по умолчанию в LTS Ubuntu 14.04.Заполнил:
[mysqld]
sql_mode=IGNORE_SPACE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
Перезапустил.
Не помогло.
Что может быть не так?
А у вас какая версия mysql и компонента?
Я так понял, что эти изменения от Василия так и не вышли, компонент от 1.6.17 pl так и не появился((
Все установил, все работает.
Заполнил:
[mysqld]
sql_mode=IGNORE_SPACE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
Перезапустил.
Не помогло.
Что может быть не так?
Например в настройках указать количество строк, которые будут показваться (500 например). А то из-за обилия сообщений в логах он у меня забивается за пару часов на 7-10 мегабайт, после чего сайт может зависнуть…
Забивается в основном логами, которые я пока не могу отследить, типа этих: