This repository has been archived on 2024-07-19. You can view files and clone it, but cannot push or open issues or pull requests.
spadinastan/services/healthcheck
2024-03-08 18:39:57 -05:00
..
healthcheck feat(healthchecks): ping services periodically to check for availability + post results to Discord 2024-03-08 18:39:57 -05:00
script feat(healthchecks): ping services periodically to check for availability + post results to Discord 2024-03-08 18:39:57 -05:00
.dockerignore feat(healthchecks): ping services periodically to check for availability + post results to Discord 2024-03-08 18:39:57 -05:00
.python-version feat(healthchecks): ping services periodically to check for availability + post results to Discord 2024-03-08 18:39:57 -05:00
build.sh feat(healthchecks): ping services periodically to check for availability + post results to Discord 2024-03-08 18:39:57 -05:00
constants.sh feat(healthchecks): ping services periodically to check for availability + post results to Discord 2024-03-08 18:39:57 -05:00
Dockerfile feat(healthchecks): ping services periodically to check for availability + post results to Discord 2024-03-08 18:39:57 -05:00
pyproject.toml feat(healthchecks): ping services periodically to check for availability + post results to Discord 2024-03-08 18:39:57 -05:00
README.md feat(healthchecks): ping services periodically to check for availability + post results to Discord 2024-03-08 18:39:57 -05:00
requirements.txt feat(healthchecks): ping services periodically to check for availability + post results to Discord 2024-03-08 18:39:57 -05:00
requirements_dev.txt feat(healthchecks): ping services periodically to check for availability + post results to Discord 2024-03-08 18:39:57 -05:00
start.sh feat(healthchecks): ping services periodically to check for availability + post results to Discord 2024-03-08 18:39:57 -05:00
stop.sh feat(healthchecks): ping services periodically to check for availability + post results to Discord 2024-03-08 18:39:57 -05:00

Healthcheck reporter

Periodically checks if resources are reacheable and reports via a configurable webhook.

Configuration

A config.json file should be provided and follow the schema outlined in use_cases.Configuration:

{
  "endpoints": {
    "service-a": "https://service-a.com",
    "service-b": "http://service-b:8080",
    ...
  },
  "webhook_url": "https://my-webhook.com/",
  "check_interval": 3600
}

Every check_interval seconds, the application will attempt to reach each of the services and post a message summarizing the results to webhook_url.