Hellcheck
HTTP health checker.
Getting started
DISCLAIMER: This is a prove of concept, the project is ongoing development.
Roadmap
- Support notifiers
- command customer notifier
- telegram
- Slack
- HipChat
- Checkers
- Custom intervals
- Verify body (presence of some given text)
- Custom OKish HTTP status
- Use structopt/clap for nice command line interface
- Implement
hellcheck testcommand to test notifiers - Configure CI
- Run build/tests
- Setup clippy lint
- Setup rusmft
Install
With cargo:
cargo install hellcheck
Configuration file
Create hellcheck.yml file:
checkers:
greyblake:
url: https://www.greyblake.com
interval: 10s
notifiers:
localhost8000:
url: http://localhost:8000
interval: 1500ms
notifiers:
notifiers:
me:
type: telegram
token: <BOT-TOKEN>
chat_id: <CHAT-ID>
custom:
type: command
command:
Notifiers
Telegram notifier
For telegram notifier you have to create a bot with BotFather and obtain the bot token.
Chat ID can be found out with GetidsBot.
notifiers:
me:
type: telegram
token: <BOT-TOKEN>
chat_id: <CHAT-ID>
Command notifier
Command notifier allows you to invoke any shell command or custom script as notifier.
Example:
notifiers:
custom:
type: command
command:
Within the script the following environment variables are accessible:
HELLCHECK_ID- checker idHELLCHECK_URL- checker URLHELLCHECK_OKtrue- when service is upfalse- when service is down
Start
Assuming, you have ./hellcheck.yml in your current directory, this will start monitoring of the services,
described in checkers configuration sections:
hellcheck
License
Contributors
- greyblake Potapov Sergey - creator, maintainer.