[modSizeControl] - компонент позволяющий контролировать размер сайта
Привет сообществу!
Выражаю большую благодарность Павлу Зарубину, так как компонент выйдет в целом его стараниями.
Несколько раз сталкивался с проблемой, когда менеджеры пользуются дисковым пространством как бесплатным файловым хранилищем и им кажется, что оно неиссякаемое. Хостинги которыми я пользовался не предоставляли и вряд-ли будут предоставлять подробные данные о размерах отдельных папок/сайтов (должно быть ресурсозатратный процесс) потому и приходилось искать разжиревшие сайты вручную. Это была веская причина для того чтобы разработать данный компонент, который был призван облегчить решение такого рода проблем.

Что из себя представляет компонент на данный момент:



Планируется также отправка письма разработчику при достижении критической/определенной отметки заполнения ну и многое другое.
☕ Угостить чашкой кофе
UPD:
Компонент доступен на modstore.pro и на GitHub
Всем спасибо и отдельно кончено же еще раз Павлу Зарубину.
Выражаю большую благодарность Павлу Зарубину, так как компонент выйдет в целом его стараниями.
Несколько раз сталкивался с проблемой, когда менеджеры пользуются дисковым пространством как бесплатным файловым хранилищем и им кажется, что оно неиссякаемое. Хостинги которыми я пользовался не предоставляли и вряд-ли будут предоставлять подробные данные о размерах отдельных папок/сайтов (должно быть ресурсозатратный процесс) потому и приходилось искать разжиревшие сайты вручную. Это была веская причина для того чтобы разработать данный компонент, который был призван облегчить решение такого рода проблем.

Что из себя представляет компонент на данный момент:
- Можно указывать лимит сайта (Системная настройка: modsizecontrol_site_limit)
- Можно указывать один или несколько источников файлов для определения размера (Системная настройка: modsizecontrol_file_system)
- Интерфейс в виде виджета на главной странице панели управления
- Данные обновляются по клику кнопки через Ajax
- Отображение процента в виде кругового графика
- Смена цвета при достижении определенных точек заполнения (Зеленый, Желтый и Красные цвета для визуального сообщения)
- Вывод сообщения менеджеру при достижении критической отметки заполнения



Планируется также отправка письма разработчику при достижении критической/определенной отметки заполнения ну и многое другое.
☕ Угостить чашкой кофе
UPD:
Компонент доступен на modstore.pro и на GitHub
Всем спасибо и отдельно кончено же еще раз Павлу Зарубину.
Комментарии: 29
Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
Спасибо
Поставил Ваш компонент. Интересный.
Сразу нашёл разочарование: modsizecontrol_site_limit указывается в байтах.
Было бы здорово иметь возможность указания размера human-readable, т.е. 15G, 1280M, 15k и т.д.
Заранее спасибо.
Жаль результат последней проверки не заносится в базу, хотелось бы написать плагин на «onFileManagerUpload», который проверял бы размер сайта и выдавал ошибку, если превышен лимит, а достать этот размер пока неоткуда.
И не могли бы сказать как часто сканируются файлы, при загрузке каждой страницы админки или только главной?
В планах есть такое реализовать
Как это справить?
core/components/modsizecontrol/model/modsizecontrol.class.php
//$io = popen('/usr/bin/du -sb '. $dir, 'r');//sb
$io = popen('/usr/bin/du -sk '. $dir, 'r');
if ($io !== false) {
//$totalSize = intval(fgets($io, 80));
$totalSize = intval(fgets($io, 80)) * 1024;
Для своих нужд писал нечто подобное.
Только источник файлов не указывался в ручную, а брался из настроек группы пользователя.
Поскольку контексты разрастутся.
Менеджеру конкретного контекста выводится информация по его источнику файлов.
А группе «Administrator», выводится общий размер всех источников файлов +
список контекстов с указаним размера источника файлов.
Автору, безусловно огромное спасибо за труды!
Если в будущем у вас появится такая автоматизация и вывод группе «Administrator» общего размера + по каждому контексту, а менеджерам только его источник файлов. То не стану свое решение допиливать =) Воспользуюсь вашим!