Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

[Поддержка] Домовой - Виджет для мониторинга состояния магазина


dinox
 Поделиться

Рекомендованные сообщения

Домовой - Виджет для мониторинга состояния магазина


Домовой - Виджет для мониторинга состояния магазина


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

 

Данный виджет войдет в релиз ocStore 3.0.3.7 как часть базового функционала, предоставляю его для использования всем у кого сейчас ocStore 3.0.2.0


Доработка и коммерческая продажа в виде отдельного дополнения или в составе других дополнений без моего разрешения запрещена!

 

Модуль позволяет:

  • Видеть версию PHP, MySql
  • Посмотреть PHPINFO
  • Наличие ionCube и его версию
  • Узнать размер папки логов
  • Узнать размер папки системного кеша
  • Узнать размер кеша изображений
  • Пересчитывать объем директорий с периодичностью, при заходах в админку
  • Сообщать о отключенном кеше Twig
  • Очищать папки кеша и логов
  • Очищать кеш модификаторов OCMOD
  • Для каждого типа папок можно задать свою периодичность и пересчет места
  • Уведомлеят о наличи небезопасных и потенциально небезопасных функций


Планируемый функционал:

  • Мониторинг таблицы сессий
  • Пересчет размера папок по крону через средства Вашего хостинга с уведомлением на почту в случае превышения установленого объема для мониторинга
  • Сканирования корневой папки сайта, на наличие сторонних архивов, sql файла, adminer скриптов и т. д.
  • Оптимизатор таблиц

 

 

Перед использованием дополнения, сделайте бекап Вашего магазина, что впрочем нужно делать перед использованием любого дополнения!


  • Добавил
  • Добавлено
    13.03.2021
  • Категория
  • Системные требования
  • Метод активации
    Без активации
  • Ioncube Loader
    Нет
  • ocStore
    3.0
  • OpenCart.Pro, ocShop
  • Обращение к серверу разработчика
    Нет

 

  • +1 4
Ссылка на комментарий
Поделиться на других сайтах


При установке выдает через intaller выдает

Цитата

Этот каталог admin/controller/common не доступен для записи!

 

Версия ocStore 3.0.2.0

Ссылка на комментарий
Поделиться на других сайтах

1 минуту назад, matroskin92 сказал:

При установке выдает через intaller выдает

 

Версия ocStore 3.0.2.0

Это запрет штатный на добавление файлов  в папку common, залейте архивом dinox-domovoy-ftp-upload.zip просто через фтп

Ссылка на комментарий
Поделиться на других сайтах


При установке выдает ошибку ((

Fatal error: Uncaught Exception: Error: Could not load model extension/dashboard/domovoy! in /var/www/admin/data/www/storage/modification/system/engine/loader.php:97 Stack trace: #0 /var/www/admin/data/www/msvlad.com/admin/controller/extension/dashboard/domovoy.php(166): Loader->model('extension/dashb...') #1 /var/www/admin/data/www/storage/modification/system/engine/action.php(79): ControllerExtensionDashboardDomovoy->dashboard(Array) #2 /var/www/admin/data/www/storage/modification/system/engine/loader.php(54): Action->execute(Object(Registry), Array) #3 /var/www/admin/data/www/storage/modification/admin/controller/common/dashboard.php(83): Loader->controller('extension/dashb...') #4 /var/www/admin/data/www/storage/modification/system/engine/action.php(79): ControllerCommonDashboard->index() #5 /var/www/admin/data/www/msvlad.com/admin/controller/startup/router.php(26): Action->execute(Object(Registry), Array) #6 /var/www/admin/data/www/storage/modification/system/engine/action.php(79): ControllerStartupRouter->index() #7 in /var/www/admin/data/www/storage/modification/system/engine/loader.php on line 97

 

Ссылка на комментарий
Поделиться на других сайтах


1 минуту назад, iiioroh сказал:

При установке выдает ошибку ((

Fatal error: Uncaught Exception: Error: Could not load model extension/dashboard/domovoy! in /var/www/admin/data/www/storage/modification/system/engine/loader.php:97 Stack trace: #0 /var/www/admin/data/www/msvlad.com/admin/controller/extension/dashboard/domovoy.php(166): Loader->model('extension/dashb...') #1 /var/www/admin/data/www/storage/modification/system/engine/action.php(79): ControllerExtensionDashboardDomovoy->dashboard(Array) #2 /var/www/admin/data/www/storage/modification/system/engine/loader.php(54): Action->execute(Object(Registry), Array) #3 /var/www/admin/data/www/storage/modification/admin/controller/common/dashboard.php(83): Loader->controller('extension/dashb...') #4 /var/www/admin/data/www/storage/modification/system/engine/action.php(79): ControllerCommonDashboard->index() #5 /var/www/admin/data/www/msvlad.com/admin/controller/startup/router.php(26): Action->execute(Object(Registry), Array) #6 /var/www/admin/data/www/storage/modification/system/engine/action.php(79): ControllerStartupRouter->index() #7 in /var/www/admin/data/www/storage/modification/system/engine/loader.php on line 97

 

Сейчас пофикшу перезалью архив

  • +1 1
Ссылка на комментарий
Поделиться на других сайтах


Перезалил

 

  • +1 1
Ссылка на комментарий
Поделиться на других сайтах


17 минут назад, dinox сказал:

Это запрет штатный на добавление файлов  в папку common, залейте архивом dinox-domovoy-ftp-upload.zip просто через фтп

Я старался следовать инструкции из файла readme.txt (https://prnt.sc/10ks9tk

Не пишу в личку, понимая что сообщение затеряется

Ссылка на комментарий
Поделиться на других сайтах

5 минут назад, matroskin92 сказал:

Я старался следовать инструкции из файла readme.txt (https://prnt.sc/10ks9tk

Не пишу в личку, понимая что сообщение затеряется

В дальнейшем переработую структуру файлов, чтобы ставилось без танцев через install модификаторов, я специально положил рядом фтп архив, понимая что не у всех станет через install  :)

Ссылка на комментарий
Поделиться на других сайтах


Интересно, а как ведется подсчет размера очень большого файлового кеша, например, изображений?

За один раз? Каждый раз заново?

В ряде случаев он занимает объем в десятки гигабайт, иногда сотни гигабайт.  Да и файлом может быть сотни тысяч.

Вы это делаете средствами php в предположении, что за ограниченный (стандартный лимит 30 сек) отрезок времени подсчет будет завершен?  А если не будет?

 

Другими словами: на больших магазинах тестировали, будет ли работать?

 

И что значит "норма" для кеша изображений? На основании чего определяется эта норма?  И что  предлагается делать если "не норма"?

Ссылка на комментарий
Поделиться на других сайтах

4 минуты назад, sitecreator сказал:

Интересно, а как ведется подсчет размера очень большого файлового кеша, например, изображений?

За один раз? Каждый раз заново?

В ряде случаев он занимает объем в десятки гигабайт, иногда сотни гигабайт.  Да и файлом может быть сотни тысяч.

Вы это делаете средствами php в предположении, что за ограниченный (стандартный лимит 30 сек) отрезок времени подсчет будет завершен?  А если не будет?

 

Другими словами: на больших магазинах тестировали, будет ли работать?

 

И что значит "норма" для кеша изображений? На основании чего определяется эта норма?  И что  предлагается делать если "не норма"?

Именно для этого в настройки вынесено порог срабатывания, что такое для владельца магазина не норма. Не хотите обрабатывать изображения и считать отключили себе в настройках пересчет и забыли. Любое дополнение всегда начинается с первой версии, к тому же  я готов к предложениям по улучшению функциональности и как вы сказали применимости его на магазинах любого размера. Это бесплатное дополнение и его цель стать полезной утилитой, как для владельцев текущих магазинов так и для будущих. 

  • +1 1
Ссылка на комментарий
Поделиться на других сайтах


phpinfo.php можно объединить с основным.

 

Этот код можно сделать через $data['columns'] = range(3, 12);

        $data['columns'] = array();

        for ($i = 3; $i <= 12; $i++) {
            $data['columns'][] = $i;
        }

 

Ну и код красивый сделать:

Отступы через ТАБ в контроллерах и моделях, отступ пробелы в шаблонах и языковых.

  • +1 2
Ссылка на комментарий
Поделиться на других сайтах

@dinox

Пока еще не ставил, но не увидел в описании, что есть вывод количества свободного места на диске disk_free_space()

Часто бывает так, что клиенты жалуются на какие то ошибки, а оказывается, что банально закончилось свободное место.

  • +1 4
Ссылка на комментарий
Поделиться на других сайтах

20 часов назад, efremovxp сказал:

Часто бывает так, что клиенты жалуются на какие то ошибки, а оказывается, что банально закончилось свободное место.

 

По распространенности это одна из самых частых проблем, верно.

И, похоже, что диагностика кеша будет ниже по необходимости по сравнению с диагностикой свободного места на диске.

Ссылка на комментарий
Поделиться на других сайтах

23 часа назад, efremovxp сказал:

@dinox

Пока еще не ставил, но не увидел в описании, что есть вывод количества свободного места на диске disk_free_space()

Часто бывает так, что клиенты жалуются на какие то ошибки, а оказывается, что банально закончилось свободное место.

disk_free_space - применим только в контексте VPS и Dedicated серверов, при использовании его на виртуальном хостинге зачастую он показывает общий объем диска сервера, а не выделеную квоту. По этому если и добавлять эту функцию то нужно выносить в настройки отключения показа, если это не VPS

Ссылка на комментарий
Поделиться на других сайтах


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

  • +1 3
Ссылка на комментарий
Поделиться на других сайтах


Хорошая тулза. 

Добавьте ещё проверку на соответствие путей к модификаторам из config.php админки и каталога. Часто они не совпадают.

  • +1 2
Ссылка на комментарий
Поделиться на других сайтах

И переименуйте пожалуйста "Папка кеша изображений" на "Папка миниатюр изображений" или "ресайзов изображений" т к часто (очень часто!) наблюдаю что пользователи "чистят" ресайзы чуть ли каждый час, а в итоге изображения выпадают из поисковой выдачи поисковых систем. И нагрузка создается постоянная на сервер т к opencart-у приходится заново генерировать ресайзы.
И все это из-за того, что пользователи видят слово "кеш"

Ссылка на комментарий
Поделиться на других сайтах

ini_get, fopen, возможно и другие функции используются самим движком.

Зачем предупреждать пользователя об их потенциальной опасности? Пользователь возьмет и отрубит их, потом будет стоять крик: "Помогите, все пропало, ничего не работает".

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

Ссылка на комментарий
Поделиться на других сайтах

В 17.03.2021 в 14:22, ollyub64 сказал:

а для сборки  2.3.0.2.4 такой виджет будет?

 

согласен. не плохая штука, лишняя бы не была для 2.3

  • +1 1
Ссылка на комментарий
Поделиться на других сайтах


52 минуты назад, nykivanvas сказал:

Тоже не помешал бы.

Он будет добавлен в сборке 2.3.0.2.4 позднее

  • +1 2
Ссылка на комментарий
Поделиться на других сайтах


В 22.03.2021 в 12:42, dinox сказал:

Он будет добавлен в сборке 2.3.0.2.4 позднее

 

Супер. А отдельным модулем можно будет? Для тех кто не создает с нуля магазин?

Заранее спасибо

Ссылка на комментарий
Поделиться на других сайтах


  • 4 недели спустя...

С установленным модулем IMDBOptimizer вот такое выдает при попытке сохранить настройки:

Fatal error: Uncaught Error: Cannot access private property DB::$adaptor in /var/www/admin/data/www/gandhari.ru/system/IMDBOptimizer/Cache/IMDBOCacheProcessor.php:655 Stack trace: #0 /var/www/admin/data/www/gandhari.ru/admin/controller/extension/dashboard/domovoy.php(228): IMDBOCacheProcessor->__get('adaptor') #1 /var/www/admin/data/www/gandhari.ru/admin/controller/extension/dashboard/domovoy.php(229): IMDBOCacheProcessor->{closure}() #2 /var/www/admin/data/www/gandhari.ru/admin/controller/extension/dashboard/domovoy.php(229): Closure->__invoke() #3 /var/www/admin/data/www/gandhari.ru/admin/controller/extension/dashboard/domovoy.php(233): ControllerExtensionDashboardDomovoy->{closure}(Object(IMDBOCacheProcessor), 'adaptor') #4 /var/www/admin/data/www/storage/modification/system/engine/action.php(79): ControllerExtensionDashboardDomovoy->dashboard(Array) #5 /var/www/admin/data/www/storage/modification/system/engine/loader.php(48): Action->execute(Object(Registry), Array) #6 /var/www/admin/data/www/storage/modification/admi in /var/www/admin/data/www/gandhari.ru/system/IMDBOptimizer/Cache/IMDBOCacheProcessor.php on line 655

 

Ссылка на комментарий
Поделиться на других сайтах


  • 2 недели спустя...

Крутейшая приблуда поставлю себе обязательно) прям вот ваще огнище! Лютый респект! ну и да побольше уточнений пояснений чтоб инициативные чайники не чистили и не отключали всё подряд. И совсем идеально логировать тыки в этом приложении. Потому что действительно получив кнопочку инициативный чайник может в неё жать не понимая что происходит и это может создать проблем не меньше чем когда кнопочки нет. А с логом поддержка может быстро понять, что это пользователь инициативный альтернативно одарённый тычет не в ту кнопку или тычет слишком часто)

Ссылка на комментарий
Поделиться на других сайтах


Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
 Поделиться

×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обработка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфиденциальности.