Моніторинг автоматизації: як відрізнити спокій від тихої поломки
Скрипт, який працює сам раз на добу, зазвичай мовчить. Проблема в тому, що зламаний скрипт мовчить точно так само. Розбираю на прикладі простої домашньої системи, як це виправити.
Більшість корисних автоматизацій у малому бізнесі працюють у фоні: раз на годину перевіряють пошту, раз на добу забирають замовлення з маркетплейсу, щоночі формують звіт. Вони не потребують уваги, і саме в цьому їхня цінність. Але в цьому ж їхня головна пастка.
Хочу показати її на прикладі, який не має стосунку до бізнесу, але дуже точно ілюструє проблему. А потім перенесемо висновки на ваші процеси.
Приклад: книжкова бібліотека, що оновлюється сама
Уявіть людину, яка читає серійні романи на сайті самвидаву. Нові розділи виходять раз на тиждень, сайт не дає завантажити книгу, а читати з телефона на ніч втомлює очі. Хочеться, щоб нові розділи самі з'являлися на електронній читалці, ще й з заміною слів, які дратують.
Система, яку для такої задачі можна зібрати за вечір з Claude Code, складається з кількох шарів:
- Telegram-бот як пульт: надсилаєш посилання на книгу, і все.
- Розклад на сервері, який раз на добу запускає перевірку.
- Дешева перевірка змісту: чи з'явились нові розділи.
- Завантаження під обліковим записом, лише якщо є нове.
- Фільтр слів і збирання файлу книги.
- Доставка на читалку.
- Сторож, який стежить, чи все це взагалі працює.
Розділення на шари окупилося майже одразу: коли систему переносили з ноутбука на сервер, переписувати довелося тільки шар запуску. Решта переїзду не помітила.
Страшне виявилось легким, а легке складним
Завантаження з сайту, який спеціально цьому заважає, здавалось головною перешкодою. А закрилося найшвидше: для таких майданчиків існують відкриті інструменти, і достатньо обгорнути готове рішення. Третина проєкту за пів години.
А от «замінити погані слова» виявилось справжньою роботою. На живому тексті проста пошук-заміна ламається одразу: у слова є невинні спільнокореневі сусіди, і помилкових збігів набралася чверть. До того ж заміна має стати в речення з правильним відмінком і регістром. Рішення: відокремити правила від словника. Код знає граматику, файл знає слова. І кожна заміна пишеться в журнал з п'ятьма словами контексту, щоб через місяць правити список за фактами.
Для бізнесу висновок той самий: те, що звучить як «п'ять хвилин роботи», на реальних даних часто виявляється найскладнішим. Плануйте час саме на обробку даних, а не на інтеграції.
Тиха поломка: три сценарії
Ось головне. Така система працює у фоні й мовчить, коли сказати нічого. Тому будь-яка поломка виглядає точно так само, як спокійний тиждень без оновлень.
- Протухла сесія або закінчилась підписка. Завантаження повертає не помилку, а сторінки-заглушки «продовження доступне за підпискою». Решта відпрацює штатно, файл поїде на читалку, і ніхто нічого не помітить. Ліки: перевіряти обсяг кожного розділу перед відправкою.
- Сайт банить за частоту запитів. Ліки: спочатку одна дешева перевірка змісту, і лише якщо з'явилося нове, важке завантаження.
- Зупинився таймер або впав контейнер. Знову виглядає як «немає нових розділів». Ліки: кожен успішний прогін записує час успіху, а окремий сторож перевіряє вік цієї позначки. Тиша довше 48 годин означає повідомлення відповідальному.
Важливо, що сторожа запускає не той самий таймер, бо таймер якраз і є тим, що треба стерегти.
Кому що казати
Деталь, яка перетворює скрипт на продукт: кожна подія має одного адресата. Користувачу людською мовою лише про результат. Технічному відповідальному стек помилок, протухлі токени і змінену верстку сайту. Користувач не повинен бачити нічого, що він не може полагодити і від чого лише тривожитиметься.
У бізнесі те саме: менеджеру не потрібне повідомлення про помилку API, йому потрібно «три замовлення з маркетплейсу не завантажились, я вже повідомив Ігорю».
Бот-консультант розпитає про процеси і запропонує перший крок. Або напишіть мені напряму, обговоримо вашу задачу.
Граблі, на які легко наступити
- Запустили бота на сервері, а вдома забули вимкнути копію з тим самим токеном. Telegram віддає повідомлення комусь одному, тож половина команд губиться. У журналі сервісу видно помилку 409 Conflict, а в чаті все виглядає нормально.
- Шлях з пробілом у файлі змінних оточення, і файл перестає читатися.
- Ліміти пам'яті треба ставити і на сервіс, і на контейнер окремо.
Що перевірити у своїх автоматизаціях
- Чи є у кожного фонового процесу позначка останнього успішного запуску?
- Чи хтось перевіряє, скільки часу минуло з цієї позначки?
- Чи перевіряється результат на правдоподібність (обсяг, кількість записів), а не лише відсутність помилки?
- Чи розділені повідомлення для людей і для технічного відповідального?
Мінімальний набір для бізнес-автоматизацій
Для компанії, де працює кілька автоматизацій (вивантаження замовлень, синхронізація залишків, розсилки), я налаштовую три прості речі:
- Пульс. Кожна автоматизація після успішного запуску оновлює позначку часу. Окрема перевірка раз на годину дивиться, чи всі позначки свіжі, і пише в Telegram, якщо щось не запускалось довше, ніж треба.
- Здоровий глузд у цифрах. Якщо сьогодні вивантажилось нуль замовлень, а зазвичай їх сорок, це підозріло навіть без помилки в логах.
- Адресат. Технічні збої йдуть мені, а бізнесові відхилення (немає замовлень, не прийшла оплата) йдуть відповідальній людині в компанії.
Головне правило: сповіщень має бути мало. Якщо канал з алертами пищить щодня, люди перестають його читати, і реальна поломка знову стає тихою.
Читайте також: Автоматизація бізнесу ШІ-агентами: що працює на практиці, Нагадування про терміни документів у Telegram і Hermes Agent встановлення з нуля: покрокова схема.
Коротко
- Корисною річ стає, коли закрито весь маршрут людини, а не одна ланка.
- Фонові процеси ламаються тихо, тому мовчання має бути відмінним від смерті.
- Позначка успіху плюс незалежний сторож вирішують більшість проблем.
- Перевіряйте не лише помилки, а й правдоподібність результату.
Якщо у вас вже є автоматизації, але ви не впевнені, що вони працюють, напишіть мені в Telegram. Подивлюся, де вони можуть мовчки ламатися.
Що саме я роблю для компаній, описано в розділі послуги, а швидко оцінити вашу ситуацію допоможе бот-консультант ITIVNIK.
Бот-консультант розпитає про процеси і запропонує перший крок. Або напишіть мені напряму, обговоримо вашу задачу.