Skip to content
malik-buildsPublic

About

Async HTTP endpoint uptime monitor — Prometheus metrics, FastAPI, Docker, Grafana

Resources

Stars

1 star

Watchers

0 watching

Forks

Repository files navigation

Argus

Lightweight async endpoint uptime monitor. Pings a configurable list of HTTP targets on a set interval and exposes uptime, latency, and request counts as Prometheus metrics.

Stack

Component Technology
Runtime Python 3.11
API FastAPI + Uvicorn
HTTP client httpx (async)
Metrics prometheus-client
Config pydantic-settings + PyYAML
Observability Prometheus + Grafana

Metrics exposed

Metric Type Labels
argus_endpoint_up Gauge url, name
argus_endpoint_latency_seconds Histogram url, name
argus_endpoint_requests_total Counter url, name, status_code

Quick start

# Clone and run the full stack
git clone https://github.com/malik-builds/argus
cd argus
docker compose up --build

Configuration

Edit config.yaml to set targets and scrape interval:

scrape_interval: 30

targets:
  - name: github
    url: https://github.com
  - name: my-api
    url: https://api.example.com/health

Screenshot

Add Grafana dashboard screenshot here

About

Async HTTP endpoint uptime monitor — Prometheus metrics, FastAPI, Docker, Grafana

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages