Home

Awesome

Satellite

Badges

Build Status License: MIT

Getting Started

Before you start, you need to install the prerequisites.

Prerequisites

Run with Docker

Image can be found at package page on GitHub.

docker run --rm \
-e APP_URL=http://127.0.0.1:4000 \
-e REDIS_URL=redis://192.168.0.200:6379/0 \
-p 4000:4000 \
ghcr.io/petaki/satellite

Install from binary

Downloads can be found at releases page on GitHub.


Install from source

Prerequisites for building

1. Clone the repository:

git clone git@github.com:petaki/satellite.git

2. Open the folder:

cd satellite

3. Install the UI dependencies

yarn install

4. Build the UI

yarn prod

5. Build the Satellite:

go build

6. Copy the example configuration:

cp .env.example .env

Configuration

The configruation is stored in the .env file.

Application Address

APP_ADDR=:4000

Application URL

APP_URL=http://127.0.0.1:4000

Application Series Buttons

APP_SERIES_BUTTONS=last_5_minutes,last_1_hour,last_24_hours,last_7_days

Available options:

last_5_minutes
last_15_minutes
last_30_minutes
last_1_hour
last_3_hours
last_6_hours
last_12_hours
last_24_hours
last_2_days
last_7_days
last_30_days

Redis URL

REDIS_URL=redis://127.0.0.1:6379/0

Heartbeat Enabled

HEARTBEAT_ENABLED=false

Heartbeat Wait (in minutes before first notification)

HEARTBEAT_WAIT=5

Heartbeat Sleep (in seconds between notifications)

HEARTBEAT_SLEEP=300

Heartbeat Webhook Method

HEARTBEAT_WEBHOOK_METHOD=POST

Heartbeat Webhook URL

HEARTBEAT_WEBHOOK_URL=http://127.0.0.1:4000/heartbeat

Heartbeat Webhook Header

HEARTBEAT_WEBHOOK_HEADER='{"Authorization": "Bearer TOKEN", "Accept": "application/json"}'

Heartbeat Webhook Body

HEARTBEAT_WEBHOOK_BODY='{"probe": "%p", "timestamp_rfc3339": "%t", "timestamp_unix": %x, "link": "%l"}'

Usage

Run the app using the following command:

./satellite web serve

Data Collection

You can gather the necessary data with the Probe.

Contributors

Reporting Issues

If you are facing a problem with this package or found any bug, please open an issue on GitHub.

License

The MIT License (MIT). Please see License File for more information.