Health Check System
The health check system is the core of Pulsimo's monitoring capabilities. It actively checks the health of your services at configurable intervals and immediately detects failures.
Key Features
Multiple Protocols
HTTP, GraphQL, gRPC, WebSocket, PostgreSQL, MySQL, Redis, Elasticsearch, and more
Flexible Authentication
None, Basic, Bearer Token, API Key, OAuth, Custom Headers
Auto-Detection
Automatically detects service type from URL pattern
Configurable Intervals
10 seconds to 1 hour check intervals with timeout control
Check Intervals
Choose the right check interval based on your service criticality:
| Interval | Use Case | Resource Impact |
|---|---|---|
| 10 seconds | Critical services | High |
| 30 seconds | Standard services (Recommended) | Medium |
| 60 seconds | Background services | Low |
| 5 minutes | Batch jobs | Very Low |
| 1 hour | Scheduled tasks | Minimal |
Timeout Settings
Set appropriate timeouts based on service type:
| Timeout | Use Case |
|---|---|
| 3 seconds | Cache (Redis, Memcached) |
| 5 seconds | Databases (PostgreSQL, MySQL) |
| 10 seconds | HTTP APIs |
| 30 seconds | Complex queries, heavy endpoints |
⚠️ Rule of Thumb: Timeout should be less than check_interval to prevent check overlap.
Authentication Methods
No Authentication
For public endpoints and health check endpoints
{
"auth_type": "None"
}Basic Authentication
Username and password sent with each request
{
"auth_type": "Basic",
"auth_credentials": {
"username": "monitor",
"password": "secret123"
}
}Header: Authorization: Basic <base64(username:password)>
Bearer Token
For JWT-protected APIs and OAuth 2.0 APIs
{
"auth_type": "Bearer",
"auth_credentials": {
"token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9..."
}
}Header: Authorization: Bearer <token>
API Key
Custom API key header (default X-API-Key)
{
"auth_type": "ApiKey",
"auth_credentials": {
"api_key": "sk_live_abc123xyz",
"header_name": "X-API-Key"
}
}Header: X-API-Key: <api_key> (or custom header name)
Best Practices
⏱️ Start Conservative: Begin with 30-second intervals for new services. Increase frequency only for critical endpoints that require sub-minute detection.
🔒 Secure Credentials: Use environment variables or secrets management for authentication credentials. Never hardcode passwords in endpoint configurations.
📊 Monitor Impact: Watch your infrastructure load when adding many endpoints with short intervals. Consider staggering checks or increasing intervals if needed.