- Главная
- Мониторинг
- Мониторинг TCP
Мониторинг TCP: сервис всё ещё принимает соединения?
По расписанию открываем TCP-соединение с хостом и портом и записываем, сколько длится рукопожатие. Это та же проверка, что и мониторинг портов, описанная для тех, кто ищет её именно как TCP.
- 30 мониторов бесплатно
- Без банковской карты
- Сбои подтверждаются из других регионов
- Amsterdam19мсоткрыт
- London28мсоткрыт
- Время соединения19 мс
- Порт25
- Таймаут10 с
Иллюстративный пример
Проверьте прямо сейчас, в браузере
Без регистрации. Мониторинг TCP: введите адрес и посмотрите, что именно отслеживает такой монитор. Ничего из введённого не сохраняется.
Браузер не может открыть сырые TCP-, UDP- или ICMP-соединения, а публичный API проверки говорит только по HTTP(S). Поэтому вместо выдуманного результата вот команда, которую монитор автоматизирует: он запускает её по расписанию из нескольких регионов и подтверждает сбои.
Что именно проверяет этот монитор
Вердикт даёт рукопожатие
Проверка успешна, когда трёхэтапное рукопожатие завершилось. После этого ничего не отправляется, поэтому сервис оценивают по тому, принимает ли он соединения, а не по тому, что отвечает.
Отказ или молчание
Отказ в соединении означает, что хост жив, а сервис не слушает. Таймаут означает, что пакеты пропадают по дороге. Инцидент называет, какой из двух случаев у вас.
Любой порт на ваш выбор
Почта на 25, 465 или 993, SSH на 22, MySQL на 3306, Postgres на 5432, Redis на 6379 или собственный административный порт. Только публичные хосты: частные диапазоны отклоняются.
История времени соединения
Время каждого рукопожатия сохраняется, так что хост базы данных, который принимает соединение 400 мс, виден на графике раньше, чем он начнёт их отклонять.
Мониторинг TCP: как выглядит оповещение
Одно и то же событие приходит письмом, сообщением в Telegram или карточкой в Slack. Это текст, который отправляют каналы; хост, время и числа выдуманы.
mail.clienta.com:25
mail.clienta.com:25 · Connection refused on mail.clienta.com:25 · confirmed from Amsterdam (AMS), London (LON)
| Error | Connection refused on mail.clienta.com:25 |
|---|---|
| Confirmed by | Amsterdam (AMS), London (LON) |
| Since | 14:02:11 UTC |
| Target | mail.clienta.com:25 |
| Next step | Check the server / hosting panel. Acknowledge so the team knows you are on it. |
AcknowledgeOpen incident
Tenium · checked from Amsterdam · 14:02 UTC
Tenium alerts
🔴 DOWN · mail.clienta.com:25 · Connection refused on mail.clienta.com:25 · confirmed from Amsterdam (AMS), London (LON)
reply /ack or acknowledge · open incident
TTenium APP 2:02 PM
DOWN · mail.clienta.com:25
mail.clienta.com:25 · Connection refused on mail.clienta.com:25 · confirmed from Amsterdam (AMS), London (LON)
- Error: Connection refused on mail.clienta.com:25
- Confirmed by: Amsterdam (AMS), London (LON)
- Target: mail.clienta.com:25
Подтвердить получениеOpen incident
Check the server / hosting panel. Acknowledge so the team knows you are on it. · checked from Amsterdam
Мониторинг TCP: e-mail, Discord и Google Chat работают на всех тарифах, Slack, Telegram, Teams и Mattermost — с тарифа Starter. SMS и голосовых звонков нет.
Время ответа с порогом
Каждая проверка сохраняет, сколько длился ответ. Мониторинг TCP: подвигайте порог и посмотрите, когда сработало бы оповещение о медленном ответе.
Как быстро вы узнаете
Выберите тариф, чтобы увидеть его интервал проверки и сколько сбой идёт до вас, с учётом подтверждения.
Мониторинг TCP: сбой случается в случайный момент между двумя проверками, поэтому в среднем вы ждёте полинтервала, а в худшем случае — полный интервал плюс окно подтверждения. Одного региона с ошибкой мало: инцидент открывается, только когда сбой подтверждают оба региона. Остальные регионы спрашиваются сразу, на ответы отведено до 60 секунд.
Как настроить мониторинг TCP за 30 секунд
Укажите адрес
Добавьте имя хоста или публичный IP-адрес и TCP-порт, а Tenium подставит разумный таймаут и стандартные настройки подтверждения.
Выберите интервал
Самый быстрый интервал: 30 с на Pro и Agency, 1 мин на Starter, 5 мин на Free. Более редкие интервалы доступны на всех тарифах.
Выберите контакты для оповещений
Выберите, кому отправлять оповещения. E-mail, Discord и Google Chat работают на всех тарифах, Slack, Telegram, Teams и Mattermost — с тарифа Starter, webhook — с Pro.
Сохраните
Первая проверка запускается через несколько секунд. Если проверка не пройдёт, другие регионы проверят ещё раз, прежде чем откроется инцидент, поэтому один неудачный маршрут вас не разбудит.
Что означает каждая ошибка
Это текст, который инцидент показывает в строке «Error», типичная причина и что проверить первым.
ECONNREFUSEDConnection refused on mail.clienta.com:25
Хост работает, но на порту никто не слушает: служба упала или её не запускали. Этот сбой диагностировать быстрее всего.
Выглядит как: Connection refused on mail.clienta.com:25
TIMEOUTTimeout after 10 s connecting to mail.clienta.com:25
На SYN не ответили. Файрвол отбрасывает пакеты, хост перегружен или группа безопасности потеряла адрес нашего проверяющего сервера.
Выглядит как: Timeout after 10 s connecting to mail.clienta.com:25
EHOSTUNREACHHost unreachable
До хоста нет маршрута: сбой сети или смена маршрутизации между регионом и вашим провайдером.
Выглядит как: Host unreachable
ECONNRESETConnection reset by peer
Хост принял соединение и сразу его разорвал, чаще всего из-за лимита соединений или правила ограничения частоты.
Выглядит как: Connection reset by peer
ENOTFOUNDDNS lookup failed for mail.clienta.com
Имя не резолвится. Проверьте запись, прежде чем винить службу.
Выглядит как: DNS lookup failed for mail.clienta.com
Мониторинг TCP: что входит в тарифы
| Free $0/мес. | Starter $7/мес. | Pro $29/мес. | Agency $59/мес. | |
|---|---|---|---|---|
| Доступно | ✓ | ✓ | ✓ | ✓ |
| Мониторы | 30 | 100 | 300 | 1000 |
| Самый быстрый интервал | 5 мин | 1 мин | 30 с | 30 с |
| Регионы | 1 | 2 | 2 | 2 |
| Собственные заголовки | — | — | ✓ | ✓ |
| Оповещения о медленном ответе | — | — | ✓ | ✓ |
| Эскалация на второй контакт | — | — | ✓ | ✓ |
| Страницы статуса | 1 | 3 | 10 | Без ограничений |
Другие типы мониторов
Почему рукопожатие — полезный, хоть и узкий сигнал
TCP-монитор делает одно: определяет адрес хоста, отклоняет частные адреса, открывает соединение с выбранным портом и останавливает отсчёт, когда рукопожатие завершено. После этого он не отправляет ни байта и ничего не читает в ответ. Поэтому одинаково подходит для почтового сервера, базы данных, игрового сервера или SSH-бастиона: ни с одним из них не нужно разговаривать на его языке.
Узость — это и ограничение. База данных, которая принимает соединения, но застряла на воспроизведении журнала, проверку всё равно пройдёт. Воспринимайте TCP-проверку как первую линию, «кто-то слушает», и добавьте проверку более высокого уровня, где она возможна: HTTP-проверку для веб-приложения, проверку ключевых слов для страницы, которая должна отображаться, DNS-проверку для сервера имён.
Какие порты отслеживают и что обычно означает сбой
На каждом порту встречаются одни и те же три исхода, и они указывают в разные стороны. Пользуйтесь списком причин ниже как порядком, в котором стоит искать, а не как приговором.
- Connection refused (отказ): хост работает, а сервис не слушает. Процесс упал, его остановил деплой или после смены конфигурации он слушает только localhost.
- Таймаут: ничего не вернулось. Сначала думайте о фаерволе или группе безопасности, особенно после смены адреса на стороне проверяющего сервера (см. список IP-адресов проверяющих серверов), затем о перегруженном хосте.
- Reset by peer: сервис принял соединение и сразу его разорвал. Так ведут себя лимиты соединений, правила вроде fail2ban и ограничители частоты запросов.
- Рукопожатие медленное, но успешное: график растёт ещё до того, как что-то начнёт отказывать. Хост базы данных с исчерпанными слотами очереди часто часами выглядит именно так.
Интервалы, регионы и тарифы
TCP-проверки есть на каждом тарифе. Free выполняет их каждые 5 мин, Starter — каждые 1 мин, а Pro и Agency — каждые 30 с. Прежде чем откроется инцидент, сбой перепроверяют из других рабочих регионов (сейчас работают 2 региона), и для TCP это важнее, чем для HTTP: проблемы с транзитом между одним регионом и вашим провайдером выглядят из этого региона точно как мёртвый сервис.
Открывать порт базы данных на весь интернет только ради мониторинга — невыгодный обмен. Лучше следить за публичным сервисом перед ней, а белый список (allow-list) с адресами проверяющих серверов применять только к портам, которые должны быть публичными, например SMTP.
Частые вопросы: мониторинг TCP
Отличается ли TCP-мониторинг от мониторинга портов?
Нет. Это та же проверка под названием, которое многие ищут. [Страница о мониторинге портов](/monitoring/port) рассказывает о той же функции на примерах с базами данных.
Можно ли проверить, что сервис отвечает правильно?
На уровне TCP нет. Он доказывает лишь то, что порт принимает соединения. Для доказательства на уровне протокола используйте проверку HTTP, ключевых слов или DNS либо heartbeat, который отправляет сам сервис.
Работает ли это для UDP-сервисов?
Нет, у UDP нет рукопожатия. Используйте отдельный [UDP-монитор](/monitoring/udp): он отправляет пробный пакет и ждёт любого ответа.
Можно ли отслеживать частный IP-адрес или сервис за VPN?
Нет. Частные диапазоны отклоняются, потому что регионы проверки до них не дотягиваются. Вместо этого настройте heartbeat, который внутренний сервис будет отправлять в Tenium.
Начните мониторинг TCP бесплатно
30 мониторов на тарифе Free, без банковской карты, а сбои подтверждаются из других регионов (сейчас работают 2 региона). Переходите на тариф выше, когда клиентов станет больше.