sky-puppy
v1.3.8
Published
A easy to use reliable health checking service with Prometheus export
Downloads
4
Maintainers
Readme
Sky Puppy
A easy to use reliable endpoint coordinator / health checking service with Prometheus export
Install
npm install -g sky-puppy
Run
sky-puppy
Checkers
Test
- sky-puppy-checker-template : A Sky Puppy template to use to create your own checkers
Databases
- sky-puppy-checker-mongodb : A Sky Puppy checker for mongodb
HTTP/HTTPS
- request (native)
Services
- sky-puppy-checker-cloudflare-status : A Sky Puppy checker for checking cloudflarestatus.com api
Sample Config
Sky Puppy looks for a file called sky-puppy-config.json
in the folder it is ran at.
{
"alerters": {
"discord_down": {
"uri": "http://discord.com",
"json": true,
"method": "PUT",
"body": {
"embeds": [
{
"title": "undefined is undefined!",
"description": "This service was healthy for undefined seconds!",
"color": 14828098,
"footer": {
"text": ""
},
"timestamp": "undefined"
}
],
"username": "Sky Puppy",
"avatar_url": "https://i.imgur.com/J5vIVSt.png"
}
},
"discord_unhealthy": {
"uri": "http://discord.com",
"json": true,
"method": "PUT",
"body": {
"embeds": [
{
"title": "undefined is undefined!",
"description": "This service was healthy for undefined seconds!",
"color": 14852674,
"footer": {
"text": ""
},
"timestamp": "undefined"
}
],
"username": "Sky Puppy",
"avatar_url": "https://i.imgur.com/J5vIVSt.png"
}
},
"discord_healthy": {
"uri": "http://discord.com",
"json": true,
"method": "PUT",
"body": {
"embeds": [
{
"title": "undefined is undefined!",
"description": "Carry on, looks like things are back! We were down for undefined seconds.",
"color": 6480450,
"footer": {
"text": ""
},
"timestamp": "undefined"
}
],
"username": "Sky Puppy",
"avatar_url": "https://i.imgur.com/3rfFeOu.png"
}
}
},
"services": {
"your_service": {
"interval": 3,
"start_delay": 2,
"checker": {
"name": "request",
"settings": {
"uri": "http://127.0.0.1/a/cool/endpoint",
"timeout": 2,
"json": true,
"method": "PUT",
"body": {
"test": "sweet"
},
}
},
"alerts": [
{
"type": "down",
"alerter": "discord_down"
},
{
"type": "unhealthy",
"alerter": "discord_unhealthy"
},
{
"type": "healthy",
"alerter": "discord_healthy"
}
]
}
},
"skypuppy": {
"version": "1.0.0",
"log": {
"enable": true,
"colors": true,
"level": "info"
}
}
}
Changelog
All notable changes to this project will be documented in this file. Dates are displayed in UTC.
v1.3.8
11 December 2020
628dc13
FIxed some bugs, made sky puppy more crash safe and better logging
v1.3.7
18 November 2020
0cc7817
Fixed a minor bug, dates should now work in prom.
v1.3.6
17 November 2020
61b2674
Minor debug fix
v1.3.5
17 November 2020
ec30c55
Few fixes
- Added date to each prom stats only when it was updated
- Fixed bug with version not showing in prom stats
- Fixed possible bug around alerts
v1.3.4
4 November 2020
e196e2b
Fixed bug Cannot find module
package.json
v1.3.3
4 November 2020
9b1b3c0
Fixed bin package bug
v1.3.2
4 November 2020
6197717
ETIMEDOUT is now unhealthy
instead of down
v1.3.1
4 November 2020
9712744
Update changelog-template.hbs
v1.3.0
4 November 2020
bd98346
Fixed bugs and added pretty console logs
- Fixed
last_unhealthy_total_duration
andlast_healthy_total_duration
bug reporting the wrong elapsed time. - Fixed
healthy
status getting reported even when unhealthy/down has not yet been reported. - Fixed bug relating to console title displaying config version instead of application version.
- Added new console logs (see sample config for details)
- Added 2 new test-server routes
v1.2.0
3 November 2020
6604d77
Clean up and more
- Added skypuppy console log title
- Fixed eslint issues
- Fixed bug that altered on healthy status at start of sky puppy
- Fixed bug if settings field was left out of services checkers
v1.1.2
2 November 2020
6e251c0
Added sky-puppy-checker-cloudflare-status
to the list of checkers
d204255
Added sky-puppy-checker-mongodb to list of checkers
v1.1.1
2 November 2020
4b1a2e4
Fixed changelog to have full commit message
v1.1.0
2 November 2020
7f27201
New feature: Messages
- Added the ability to add messages from checkers
- Messages can be accessed in alterters message / viewed in prom
- Added the ability to map codes to messages in a global setting via checkers settings EX:
"sky-puppy-checker-template": {
"foo": "bar",
"code_messages": {
"200": "Override me plz",
"500": "Yikes its down"
}
}
- Added the ability to override those code_messages inside each service as well EX:
"checker": {
"name": "sky-puppy-checker-template",
"settings": {
"bar": "test"
},
"code_messages": {
"200": "Yup its up"
}
}
v1.0.2
30 October 2020
a927cdf
Added sky-puppy-checker-template to tests and readme
v1.0.1
30 October 2020
7674805
Fixed bug around checkers name
v1.0.0
30 October 2020
344b6f0
Added module based checkers! Now you can write custom checkers to check any thing.
v0.3.0
30 October 2020
5d614eb
Added endpoints, Added postman docs, Fixed bugs and more!
f6f9a56
added process tile
v0.2.1
14 September 2020
505209a
Update README.nbs
v0.2.0
14 September 2020