Just Another Monitoring
JAM is a simple monitoring tool application. It allows you to monitor the status of your services and applications by sending HTTP requests to them and checking the response status code. The main idea is to have a simple and easy-to-use monitoring tool with minimalistic and nice design.
For now it is in the development stage and has a lot of features to be implemented. Such as proper alerts, more monitoring options, events history and more.
- 90 days history
- groups of hosts
- alerts (in progress)
- events history (in progress)
- multiple databases support (in progress, only bolt and in-memory for now)
Application is available as a Docker image. You can pull it from the Docker Hub or GitHub Registry:
Also you can build it from the source code or use the precompiled binaries. But docker is the easiest way to run the application. And it is recommended to use it.
docker run -d -v ./jam.yaml:/app/config.yaml -v ./data/:/app/data exelban/jam:latest
services:
jam:
image: exelban/jam:latest
container_name: jam
restart: unless-stopped
volumes:
- ./jam.yaml:/app/config.yaml
- ./data:/app/data
logging:
driver: "json-file"
options:
max-size: "10m"
max-file: "3"
healthcheck:
test: "curl -f http://localhost:8822/healthz || exit 1"
interval: 10s
timeout: 10s
retries: 3
start_period: 3s
You can download the precompiled binaries from the releases page.
To build the application from the source code you need to have Go installed on your machine.
git clone https://github.com/exelban/JAM.git
cd JAM
go build -o jam cmd/jam/main.go
./jam
The application is configured via JSON or YAML file. You can find the example of the configuration file in the repository.
You can set the path to the configuration file via the --config-path
flag (CONFIG_PATH
env) or by default it will look for the config.yaml
file in the current directory.