HTTP Endpoint Monitoring

GitHub link for this project:

It is essential to monitor and log the uptime and latency of services. This will allow us to see latency over time, be proactive by detecting and fixing issues before they happen, and determine if an update or new release has degraded service.

You need a service monitor if you answered yes to any of these. There are out-of-the-box tools and services to do this, but if you want ultimate control, then write it yourself...besides who wants to run somebody else's code when you can write your own?

This simple service monitor is written in Python and deployed as a container.

The program reads a list of URLs from the config file, how often to perform the call, and then executes the HTTP call, logging the response time, response code, and timestamp.

The URL list is refreshed at the specified interval so that URLs can be added/removed without restarting the program.

A separate service should be developed to analyze the data and perform actions (i.e., alert support, remove endpoint from a load balancer, etc.)

Code Inventory


Quick Start

git clone
cd HTTP-Service-Monitor
docker build -t service-monitor: latest
Docker container run --name service-monitor -d service-monitor: latest

Related Articles

Kafka Cluster Setup

Streaming from Kafka with PySpark