1 июля 2026 г.5 мин чтенияНикита Сухотский

Почему промышленное ПО падает ночью

Разбор ночных сбоев WMS, SCADA и серверов маркировки: логи, диск, PostgreSQL, Redis, Docker. Как снизить простой без ложных обещаний автоматики.

В 7:00 склад не открывается, в 7:05 звонят вам — а ночью «всё работало». На промышленных объектах ночной простой редко бывает случайностью: это накопленные логи, плановый обмен, бэкап и отсутствие дежурного, который понимает цепочку диск → PostgreSQL → Docker → WMS.

Короткий ответ

Промышленное ПО падает ночью, когда фоновые процессы (обмен , выгрузка отчётов, ротация без настройки) заполняют диск или очереди Redis, PostgreSQL уходит в read-only, Docker-контейнер зависает, Nginx отдаёт 502. Контролировать это можно мониторингом порогов, ротацией логов и runbook-сценариями — в том числе через модуль AI Support Agent, который не заменяет инженера и не выполняет произвольные команды.

Кому полезна статья

Начальникам склада и производства, которые получают звонки «система не работает» в начале смены. Системным администраторам и интеграторам 1С на объектах с WMS, SCADA и маркировкой. Владельцам бизнеса, которые хотят понять, зачем платить за отдельный модуль диагностики.

Какая проблема возникает

Днём операторы видят ошибки сразу: ТСД не сканирует, линия встаёт, принтер молчит. Ночью никто не смотрит дашборды. Типичная цепочка:

  1. Плановый обмен 1С выгружает большой XML/JSON в каталог интеграции.
  2. Лог integration.log пишется в тот же раздел, что и данные WMS.
  3. Диск заполняется до 95% — система ещё «жива», но медленная.
  4. В 4:00 PostgreSQL не может создать WAL — режим read-only.
  5. В 6:30 контейнер backend уходит в restart loop.
  6. В 7:15 кладовщик видит белый экран на ТСД.

Параллельно может страдать маркировка: буфер КМ в той же базе, обмен с ГИС МТ в очереди. Это не ошибка DataMatrix — это инфраструктура. Коды проверяют через разбор структуры КМ, а не перезагрузкой сервера.

Пример реальной ошибки

Производство напитков, SCADA + MES + сервер маркировки на одной VM. Ночью cron запускает отчёт по смене за неделю — тяжёлый SQL к PostgreSQL. Одновременно Docker пишет json-log без лимита размера. К 3:00 диск 98%. PostgreSQL: could not extend file. MES перестаёт записывать факт выпуска. Линия физически работает, но учёт остановлен.

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

Пять частых ночных триггеров

1. Логи без ротации

Интеграция с 1С, трассировка HTTP, debug в production — всё в один файл. Рекомендации по логированию контейнеров описаны в документации Docker. На объекте часто никто не настраивает max-size и max-file.

2. PostgreSQL и полный диск

При нехватке места СУБД переходит в режим, где нельзя писать. Это описано в документации PostgreSQL. WMS, SCADA и буфер маркировки одновременно перестают сохранять транзакции.

3. Redis и очереди ТСД

Задания на отбор, подтверждения сканирования, статусы КМ — в очередях. Переполнение памяти Redis или eviction политики без контроля даёт «тихие» потери сообщений к утру.

4. Docker restart loop

Контейнер падает, Docker перезапускает, снова падает — в логе тысячи строк за час. Без мониторинга restart count дежурный узнаёт только утром.

5. Nginx 502 как симптом

Часто это не «сломался Nginx», а мёртвый upstream. Проверка должна идти цепочкой: Nginx → backend → БД → диск.

Что делать без магии «ИИ всё починит»

ШагДействиеОшибка
1Алерт при 80–85% дискаждать 100%
2Ротация и архив логов по политикеудалять всё подряд
3Лимиты логов Dockerбезлимитный json-file
4Runbook с подтверждениемпроизвольные команды ночью
5Отчёт после инцидента«перезагрузили и забыли»

Модуль AI Support Agent автоматизирует только пункты из согласованного runbook — например, архив логов старше 14 дней в отдельный том, перезапуск конкретного контейнера после проверки PostgreSQL, уведомление в Telegram с фрагментом лога.

Связь со складом, линией и клиникой

Чек-лист проверки

  • Есть алерт на диск 85% на сервере WMS/SCADA/маркировки
  • Настроена ротация логов интеграции с 1С (не вручную раз в месяц)
  • Docker logging driver с лимитом размера
  • PostgreSQL: мониторинг места под WAL и data
  • Redis: лимит памяти и политика eviction согласована с разработчиком WMS
  • Описан runbook «диск заполнен» — что архивировать, что не трогать
  • После инцидента есть отчёт, а не только устный «перезапустили»
  • Рассмотрен AI Support Agent как доп. модуль к проекту

Когда пора внедрять систему контроля

Один сбой в квартал и есть админ на связи — достаточно ручного чек-листа. Системный подход нужен, когда:

  • простой ночью уже стоил смены или штрафа от сети;
  • серверов несколько, интеграций с 1С больше одной;
  • дежурный не знает, безопасно ли удалять логи;
  • WMS, SCADA и маркировка на одном хосте — единая точка отказа.

Что можно внедрить

  • мониторинг диска, логов, PostgreSQL, Redis, Docker, Nginx;
  • runbook с уровнями автономности и подтверждением критичных шагов;
  • AI Support Agent от 60 000 ₽ как отдельная опция;
  • ежемесячное сопровождение от 15 000 ₽/мес.

Связанные материалы

Связанные решения

Когда это становится проблемой бизнеса

Пока сервер падает раз в квартал — хватает ручного перезапуска. Когда диск забивают логи, PostgreSQL уходит в read-only, а склад узнаёт об этом утром — нужен контроль и runbook.

  • диск заполняется логами интеграции
  • Docker-контейнер завис, обмен с 1С остановился
  • нет отчёта, что именно сделали ночью
  • дежурный не успевает смотреть все сервисы

AI Support Agent может помочь обнаружить типовую проблему и выполнить разрешённый сценарий — с подтверждением на критичных шагах.

Когда стоит внедрять систему

Если ночью система может упасть из‑за логов, диска, очередей, базы данных или зависшего сервиса — нужен модуль диагностики и безопасного восстановления по runbook-сценариям. AI Support Agent не заменяет инженера и не выполняет произвольные команды.

AI Support Agent

Что можно внедрить под вашу задачу

  • загрузка КМ из ГИС МТ
  • буфер кодов для линии
  • проверка структуры AI 01/21/93
  • проверка GS-разделителя
  • поиск дублей
  • печать DataMatrix
  • очередь печати
  • связь с принтером
  • связь со сканером или камерой
  • логирование каждого КМ
  • статусы: получен, напечатан, нанесён, верифицирован, списан, отгружен
  • агрегация коробов и палет
  • интеграция с 1С, WMS, MES
  • отчёты по смене и партии
Разобрать мою задачу

С чего можно начать

  • Разбор проблемы по описаниюот 0 ₽
  • Аудит маркировкиот 15 000 ₽
  • Модуль проверки DataMatrixот 60 000 ₽
  • AI Support Agent (базовая диагностика)от 60 000 ₽
  • Интеграция принтера/сканераот 80 000 ₽
  • WMS-стартот 120 000 ₽
  • SCADA/HMIот 95 000 ₽
  • WMS + ТСД + маркировкаот 250 000 ₽
  • XRAY/PACS архивот 200 000 ₽
  • Ежемесячное сопровождениеот 15 000 ₽/мес

Это ориентиры. Точная стоимость зависит от оборудования, интеграций, объёма данных и состояния текущего процесса. Для оценки достаточно описать задачу и прислать пример ошибки.

Читайте также

ЗАЯВКА

Разобрать проблему

Опишите контур: оборудование, симптом, пример кода, ошибки или фрагмент лога. Отвечу, где узкое место — данные, печать, сканер, WMS, 1С или сервер.

Модуль диагностики логов, диска и сервисов по runbook-сценариям. Подключается отдельно, не заменяет инженера.

Чем больше деталей вы укажете, тем быстрее можно понять, где ломается процесс: данные, печать, сканер, WMS, 1С, сервер или оборудование.

Частые вопросы

Почему сбои чаще обнаруживают утром, а не ночью?

Ночью нет операторов и кладовщиков — нагрузка на интерфейс низкая, фоновые задачи (обмен 1С, архивация, отчёты) наоборот растут. Диск и логи заполняются без заметных симптомов до критического порога.

Можно ли безопасно удалять любые логи при заполнении диска?

Нет. Сначала нужен анализ — какой сервис пишет, есть ли ротация, не уничтожаете ли вы контекст для разбора инцидента. Runbook должен описывать, какие файлы архивировать, а не «удалить всё старше недели» без проверки.

Поможет ли перезагрузка сервера каждую ночь?

Это маскирует проблему. Утечки памяти, рост логов и зависшие очереди вернутся. Лучше мониторинг порогов и разрешённые сценарии восстановления с отчётом.

Как связано это с маркировкой и Честным Знаком?

Сервер буфера КМ и обмена с ГИС МТ часто на том же хосте, что WMS. Падение PostgreSQL или диска останавливает и маркировку, и отгрузку — см. модуль проверки КМ отдельно от инфраструктуры.