Custom Services
Sentinel AI can monitor any service that provides a status command. This guide shows you how to add custom services to the monitoring system.Service Configuration Schema
Each service requires four properties:Unique identifier for the service
Shell command to check service status (e.g.,
service nginx status)String to look for in the output to confirm service is running (e.g.,
"is running")Service category:
web_server, database, container, customAdding Services Programmatically
Fromsrc/core/config.py:74:
src/core/config.py
Example: Add Docker Service
Adding Services via API
Use thePOST /services endpoint:
Common Service Examples
Redis
In-memory data store
MongoDB
NoSQL document database
Apache
Web server
Memcached
Distributed caching
Redis
MongoDB
Apache
Docker Containers
Custom Applications
Service Configuration File
Services are stored indata/services.json. From src/core/config.py:60:
src/core/config.py
Example Configuration
data/services.json
Removing Services
Via API
Programmatically
Best Practices
Use Systemd
Prefer
systemctl status for better reliabilityTest Commands
Always test check commands on the target server first
Unique Indicators
Choose indicators that won’t match error states
Service Types
Use appropriate types for dashboard grouping
The agent checks services every 30 seconds by default. Configure
MONITOR_INTERVAL in your environment to change this.Testing Service Configuration
Test your service configuration manually:Related Documentation
Service Configuration
Learn about service configuration
Services API
Explore the services API
Monitoring
How service monitoring works
SSH Setup
Configure SSH access