Most monitoring starts with a web page. You point an uptime checker at your homepage, it requests the URL every minute, and it tells you when the response stops being a 200. That covers a lot of ground, and for many small sites it is enough.
But a modern application is not one service. Behind the homepage sit a database, a cache, a message queue, a mail server, a search cluster, perhaps an SFTP endpoint for a partner integration or a game server on a custom port. None of these speak HTTP. None of them have a page to load. And many of them can fail while the homepage carries on returning a perfectly healthy 200, because the homepage is cached, or because the page that breaks is the checkout, the login, or the background job that sends receipts.
Consider a few common examples. The mail server stops listening on port 587, and password reset emails quietly stop arriving. Redis on port 6379 falls over, so sessions and rate limits break in odd, intermittent ways. The message broker on port 5672 stops accepting connections, jobs pile up in memory, and nothing is processed for hours. In each case the website looks fine to a basic check, while customers experience something between mild annoyance and a complete outage.
Port monitoring closes that gap. Instead of asking whether a web page loads, it asks a simpler and more fundamental question: is the service on this host and port accepting connections right now? This guide explains how that check works, which ports are worth watching, how to read the results, and how to configure it so that it catches real failures without flooding you with noise.