- Головна
- Моніторинг
- Моніторинг змін на сторінці
Моніторинг змін на сторінці: дізнайтеся, коли змінилася сторінка чи файл
Tenium завантажує сторінку, лишає з неї видимий текст, рахує його хеш і сповіщає, коли хеш змінюється. Підійде для прайсу, сторінки з умовами, сайту конкурента чи вашої власної головної.
- Від $7 на місяць на Starter
- Тариф Free: 30 моніторів для HTTP(S), ключових слів, ping і портів
- Free без банківської картки
- Amsterdam97мсбез змін
- London142мсбез змін
- Відбитокa41f9c…
- Порівняно збазовою версією 3 дні тому
- Отримано за55 мс
Ілюстративний приклад
Перевірте просто зараз, прямо в браузері
Без реєстрації. Моніторинг змін на сторінці: введіть адресу й подивіться, що саме відстежує такий монітор. Нічого з введеного не зберігається.
Один справжній запит із перевіряльника Tenium. Він іде за редиректами й читає сертифікат. Нічого не зберігається.
Публічний тест показує лише, чи відповідає сторінка. Відбиток тексту потребує збереженого монітора, який запам’ятає базову версію.
Що саме перевіряє цей монітор
Відбиток тексту
Скрипти, стилі, коментарі й теги відкидаються, а хеш рахується від решти тексту. Правки лише в розмітці сповіщення не викликають.
Стеження за одним блоком
Звузьте перевірку простим селектором (#id, .class, tag, tag#id або tag.class). Якщо елемент зникне, перевірка завершиться збоєм.
Базова версія й одне сповіщення
Перший запуск зберігає базову версію. Після зміни ви отримуєте одне сповіщення, а новий текст стає базовою версією.
Контекст у сповіщенні
У сповіщенні — перші 600 символів нового тексту й попередній хеш, тож зміну можна швидко оцінити.
Моніторинг змін на сторінці: як виглядає сповіщення
Та сама подія приходить листом, повідомленням у Telegram або карткою в Slack. Це текст, який надсилають канали; хост, час і числа вигадані.
clienta.com/terms
clienta.com/terms · Content changed since the last check
| Error | Content changed since the last check |
|---|---|
| Since | 14:02:11 UTC |
| Target | https://clienta.com/terms |
| Next step | Open the monitor to review what changed on the page. |
AcknowledgeOpen incident
Tenium · checked from Amsterdam · 14:02 UTC
Tenium alerts
🟠 CHANGED · clienta.com/terms · Content changed since the last check
open
TTenium APP 2:02 PM
CHANGED · clienta.com/terms
clienta.com/terms · Content changed since the last check
- Error: Content changed since the last check
- Target: https://clienta.com/terms
Підтвердити отриманняOpen incident
Open the monitor to review what changed on the page. · checked from Amsterdam
Моніторинг змін на сторінці: e-mail, Discord і Google Chat працюють на всіх тарифах, Slack, Telegram, Teams і Mattermost — з тарифу Starter. SMS і голосових дзвінків немає.
Час відповіді з порогом
Кожна перевірка зберігає, скільки тривала відповідь. Моніторинг змін на сторінці: посуньте поріг і подивіться, коли б спрацювало сповіщення про повільну відповідь.
Як швидко ви дізнаєтеся
Оберіть тариф, щоб побачити його інтервал перевірки та скільки збій іде до вас, враховуючи підтвердження.
Моніторинг змін на сторінці: збій трапляється у випадковий момент між двома перевірками, тож у середньому ви чекаєте пів інтервалу, а в найгіршому випадку — повний інтервал плюс вікно підтвердження. Одного регіону з помилкою мало: інцидент відкривається, лише коли збій підтверджують обидва регіони. Інші регіони питаються одразу, на відповіді відведено до 60 секунд.
Як налаштувати моніторинг змін на сторінці за 30 секунд
Вкажіть адресу
Додайте адресу сторінки чи файлу й оберіть тип Change, а Tenium підставить розумний таймаут і стандартні налаштування підтвердження.
Оберіть інтервал
Найшвидший інтервал: 30 с на Pro й Agency, 1 хв на Starter, 5 хв на Free. Повільніші інтервали доступні на всіх тарифах.
За потреби додайте селектор
Оберіть, кому надсилати сповіщення. E-mail, Discord і Google Chat працюють на всіх тарифах, Slack, Telegram, Teams і Mattermost — з тарифу Starter, webhook — з Pro.
Збережіть
Перша перевірка запускається за лічені секунди. Якщо перевірка не пройде, інші регіони перевірять ще раз, перш ніж відкриється інцидент, тож один поганий маршрут вас не розбудить.
Що означає кожна помилка
Це текст, який інцидент показує в рядку «Error», типова причина й що перевірити першим.
CHANGEDContent changed since the last check
Хеш видимого тексту інший. Ви отримаєте одне сповіщення, а новий текст стане базовою версією. У сповіщенні є перші 600 символів.
Виглядає як: Content changed since the last check
SELECTORSelector "#price-table" not found
Елемент, за яким ви стежите, зник: через редизайн, перейменований id або помилку на сторінці. Виправте селектор або сторінку.
Виглядає як: Selector "#price-table" not found
HTTP 404404 Not Found
Адреси більше немає, і це вже сама по собі зміна, про яку варто знати.
Виглядає як: 404 Not Found
TIMEOUTTimeout after 30 s
Сторінку не вдалося отримати, тож порівнювати не було з чим.
Виглядає як: Timeout after 30 s
Моніторинг змін на сторінці: що входить у тарифи
| Free $0/міс. | Starter $7/міс. | Pro $29/міс. | Agency $59/міс. | |
|---|---|---|---|---|
| Доступно | — | ✓ | ✓ | ✓ |
| Монітори | 30 | 100 | 300 | 1000 |
| Найшвидший інтервал | 5 хв | 1 хв | 30 с | 30 с |
| Регіони | 1 | 2 | 2 | 2 |
| Власні заголовки | — | — | ✓ | ✓ |
| Сповіщення про повільну відповідь | — | — | ✓ | ✓ |
| Ескалація на другий контакт | — | — | ✓ | ✓ |
| Сторінки статусу | 1 | 3 | 10 | Без обмежень |
Ця перевірка доступна з тарифу Starter. Перевірки HTTP(S), ключових слів, ping і портів є на всіх тарифах.
Інші типи моніторів
Що саме порівнюється
Монітор змін завантажує сторінку так само, як перевірка сайту, прибирає скрипти, блоки стилів, HTML-коментарі й теги, стискає пробіли та рахує SHA-256 від решти тексту. Перший запуск зберігає цей хеш як базову версію й пише в деталях «first run». Під час кожного наступного запуску новий хеш порівнюється зі збереженим. Якщо вони різні, Tenium відкриває інцидент «Content changed», показує монітор як такий, що деградував, а не впав, додає перші 600 символів нового тексту й робить новий хеш базовим. Наступна перевірка без змін закриває інцидент автоматично.
Отже, ви отримуєте одне сповіщення на одну зміну, а не нескінченні нагадування, доки ви не відреагуєте. Візуального порівняння «до й після» немає: ви бачите уривок тексту, старий і новий відбитки, а сама сторінка відкривається одним кліком. Це сигналізація, а не інструмент перегляду змін.
Звужуємо стеження селектором
Сторінки змінюються з багатьох безневинних причин, тому необов’язкове поле селектора обмежує порівняння одним елементом. Синтаксис навмисно мінімальний: #id, .class, назва тега або тег з id чи класом, наприклад table.prices, section#plans чи main. Вкладені селектори з пробілами, селектори атрибутів і позиційні псевдокласи не підтримуються, хоча підказка в полі редактора показує довший приклад. Якщо потрібний елемент лежить глибоко, дайте його контейнеру id і вибирайте його.
Якщо елемент не знайдено, перевірка завершується повідомленням «Selector "#plans" not found», і відкривається звичайний інцидент про недоступність. Нерідко саме цього ви й хочете, коли редизайн непомітно прибирає таблицю цін, але після запланованих змін шаблону будьте до цього готові.
Як приборкати «галасливі» сторінки
Монітор, що спрацьовує щогодини, марний, тож перш ніж вмикати його, пошукайте мінливий вміст. Зазвичай шум дають часові мітки та рядки «востаннє оновлено», CSRF-токени в прихованому тексті, лічильники відвідувачів, відгуки й банери, що змінюються, текст згоди на cookie та A/B-тести. Що робити: вибрати стабільний блок, стежити за адресою з простим текстом чи JSON замість оформленої сторінки або взяти інше представлення тих самих даних, наприклад фід. JSON і текстові файли підходять добре: тегів нема, що прибирати, а хеш рахується від усього тіла.
Є й зворотне обмеження: видно лише текст, який сервер віддає в HTML. Таблиця цін, яку JavaScript підставляє після завантаження, невидима, тож знайдіть API або JSON-файл, з якого читає сторінка, і стежте за ним.
Для чого це добре підходить
Для сторінок, які мають змінюватися рідко й де зміна має значення:
- Прайс постачальника, сторінка тарифів служби доставки, умови користування чи політика конфіденційності вендора, щоб дізнатися про зміни раніше за рахунок.
- Ваш власний robots.txt: правило зі стейджингу на кшталт «Disallow: /», що потрапило в продакшн, може непомітно прибрати сайт із пошукової видачі.
- security.txt, ads.txt та подібні файли, на які покладаються інші системи.
- Головна сторінка сайту-візитки як дешева сигналізація про дефейс чи несподівані правки від того, хто має доступ адміністратора.
- Публічні оголошення, які інакше довелося б перевіряти вручну: сторінка регулятора чи дошка вакансій клієнта.
Чого він не помітить
Моніторинг змін — це не контроль цілісності файлів. Оскільки перед хешуванням скрипти й розмітку прибирають, шкідливий тег script, доданий на сторінку (так зазвичай працюють атаки зі зчитуванням платіжних даних), текст не змінює й лишається непоміченим. Якщо потрібно стежити за підміною скрипта, відстежуйте окрему адресу самого файлу: для більшості мінімізованих файлів хеш охоплює весь вміст, але сприймайте це як сигналізацію, а не гарантію. Так само зміни зображень, CSS і всього, що поза видимим текстом, його не спрацьовують.
Поважайте сайти, за якими стежите: оберіть розумний інтервал (для умов і цін досить раз на годину чи на добу) і відстежуйте лише ті сторінки, які вам дозволено завантажувати.
Які налаштування діють
Монітор використовує ті самі параметри запиту, що й перевірка сайту: метод (HEAD сприймається як GET), діапазон очікуваних статусів, перехід за редиректами, таймаут, basic auth, а на Pro — власні заголовки. Перевірку WAF записують як інцидент «заблоковано» замість того, щоб рахувати від неї хеш, тож фільтр ботів ніколи не створить хибної «зміни». Моніторинг змін доступний з тарифу Starter ($7 на місяць), де найшвидший інтервал — 1 хв; у тарифі Free його немає. Щоб отримувати сповіщення там, де вам зручно, підключіть контакти так само, як для будь-якого монітора, а докази дивіться в картці інциденту, про яку йдеться в розділі про керування інцидентами.
Запитання: моніторинг змін на сторінці
Чи побачу я, що саме змінилося?
Ви отримаєте перші 600 символів нового тексту й хеш-відбитки, а не порівняння рядок за рядком. Якщо потрібно точно бачити, які слова змінилися, зберігайте власну копію сторінки.
Що відбувається після виявлення зміни?
Новий вміст одразу стає базовою версією, тож ви отримуєте лише одне сповіщення. Інцидент закривається на наступній перевірці, яка бачить той самий вміст.
Чи можна стежити за PDF або зображенням?
Двійкові файли читаються як текст, через що хеш нестійкий, а уривок нечитабельний. Заміну файлу монітор помітить, але ця функція створена не для документів.
Чи можна ігнорувати окремі слова чи числа?
Правил ігнорування немає. Використайте селектор для стабільної частини сторінки або вкажіть монітору чистіше джерело тих самих даних.
Спробуйте моніторинг змін на сторінці на Starter
Ця перевірка починається з тарифу Starter за $7 на місяць. Тариф Free, без банківської картки, дає 30 моніторів із перевірками HTTP(S), ключових слів, ping і портів.