Skip to content
adamkobor edited this page Aug 17, 2020 · 19 revisions

Welcome to the Kuvasz Wiki!

ℹ️ What is Kuvasz?

Kuvasz is a headless uptime monitor service, which means that it is able to watch all of your precious websites and notify you if something bad happens to them. There are a lot of exciting new feature on the roadmap, you should check out them here. If you don't prefer headless services, Kuvasz Dashboard, a full-featured but standalone GUI for the service is also on its way.

🐶 Where does the name come from?

Kuvasz (pronounce as [ˈkuvɒs]) is an ancient hungarian breed of livestock & guard dog. You can read more about them on Wikipedia.

✅ Features

  • Uptime & latency monitoring with a configurable interval
  • Email notifications through SMTP

🚧 Under development

  • SSL certification monitoring
  • Regular Lighthouse audits for your websites
  • Pagerduty, Opsgenie, Slack integration
  • Kuvasz Dashboard, a standalone GUI

⚡️ Quick start guide

☝️ Requirements

  • You have a running PostgreSQL instance (Preferably 12+)

🎬 Starting Kuvasz

The quickest way to spin up an instance of Kuvasz is something like this:

docker run -p 8080:8080 \
-e ADMIN_USER=admin \
-e ADMIN_PASSWORD=ThisShouldBeVeryVerySecure \
-e DATABASE_HOST=127.0.0.1 \
-e DATABASE_PORT=5432 \
-e DATABASE_NAME=your_database \
-e DATABASE_USER=your_db_user \
-e DATABASE_PASSWORD=OhThisIsSoSecure \
-e JWT_SIGNATURE_SECRET=ThisOneShouldBeVeryRandomAsWell \
kuvaszmonitoring/kuvasz:latest

At this point you shouldn't see any error in your logs, so you're able to create your first monitor with an API call. Please, take a look at the API section of this Wiki, to get familiar with the authentication method that Kuvasz provides. If you have a valid access token, then creating a monitor and scheduling an uptime check for it, is simple like that:

curl --location --request POST 'https://your.host:8080/monitor/' \
--header 'Authorization: Bearer YourAccessToken' \
--header 'Content-Type: application/json' \
--data-raw '{
    "name": "my_first_monitor",
    "url": "https://website.to.check",
    "uptimeCheckInterval": 60
}'

You can read more about the monitor management in the dedicated section of the Wiki.

⛴ Deployment

Although the example above is simple, when you want to deploy Kuvasz to production you'll probably end up with a more mature tooling or configuration. You can find the available configuration properties here. If you are going to deploy Kuvasz with docker-compose or Kubernetes, you should take a look at the deployment related examples, or the Deployment section of the Wiki.

📚 Further reading

If you want to know more about the fundamentals of Kuvasz, head to the Events & Event handlers section!

Clone this wiki locally