Lightning-fast, reliable health monitoring for your services with Prometheus metrics and smart alerting
{
"alerters": {
"somewebhook_alert": {
...
}
},
"services": {
"my-website": {
"interval": 30,
"checker": {
"name": "request",
"settings": {
"uri": "https://myapp.com/health",
"timeout": 5
}
},
"alerts": [
{
"type": "down",
"alerter": "somewebhook_alert"
}
]
}
}
}
Built with Fastify for exceptional performance. Monitor hundreds of services with minimal resource usage.
Robust error handling and automatic recovery. Your monitoring never stops, even when services fail.
Built-in Prometheus metrics export. Integrate seamlessly with your existing monitoring stack.
Discord, Slack, Teams, and custom webhook integrations. Get notified exactly when you need to be.
Create custom checkers for any service. Modular architecture makes it easy to add new monitoring types.
Simple JSON configuration. Get up and running in minutes, not hours.
npm install -g sky-puppy
Create sky-puppy-config.json
:
{
"alerters": {
"your_alert": {
"uri": "https://httpbin.org/put",
"json": true,
"method": "PUT",
"body": {
"test": "{{service_name}} is {{alert_type}}!"
}
}
},
"services": {
"your_service": {
"interval": 3,
"start_delay": 2,
"checker": {
"name": "request",
"settings": {
"uri": "https://httpbin.org/get",
"timeout": 2
}
},
"alerts": [
{
"type": "down",
"alerter": "your_alert"
},
{
"type": "unhealthy",
"alerter": "your_alert"
},
{
"type": "healthy",
"alerter": "your_alert"
}
]
}
},
"skypuppy": {
"version": "1.0.0",
"log": {
"enable": true,
"colors": true,
"level": "info"
}
}
}
sky-puppy
That's it! Your service is now being monitored.
Monitor your web application with health checks and performance metrics.
{
"services": {
"web-frontend": {
"interval": 30,
"checker": {
"name": "request",
"settings": {
"uri": "https://myapp.com/health",
"timeout": 10,
"method": "GET"
}
}
}
}
}
Monitor API endpoints with authentication and custom health checks.
{
"services": {
"api-backend": {
"interval": 15,
"checker": {
"name": "request",
"settings": {
"uri": "https://api.myapp.com/health",
"timeout": 5,
"method": "POST",
"headers": {
"Authorization": "Bearer your-token"
},
"body": {
"check": "database"
}
}
}
}
}
}
Monitor database connections and performance using custom checkers.
{
"services": {
"mongodb": {
"interval": 60,
"checker": {
"name": "sky-puppy-checker-mongodb",
"settings": {
"uri": "mongodb://localhost:27017",
"database": "myapp"
}
}
}
}
}
Get notified in Discord when services go down or recover.
{
"alerters": {
"discord_alert": {
"uri": "https://discord.com/api/webhooks/YOUR_WEBHOOK",
"json": true,
"method": "POST",
"body": {
"embeds": [{
"title": "🚨 {{service_name}} is {{alert_type}}!",
"description": "Service was healthy for {{last_healthy_total_duration}} seconds",
"color": 14828098,
"timestamp": "{{timestamp}}"
}],
"username": "Sky Puppy"
}
}
}
}
Quick setup guide to get Sky Puppy running in minutes
Complete configuration reference and examples
Set up notifications for Discord, Slack, and more
Create custom checkers for your specific services
Complete API documentation and examples
Source code, issues, and community discussions
Join hundreds of developers who trust Sky Puppy to keep their services healthy