Отзывы за декабрь

Здравствуйте! 2017 год уже на дворе, команда Carbon Soft отдохнула и уже во всю работает над улучшением продуктов. Традиционно публикуем 2 отзыва от пользователей Carbon Billing 5 и Carbon Reductor.


Отзыв от ООО «Айтех»

Есть ли негативные моменты, над которыми нам можно поработать в Carbon Billing 5?
У нас, да. Замечания есть. На вскидку сложно сказать. Например, возникают ошибки по биллингу — недавно ошибки были по DNS. Через некоторое время всё нормально работает, всё восстановилось. Но когда при таких ошибках начинаешь обращение делать в техподдержку — это очень долго. Ну, я надеюсь, нормально всё будет, мы не собираемся отказываться от биллинга Карбон, ну проблемы бывают.

Какие плюсы видите в биллинге?
Хорошо, что техподдержка, всё-таки, работает, всегда можно обратиться и сделают, устранят проблему. Я не думаю, что у всех биллингов прямо так. Есть которые просто купил, поставил и без всякой техподдержки сам разбирайся. Ну, естественно, мы платим ежемесячную плату. Мы готовы платить деньги, если будет всё работать хорошо и стабильно, мы не отказываемся. Ну проблемы есть, у кого их нет?

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

Оцените Карбон Биллинг 5 по десятибалльной шкале
По десятибалльной — семь бы поставил.

Отзыв от ООО «Протон»

Как было принято решение о покупке Carbon Reductor?
Выбор был именно из-за подписки, что она ежемесячная и поскольку провайдер молодой, пользователей мало, решили, что так легче, дешевле.

Что понравилось в продукте?
Не знаю, пока не могу сказать. Может, то, что автоматические обновления и всё.

Что не понравилось в продукте?
Слишком много правил, т.е. я захотел просто поменять порт у SSH, не смог потому, что в правилах везде 22-й разрешен, а 6-й, который я хотел поменять, не разрешен. Мне изначально приходилось искать куда в ваши правила, в вашу систему, прокинуть порт. Это не совсем удобно. В принципе, по техподдержке хорошо. Пока что нет вопросов.

Есть ли пожелания по функционалу?
Была бы такая штука очень полезна, родительский контроль. Ну еще допустим там статистика по обновлениям есть, статистика по количеству блокировок есть. Было бы очень хорошо логировать, допустим айпишник такой-то пытался обратиться на ресурс в списке закрытых URL’ов такой-то.

Ваше итоговое мнение о Carbon Reductor и оценка по десятибальной шкале?
Ну положительно. Если по десятибальной: 7-8. Я прописал в настройках айпишник ревизора, перезапустил демон, всё сделал, а он мне в вебке до сих пор, наверное, пишет, что не указан айпишник ревизора, хотя его в конфиге я поправил. В вебе ошибка есть, но, в принципе, всё работает. Больше, в принципе, ничего. Продукт ну на восьмёрочку, может 7-8. Да. Не дотягивает он пока до 9-10, ну не настолько это пока отточенный продукт.


Спасибо, что выбрали продукты Carbon Soft!

Релиз Carbon Reductor 7.5.0 204 и 8.0.0 1435

Добрый день!

Изменения в связи с обновлением АС «Ревизор»

Добавлен режим обслуживания

В случае, если новая версия Carbon Reductor содержит изменения модулей фильтрации, на время процесса обновления, 10-20 секунд, включается режим обслуживания. Правила файрвола не очищаются полностью, вместо этого добавляется REJECT для всех видов трафика. Эти правила применяются только для АС «Ревизор», если указан его IP‑адрес/подсеть, иначе — для всех абонентов. Это сделано с целью исключить пропуски фильтрации в процессе обновления Carbon Reductor. Такие обновления бывают раз в 2-3 месяца.

А также:

  • Теперь не указанный IP-адрес АС «Ревизор» считается ошибкой.
  • Добавлена регистронезависимая фильтрация DNS для всех абонентов, если не указан IP‑адрес/подсеть АС «Ревизор». Может повышать нагрузку на сервер.

Повышение надёжности фильтрации

  • Теперь в файлах модулей фильтрации выводится статистика по обеим базам данных — как buffer, так и readonly. Ранее счётчики показывались не совсем верно — в какой-то момент от buffer, в какой-то от readonly, что могло привести к ошибочному выводу о том, что база, по которой происходит поиск при фильтрации, обнуляется при обновлении списков или рестарте.
  • Загрузка URL, доменов и IP в ядро теоретически могла быть запущена в процессе обработки списков и использовать не до конца обработанные списки — исправлено.

Исправления в Carbon Reductor 8

  • В момент применения собственных списков в веб-интерфейсе выдавалась 404/500 ошибка.
  • L2-зеркало трафика, настроенное с помощью мастера не работало.
  • Использование страницы-заглушки Carbonsoft теперь считается ошибкой, т.к. ответ от сервера Carbonsoft не является гарантированным.
  • Мелкие проблемы с запуском при первой установке.
  • Ошибка в веб-интерфейсе, в некоторых случаях возникала надпись «Файл не найден».
  • Ошибка генерации и подписи запроса для получения списка запрещённых сайтов, в результате которой списки не выгружались.

Прочее

  • Исправлено — Satellite не удалял пустые временные файлы на каждый домен при проверке DNS, что приводило к заполнению inodes. Проверить текущую заполненность можно командой: df -hi /tmp/.
  • Теперь в отчётах Satellite указывается его IP-адрес. Полезно при использовании нескольких серверов Satellite.
  • Плагин collectd сломался при обновлении модулей. Теперь он поставляется в комплекте с Carbon Reductor, чтобы обеспечить его автоматическое обновление. Инструкция на github по работе с ним в скором времени будет обновлена и продублирована в документацию Carbon Reductor.
  • Добавлен режим для Satellite, обеспечивающий отсутствие расхождения содержимого списков на Reductor и Satellite на время проверки фильтрации (используется только в целях агрессивного тестирования разработчиками).

Спасибо, что пользуетесь Carbon Reductor!

Голосование за функционал Carbon Billing 5

Публикуем результаты первого голосования в декабре 2016 года.

46,7% участников выбрали для реализации:
«Списки сайтов, разрешенных при отрицательном балансе, т.е. сайты, находящиеся в «Справочнике» в разделе «ACL списки разрешенных сайтов» будут попадать автоматически в adress list MikroTik. Данная вкладка пока совместима только с оборудованием вендора Cisco.»

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

Голосование Январь 2017


Спасибо, что выбрали Carbon Billing 5!

График работы технической поддержки с 31 декабря 2016 по 9 января 2017

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

День Время работы (МСК)
30 декабря 8:00 — 16:00
31 декабря — 2 января Выходной день
3 — 5 января 8:00 — 16:00
6 — 8 января Выходной день

Круглосуточная поддержка по критичным вопросам оказывается в обычном режиме.
3-5 января техническая поддержка будет осуществляться для SLA Стандарт по критическим вопросам.
Также в случае форс-мажора на SLA Стандарт вы можете дать интернет всем

Итоги года 2016 Carbon Billing 5

Добрый день!


Подводим итоги года.

За 2016-й мы интегрировали Carbon Billing 5 более 70 операторам связи. Добавили более 100 новых функций и возможностей для пользователей, упрощающих работу и закрыли более 750 мелких задач!

Закрытые задачи за год:


Спасибо, что выбрали Carbon Billing 5. С наступающим!

Новогодний корпоратив 2016

24.12.16 в Carbon Soft прошел новогодний корпоратив.

Всей компанией мы ездили на гору «Пильная», взяли в аренду пару теплых домиков и с удовольствием провели время!

Кто-то катался на лыжах, сноубордах, бубликах, гулял, а кто-то готовил мясо и обеспечивал хорошим настроением всю команду!


С наступающим!

АС «Ревизор» теперь производит непрерывную проверку фильтрации

Доброго времени суток!

Роскомнадзор вновь подкидывает работы и заставляет некоторых пользователей понервничать.


У нас есть страница-заглушки: http://denypage.ru. Давненько, когда модуль DNS-фильтрации стал необходим для прохождения проверок ревизора без пропусков, мы приняли довольно тяжелое решение о том, чтобы при обновлении включить этот модуль.

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

Взглянули на нагрузку, которую она создаёт и в принципе ничего особо страшного не было. Доросла она где-то до 100-400 тысяч запросов в час и это никого не беспокоило.

После обновления АС «Ревизор», 21 декабря — нагрузка на страницу выросла до 7 000 000 запросов в час, и это только те, которые достучались до контейнера с nginx, обслуживающим эту страницу. Многие запросы стали заканчиваться ошибками HTTP/502 Gateway Timeout, которые фиксируются ревизором. К штрафу это, скорее всего, не приведёт, т.к. ответа от запрещенного ресурса не было, но из РЧЦ к Вам придут с вопросом: «а почему у Вас нет страницы-заглушки?».

Чтобы фильтрация работала как положено нужно настроить собственную страницу заглушку.

Настройка заглушки, варианты:

На отдельном сервере

Чтобы АС «Ревизор» её успешно распознавал, следуйте инструкции (имеющиеся веб-сервера использовать не рекомендуется, потому что инструкция требует выделить отдельный сервер, занимающийся ТОЛЬКО страницей-заглушкой, в противном случае отправленные с помощью DNS-спуфинга редиректы не будут обработаны этим сервером):

https://github.com/carbonsoft/reductor_blockpages

После настройки страницы надо указать в двух местах адрес, доступный всем абонентам и АС «Ревизор»:

  1. Menu -> Настройка алгоритма фильтрации -> URL страницы-заглушки.
  2. Menu -> Настройка алгоритма фильтрации -> IP для DNS-ответов.

На сервере с Carbon Reductor

Не рекомендуется при большой нагрузке. (1000+ абонентов/несколько ревизоров).

Включить можно в «menu -> Настройка алгоритма фильтрации -> Заглушка на этом сервере».

После настройки страницы надо указать в двух местах адрес, доступный всем абонентам и АС Ревизор:

  1. Menu -> Настройка алгоритма фильтрации -> URL страницы-заглушки.
  2. Menu -> Настройка алгоритма фильтрации -> IP для DNS-ответов.

Почему нельзя использовать нашу страницу заглушку в продакшне

  • Она изначально предназначена исключительно для целей тестирования работоспособности продукта во время демо-периода, а также в являлась временным решением многомесячной давности.
  • Канал до неё имеет ограничение в 100 Мбит/с, ресурсы процессора тоже имеют свои ограничения. Мы не можем гарантировать её 100% доступность.
  • Также мы не можем гарантировать то, что ревизор не опознает недоступность нашей страницы-заглушки как доступность блокируемого сайта.

В конце концов, отправлять трафик абонентов и ревизора на нашу заглушку — лишняя нагрузка аплинков, да и интернет штука далекая от 100% надёжности. В общем, единственный способ правильно решить проблему — разворачивать заглушку на отдельном сервере.

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

Режим тишины в Carbon Soft

Доброго времени суток!


В Carbon Soft провели эксперимент с «режимом тишины».

В течение недели алгоритм работы разработчиков Carbon Soft был следующим:

  1. Пришел на работу
  2. Выключил все мессенджеры, почту, телефон(звук), не заходишь в соцсети и подобные им.
  3. Режим действует до 15:00 ежедневно. В это время нельзя отвлекать разработчиков ни по каким вопросам, кроме критичных.

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

По результатам эксперимента режим тишины в Carbon Soft введён в постоянное использование. Если в Вашей компании есть разработчики или просто требуется полное погружение в задачу, используйте подобную практику.


Удачи!

Итоги осени

Добрый день!

Осень в Carbon Soft стала весьма плодотворной. К Carbon Billing 5 и Carbon Reductor присоединилось более 70 операторов связи, а недавно мы обновили Carbon Reductor до версии 8.0.0 и успешно внедрили первым 5 пользователям. Ну и, конечно, ко всему прочему, прилагаем пару новых отзывов.


Отзыв от ООО «Капитан»

Как было принято решение о покупке Carbon Reductor?
Потому что мы пользуемся вашим биллингом, поэтому купили Редуктор.

Что понравилось в продукте?
Да, в принципе, всё работает, каши не просит – настроили и забыли. Ключ меняем раз в год и всё. Пока что никаких проблем нет.

Если какие-то замечания по работе с технической поддержкой?
Нет, замечаний нет. Всё работает, запустили и забыли.

Ваше итоговое мнение о Carbon Reductor
Отлично работает, Роскомнадзор к нам не пристаёт, мы рады.

Отзыв от ООО «Алатырь ТВ»

Какие плюсы Вы видите в Carbon Billing 5?
Ну, в принципе, неплохо работает, удобно. Удобно с базой работать, пока замечаний нет никаких. Первоначально были, конечно, какие-то сбои, отлаживали программу, а сейчас, вроде, нормально последнее время. Всё хорошо, претензий/вопросов пока нет. Техподдержка неплохо работает, быстро отвечает.

Есть ли какие-либо минусы, замечания?
В последнее время всё стабилизировалось. Тут были у нас сбои при обновлении, ну там видно дорабатывали. Пока вроде нареканий нет, всё, вроде, работает хорошо.

Есть какие-нибудь пожелания по функционалу?
Подумаем, если что отпишемся, посмотрим.

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


Спасибо, что пользуетесь продуктами Carbon Soft!

Релиз Carbon Reductor 7.4.9 и 8.0.0

Доброго времени суток!

В этом месяце у нас сразу два релиза. Теперь Carbon Reductor доступен на платформе Carbon, проверенной годами эксплуатации Carbon Billing 5. Carbon Reductor 8 успешно внедрён у 5 провайдеров, в него полностью портированы все исправления и доработки из версии, поставляемой в RPM для CentOS (Carbon Reductor 7). Но обо всём по порядку.


Carbon Reductor 7.4.9 300


Файрвол

Снижена нагрузка на модуль SNI-фильтрации

Теперь туда попадают только пакеты длиннее 60 байт. SNI всё равно не может оказаться в SYN/RST/FIN и других коротких пакетах без данных, но полагаться только на TCP-флаги было бы неправильно.

Изменения и исправления в блокировке HTTPS по IP

При отключении блокировки HTTPS по IP не работала блокировка адресов вида https://1.2.3.4.ru/something. Опция «Блокировать HTTPS по IP» немного изменила своё поведение:

  • включено: Блокировать HTTPS по IP для всех записей в едином реестре, где встречаются HTTPS-ссылки;
  • выключено: Блокировать HTTPS по IP только в случаях, если иначе заблокировать ресурс невозможно.

«Под капотом» это выглядит как разделение списка IP в файрволе на 2 ipset:

  • `ip_https` — ресурсы, которые можно заблокировать только по IP, используется всегда, независимо от опций;
  • `ip_https_plus` — дополнительные IP адреса для блокировки на портах HTTPS. Включается опцией «Блокировать HTTPS по IP».

Опция «Использовать nslookup» использует резолвер для расширения списка IP для ipset `ip_https_plus`.

Исправлено: не блокировались нестандартные порты HTTPS при включении опции «оптимизация подсистемы роутинга»

На самом деле, пока всего 1 порт. Однако, несмотря на то, что это исправлено — рекомендуем всё равно эту опцию выключить, она является сильно устаревшей и даёт мало пользы в большинстве случаев.

Затем не забудьте проверить изменение нагрузки на сервер (до и после выключения и рестарта) с помощью утилиты `/usr/local/Reductor/bin/net_rx_top.sh`, оно не должно превышать 25000 прерываний на ядро. В противном случае необходимо решать проблему с производительностью, лучше горизонтальным масштабированием.

Опции «Использовать SNI» и «Использовать NOTRACK» теперь включаются при обновлении автоматически

Единоразово, затем их можно отключить. Благодаря тому, что свой IP адрес мы удаляем в цепочке `raw -> PREROUTING -> mirror_info` опция NOTRACK теперь полностью безопасна. SNI-модуль успешно прошёл экспериментальную фазу и хорошо себя зарекомендовал более чем на 80 серверах, перед тем как быть включённым по умолчанию.

Прочие исправления

  • редуктор не стартовал при основном маршруте через девайс, а не IP шлюза;
  • использование дополнительных правил фильтрации https приводило к невозможности старта Reductor;
  • DNS-спуфинг мог зацикливать HSTS-прокси, если его трафик попадал в зеркало. Сейчас трафик с его IP игнорируется.

Утилиты для отладки и обработка списков

Работа обработки списков URL ускорена в 7 раз

Однажды, в выходные была предпринята попытка всё переписать на Go, которая закончилась профилированием, изменением 8 строчек в одной функции.

Результаты замера скорости обработки списков. Окружение: CentOS 6, KVM, 2 виртуальных ядра, 1Gb RAM, виртуальный диск (qcow2, writeback), список `rkn.url_http`, на момент замера 39000 URL.

  • Старая версия, python 2.6: 0m21.163s
  • Старая версия, pypy2.7: 0m5.310s
  • Новая версия, python2.6: 0m3.312s
  • Новая версия, pypy2.7: 0m3.560s

Один из наиболее важных вариантов экранирования пропускался

Ошибка, связанная с всего-лишь одной запятой, имелась с ноября 2015 года, но никем не была замечена. Имеется только один подтверждённый факт пропуска одного URL. В итоге число предобработанных для загрузки в ядро на выходе повысилось с ≈43000 до ≈52000 (для алгоритма match-модуля это на самом деле крайне незначительно влияет на производительность).

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

Скрипт для блокировки/разблокировки ресурсов по IP на маршрутизаторах некоторое время не мог найти файл `ip_block.load`. Это исправлено, но возможно имело последствия, так что всем использующим интеграцию с маршрутизаторами средствами BGP рекомендуется обновить хук и проверить, что успешно анонсируются все IP адреса. В противном случае может помочь инструкция.

Прочее

Добавлено:

  • утилиты для отладки: `support_info.sh` теперь показывает статистику по дисковому пространству;
  • утилиты для отладки: утилита показывающая информацию по доступным обновлениям. Запуск — `/usr/local/Reductor/bin/check_update_human.sh`;
  • выгрузка списков: возможность выполнять клиентские хуки до начала выгрузки. В `userinfo/hooks/rkn_download.sh` достаточно определить функцию `client_pre_hook()`.

Исправлено:

  • утилиты для отладки: скрипт `url_info.sh` пытался искать данные в старых списках;
  • мастер настройки сети: L3 vlan схема не работала из коробки, не хватало опции `VLAN=yes` в шаблоне конфига интерфейса;
  • обработка списков: списки Carbon Soft для временных решений качались в старом формате -> не использовались;
  • обработка списков: не выкачивались сигнатуры для URL с несколькими пробелами;
  • обработка списков: не работала DNS-фильтрация при пустых строках в списках провайдеров. Помимо этого обработка стала активнее и явнее отсекать невалидные данные, например URL с доменами первого уровня при обработке списков URL.

Резолвер

Не удалялись временные файлы

Могло привести к переполнению `/tmp/`, особенно там, где используется реальный `tmpfs`. Благодаря своевременному критическому обновлению проблема успела проявиться только на двух наблюдаемых мониторингом серверах, у одного из которых было отключено критическое обновление, где была устранена вручную.

Прочие исправления логики после переезда на новые списки

Теперь создаётся симлинк `/usr/local/Reductor/lists/https.resolv` для совместимости с `named fakezone generator`

С ним уже найдено и исправлено несколько багов:

  • домены для отправки в прокси по DNS могли начать блокироваться по IP из-за попадения в https.resolv;
  • запуск старого резолвера в cron.d приводил к занулению https.resolv;
  • создание https.resolv происходит даже если резолвер выключен;
  • мог быть заблокирован IP адрес страницы-заглушки.

Тесты

«Service reductor restart» всегда возвращал нулевой код возврата, даже если писал об ошибках. Это исправлено, так что у нас появились pairwise тесты параметров фильтрации, позволяющие за полторы минуты достаточно достоверно подтверждать отсутствие проблем в опциях и сочетаниях опций (пусть и только попарных, но это в разы лучше, чем ничего), приводящих к невозможности запуска.

Исправления

  • satellite: Carbon Reductor Satellite стал проверять фильтрацию в 2.5 раза быстрее благодаря более оптимальному алгоритму разделения ресурсов для проверки между потоками;
  • satellite: не разбирался реестр из-за неполного конфига;
  • диагностика/ошибки настройки: не показывались подробности по проблемам: интеграция с маршрутизаторами, уведомления админа редиректом;
  • мастер настройки: не запускался выбор метода обновления списков РКН (web, xml, pem);
  • интеграция с биллингом: не работала при ненастроенной DNS-фильтрации.

Reductor 8.0.0 1395


Отличия от 7 версии

Форма поставки

Основным различием является форма поставки приложения. Теперь Carbon Reductor поделен на отдельные приложения: reductor, blockpage и https_proxy (последние два могут быть отключены), а на подходе и satellite. Каждое приложение поставляется в виде изолированного chroot-окружения, где есть всё, что ему необходимо для работы. Помимо них есть ещё два обязательных контейнера:

  • base — даже не контейнер, а просто папка с утилитами для управления остальными контейнерами и парой конфигов в корне;
  • auth — система авторизации в веб-интерфейс управления сервером.

Все обновления бинарные

Подтягиваются только изменения, скачивание обновления отделено от применения. Незначительным минусом является, пожалуй, размер приложений, но он заметен только при первой установке через медленный канал. В чём-то это схоже с Red Hat Atomic Host / Docker, только без заморочек с «только один запущенный процесс на контейнер» и нет ограничений на работу с ядром хост-системы. Есть и минус — больше нет возможности отката на предыдущую версию, но мы что-нибудь придумаем.

Установка происходит с универсального ISO-образа

Образ автоматически сделает надёжную разбивку дисков, используемую платформой Carbon, соберёт при необходимости софтрейд. Подробнее о процессе установки можно узнать в соответствующей статье в документации.

Диагностика происходит раз в 5 минут

А не так как ранее — раз в час. Запускается отдельно для всех приложений. Веб‑интерфейс редуктора в диагностике показывает все найденные предыдущими запусками ошибками с подробностями, но не запускает саму диагностику.

Изменения в бизнес-процессах

Теперь новые внедрения происходят только для Carbon Reductor 8, а все изменения в первую очередь вносятся в неё, затем при необходимости бэкпортируются в Carbon Reductor 7.

Точного плана по прекращению поддержки Carbon Reductor 7 ещё нет, но мы обязательно сообщим о нём за 2-3 месяца и поможем переехать. Переезжать, пока, стоит только согласовав всё с технической поддержкой, лучше предварительно обкатав восьмую версию на тестовом сервере и убедившись в том, что с ней нет никаких проблем. Проблемы возникшие в результате самостоятельного обновления на 8 версию на продакшне, пока что, не являются критическими и не подлежат приоритетному решению.

Автоматический переезд с 7 версии на 8 сложен технически, в основном из-за недетерминированности хуков и изменений в именовании цепочек файрвола. Тем, кто использует Carbon Reductor без дополнительных наработок, будет значительно проще всё это сделать. Многие типовые хуки уже были включены в виде опций в дистрибутиве, некоторые стали частично бессмысленными после изменения схемы файрвола (ACCEPT в mangle для zabbix например).

Изменения за последний месяц в 8 версии

  • исправлены многочисленные мелкие проблемы с путанницей в местоположении файлов (меняющиеся данные находятся на отдельном разделе);
  • адаптирована к платформе Carbon система диагностики, теперь каждая проверка находится в отдельном файле и может быть запущена без запуска остальных;
  • загрузка списков в ядро стала отказоустойчивее к проблемам отдельных модулей — если один из модулей по какой-либо причине не работает, хотя и должен:
    1. Будет выведено соответствующее сообщение об ошибке.
    2. Скрипт продолжит работу.
    3. Зальёт списки в остальные модули, если это удастся.
    4. Завершится с ошибкой.

Спасибо, что пользуетесь Carbon Reductor!

Среди наших клиентов

Азимут Цифра 1 Завод РТА Инжинэт АЛРОСА УрФУ