Модуль контроля диска и бэкапов для 1С-Битрикс
5 мин 7 Обновлено 30 сентября
Что умеет модуль
- Показывает занятое место в облачном хранилище и расходы на него по дням
- Следит за свободным местом на диске и заранее предупреждает, что оно заканчивается
- Проверяет, что ночные копии базы, файлов сайта и документов заказов отработали
- Отличает сбой задачи от её молчания: если она не запускалась, это тоже тревога
- Считает, сколько дней осталось до продления доменов, лицензии и сертификата
- Шлёт уведомление на почту и в админку, не повторяя одно и то же письмо
- Убирает с диска локальные копии файлов, которые уже лежат в облаке
Зачем нужен контроль свободного места на сервере
Сайт с тяжёлыми файлами устроен так, что однажды он остановится. Видео осмотров, сканы документов, фотографии дефектов копятся каждый день, место на диске уходит постепенно и предсказуемо. А заканчивается разом: сайт просто перестаёт принимать файлы.
У сайта проката автомобилей, который я делала, это случилось в августе. Сотрудник на площадке не смог закрыть возврат: форма не сохраняла видео осмотра. О проблеме сообщил клиент, а не система, поэтому время ушло ещё и на то, чтобы понять причину. Причина оказалась простой – на диске кончилось место.
Место занимали видео осмотров: каждая выдача добавляет новый файл, и за полгода архив перерос тот объём диска, под который сайт заводили. Я разгрузила диск и вынесла архив в облако, но главная проблема была не в этом.
Проблема была в том, что состояние сервера нельзя было увидеть, не зайдя на сам сервер. Сколько осталось места, делаются ли резервные копии, когда заканчиваются домен и лицензия – всё это существовало, но нигде не показывалось. Такой сайт живёт до первой аварии, и узнают о ней от клиента.
Модуль закрывает именно это: выносит состояние сервера туда, где его видно без разработчика, и сам сообщает о проблеме, пока она ещё не авария.
Когда я проектирую сайт, я отдельно смотрю, какие действия на нём критичны для бизнеса: отправка заявки, загрузка документов, оформление заказа. В этом проекте такой операцией было сохранение видео осмотра: без него нельзя закрыть возврат, а значит встаёт вся работа площадки. За такими операциями и нужно следить в первую очередь.
Что видно на одной странице: диск, облако, бэкапы, продления
После той аварии я собрала в административной части отдельную страницу и разложила на ней всё, за чем раньше никто не следил.

Диск и облако. Два круга сверху показывают заполнение: сколько занято на сервере и сколько в облачном хранилище S3 – это отдельная от хостинга услуга, куда уезжает архив: место там дешевле и не кончается так, как на сервере. Если диск заполняется быстрее обычного, это видно сразу, а не в тот день, когда он кончится.
Расходы на облако. График по дням показывает, во что обходится хранение и не растёт ли оно внезапно. Внезапный рост означает, что в облако уезжает что-то лишнее, и разобраться с этим дешевле сразу.
Ночные копии. Список задач с временем последнего успеха показывает, отработали ли они сегодня ночью. Пока никто не проверял, копий может не быть месяцами, и выясняется это в тот момент, когда они понадобились.
Продления. Домены, лицензия платформы и сертификат сайта с числом оставшихся дней и указанием, кто продлевает. Просроченный домен выключает сайт целиком, просроченный сертификат встречает посетителя предупреждением браузера.
Что модуль делает сам: контроль диска и проверка резервных копий
Следит за местом и предупреждает заранее. Раз в час проверяет свободное место и сравнивает с двумя порогами. По умолчанию это 15 гигабайт для предупреждения и 7 гигабайт для критического остатка, у каждого проекта они свои. При переходе через порог отправляет письмо и показывает уведомление в административной части. Письмо не приходит чаще раза в сутки, но если стало хуже – уходит сразу. Когда место возвращается в норму, уведомление снимается и приходит письмо об этом.
Следит, что задачи резервного копирования отработали. Ночью на сервере работают три задачи: копия базы и файлов сайта, копия документов заказов в облако, удаление локальных копий видео у закрытых заказов, копии которых уже подтверждены в облаке. Модуль каждый час смотрит, прошли ли они, и тревожит не только при сбое, но и когда задача давно не запускалась вовсе. Это разные беды, и вторую обычно замечают позже.
Показывает, во что обходится облако. Расходы берутся из личного кабинета хранилища по дням: график показывает историю за тридцать дней, а итог – расходы с начала текущего месяца. Отдельный сервисный доступ только на чтение статистики.
Помнит сроки продлений. Раз в сутки проверяет, сколько дней осталось до каждого срока, и по каждому пункту видно, кто продлевает: клиент сам, разработчик или это происходит автоматически.
Почему уведомление письмом, а не только значок в админке
Значок видит тот, кто зашёл в административную часть. Владелец бизнеса заходит туда не каждый день, а место на диске кончается не по расписанию. Поэтому основной канал – письмо на почту, а уведомление в админке дополняет его.
Чтобы письма доходили, а не оседали в спаме, отправляет их сам сайт – с почты домена, для которой настроены подписи отправителя. Ночные задачи на сервере писем не шлют вовсе: они оставляют отметку о результате в папке, доступной сайту только для чтения; раз в час сайт проверяет эти отметки и отправляет уведомление своей почтой. Письмо уходит с привычного адреса, а не от системного пользователя сервера – у такого письма куда больше шансов дойти.
Заодно это разделяет ответственность: сервер занимается своей работой, а всё, что касается писем и их доставки, остаётся на стороне сайта, где это настроено один раз и проверяется.
Что изменилось для клиента
Считать сэкономленные часы и заявки я не берусь: до модуля никто не измерял, сколько простоев было и чего они стоили, а придумывать цифры задним числом нечестно. Что изменилось точно:
- состояние сервера видно на одной странице, без обращения ко мне;
- место на диске и ночные копии проверяются каждый час, а не когда кто-то вспомнит;
- о проблеме узнаёт ответственный человек и узнаёт письмом, а не от клиента;
- сроки продления домена, лицензии и сертификата больше не нужно держать в голове.
Кому подойдёт модуль контроля сервера и хранилища
- Подойдёт, если на сайте копятся тяжёлые файлы: видео, сканы документов, фотографии, записи разговоров. Такой диск заполняется незаметно.
- Подойдёт, если за сайт отвечает владелец или администратор без системного администратора рядом, и проверять сервер вручную некому.
- Подойдёт, если старые файлы уже вынесены в облачное хранилище (S3 у любого провайдера) и хочется видеть, сколько занято и во что это обходится.
А вот если сайт – это витрина на несколько страниц без загрузки файлов, и хостинг сам присылает уведомления о месте, модуль не нужен: следить особо не за чем.
Сколько стоит разработка модуля для 1С-Битрикс
Готовый модуль сделан под 1С-Битрикс и ставится на любой сайт на этой платформе, даже если его делала не я: доработка сайта после чужих подрядчиков – обычное дело. Для сайта на другой платформе то же самое делается отдельной разработкой: задача та же, меняется только то, куда встраивается страница состояния.
Модуль настраивается под проект: у каждого сайта свои файлы, своё облако и свой набор того, за чем следить. Базовая часть – место на диске, состояние копий и сроки продлений – обычно работает и на виртуальном хостинге, но что именно получится, видно после проверки вашего окружения. Расходы на облако, занятое место в хранилище и контроль ночных задач требуют доступа к тому, что вы используете: панели хранилища, сервера или системы резервного копирования.
Стоимость начинается от 15 000 рублей и зависит от того, сколько внешних сервисов нужно подключить. Точнее считается после одного разговора: что за сайт, где лежат файлы и какие уведомления нужны.
// Если у вас сайт с тяжёлыми файлами и вы узнаёте о проблемах от клиентов, напишите мне. Разрабатываю модули, разделы административной части и автоматизацию под то, чего в коробке 1С-Битрикс нет.
Частые вопросы
Чем это отличается от готовых модулей контроля места из маркетплейса 1С-Битрикс?
В маркетплейсе есть модули, которые показывают свободное место на диске и последние резервные копии, и стоят они дешевле. Разница в охвате. Готовый модуль видит то, что доступно изнутри сайта. Мой собирает в одну картину то, что лежит в разных местах: диск сервера, облачное хранилище S3 у стороннего провайдера вместе со счётом за месяц, ночные задачи на сервере и сроки продления доменов, лицензии и сертификата с указанием, кто за какое продление отвечает. Плюс он настраивается под ваш набор: следить нужно за разным, и список порогов и задач у каждого проекта свой.
Зачем модуль, если хостинг и так присылает уведомления о месте на диске?
Если присылает и письмо доходит до того, кто примет решение, модуль вам не нужен. Проблема обычно в другом: уведомление уходит на технический адрес, заведённый при покупке хостинга, а место кончается у сайта, за который отвечает другой человек. И место на диске тут только один из шести пунктов: хостинг не скажет вам, что ночная копия не делалась три недели, что расходы на облако выросли вдвое и что сертификат заканчивается через десять дней.
Это то же самое, что сервис мониторинга доступности сайта?
Нет, это разные вещи, и они друг друга не заменяют. Сервис мониторинга смотрит на сайт снаружи: отвечает ли он, за сколько, жив ли домен и сертификат. Он узнает о проблеме в тот момент, когда сайт уже лёг. Мой модуль смотрит изнутри и отвечает на вопрос, что случится через неделю: сколько осталось места, делаются ли копии, во что обходится хранилище. Пересечение у них небольшое, только сроки домена и сертификата.
Заработает ли модуль на обычном виртуальном хостинге?
Базовая часть работает везде: свободное место, состояние резервных копий и сроки продлений. Всё остальное зависит от доступов. Занятое место в облаке и расходы на него берутся из личного кабинета хранилища, для этого нужен сервисный ключ только на чтение статистики. Контроль ночных задач требует доступа к серверу, где эти задачи запускаются. Что именно получится на вашем хостинге, видно после одного разговора.
Сколько стоит и от чего зависит цена?
От 15 000 рублей. Цена зависит от того, сколько внешних сервисов нужно подключить: одно только место на диске и продления обходятся дешевле, чем полный набор с облаком, счётом за него и контролем ночных задач. Точную сумму я называю до начала работ, после разговора о том, что за сайт, где лежат файлы и какие уведомления нужны.
Материалы по теме
Что почитать дальше по этой теме