Troubleshooting
Common issues and their solutions.
Quick Diagnostics
Check System Health
# Backend health
curl https://your-server.com/health
# Expected response
{
"status": "healthy",
"database": "connected",
"redis": "connected"
}Check Logs
# Docker deployment
docker compose logs -f backend
# Manual deployment
tail -f /var/log/slimrmm/backend.logCommon Issues
Agent Issues
Agent Not Registering
Symptoms:
- Agent starts but doesn't appear in dashboard
- "Connection refused" errors
Solutions:
Verify server URL:
bashcurl -I https://your-server.com/healthCheck firewall:
bash# Outbound 443 must be allowed nc -zv your-server.com 443Verify enrollment token:
- Tokens expire after use
- Check token hasn't been revoked
Check agent logs:
bash# Linux sudo journalctl -u slimrmm-agent -f # Windows Get-EventLog -LogName Application -Source SlimRMMAgent # macOS log show --predicate 'subsystem == "io.slimrmm.agent"'
Agent Shows Offline
Symptoms:
- Agent was online, now shows offline
- Heartbeat not received
Solutions:
Check agent service:
bash# Linux sudo systemctl status slimrmm-agent # Windows Get-Service SlimRMMAgent # macOS sudo launchctl list | grep slimrmmVerify network connectivity:
bashcurl -I https://your-server.com/healthCheck certificate validity:
bashopenssl x509 -in /var/lib/slimrmm/cert.pem -noout -datesRestart agent:
bashsudo systemctl restart slimrmm-agent
Windows Service Errors
Error 1072: Service Marked for Deletion
This occurs when Windows still holds a handle to the service after uninstallation.
# Kill lingering processes
taskkill /F /IM slimrmm-agent.exe
taskkill /F /IM slimrmm-helper.exe
# Delete service registration
sc delete SlimRMMAgent
# Wait, then reinstall
Start-Sleep -Seconds 2
cd "C:\Program Files\SlimRMM"
.\slimrmm-agent.exe install -s https://your-server.comIf it persists: close services.msc, restart Explorer, or reboot.
Error 1061: Service Cannot Accept Control Messages
Normal when running agent commands from CLI (not as service). The agent handles this automatically in v2.1.115+.
See Windows Agent Installation for detailed solutions.
Connection Issues
WebSocket Disconnections
Symptoms:
- Agents frequently disconnect
- Real-time updates not working
Solutions:
Check reverse proxy config:
nginx# Nginx - ensure WebSocket support location /api/ { proxy_http_version 1.1; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_read_timeout 86400; # 24 hours }Increase timeouts:
- Nginx:
proxy_read_timeout - Load balancer: Idle timeout
- Nginx:
Check for network issues:
- Packet loss
- High latency
- Firewall timeouts
SSL/TLS Errors
Symptoms:
- "Certificate verify failed"
- "SSL handshake error"
Solutions:
Verify certificate:
bashopenssl s_client -connect your-server.com:443 -servername your-server.comCheck certificate chain:
bashopenssl verify -CAfile ca.pem cert.pemEnsure certificate matches domain:
bashopenssl x509 -in cert.pem -noout -text | grep DNS
Database Issues
Connection Pool Exhausted
Symptoms:
- "Too many connections"
- Slow responses
- Timeouts
Solutions:
Increase pool size:
python# In database configuration SQLALCHEMY_POOL_SIZE=20 SQLALCHEMY_MAX_OVERFLOW=10Check for leaks:
sqlSELECT count(*) FROM pg_stat_activity WHERE application_name = 'slimrmm';Restart backend:
bashdocker compose restart backend
Migration Failures
Symptoms:
- "Relation does not exist"
- Schema mismatch errors
Solutions:
Run migrations:
bashdocker compose exec backend alembic upgrade headCheck migration history:
bashdocker compose exec backend alembic historyVerify current revision:
bashdocker compose exec backend alembic current
Performance Issues
High CPU Usage
Symptoms:
- Backend using 100% CPU
- Slow response times
Solutions:
Check active connections:
bashdocker stats slimrmm-backendReview slow queries:
sql-- Enable slow query log in PostgreSQL ALTER SYSTEM SET log_min_duration_statement = 1000; SELECT pg_reload_conf();Scale horizontally:
- Add more backend instances
- Use load balancer
Memory Issues
Symptoms:
- Out of memory errors
- Container restarts
Solutions:
Increase memory limits:
yaml# docker-compose.yml backend: deploy: resources: limits: memory: 2GCheck memory usage:
bashdocker stats --no-streamReview Redis memory:
bashdocker compose exec redis redis-cli INFO memory
Authentication Issues
Login Fails
Symptoms:
- "Invalid credentials"
- Can't log in
Solutions:
Reset password:
bashdocker compose exec backend python -c " from app.core.database import get_db_sync from app.services.auth_service import reset_password db = next(get_db_sync()) reset_password(db, 'admin', 'new_password') "Check account status:
- Account may be locked
- Check database for
is_lockedflag
MFA Not Working
Symptoms:
- TOTP codes rejected
- WebAuthn fails
Solutions:
Check time sync:
bash# TOTP is time-based ntpdate -q pool.ntp.orgDisable MFA (emergency):
bashdocker compose exec backend python -c " from app.core.database import get_db_sync from app.models.user import User db = next(get_db_sync()) user = db.query(User).filter_by(username='admin').first() user.mfa_enabled = False db.commit() "
Getting Help
Collect Debug Information
When reporting issues, include:
# System info
uname -a
docker version
docker compose version
# Backend logs (last 100 lines)
docker compose logs --tail=100 backend
# Database status
docker compose exec postgres psql -U rmm -c "SELECT version();"
# Redis status
docker compose exec redis redis-cli INFO serverSupport Channels
- Documentation: You're here!
- GitHub Issues: Report bugs
- Email: support@kiefer-networks.de
Debug Mode
Enable debug mode for detailed logs:
# .env
DEBUG=true
LOG_LEVEL=DEBUG
# Restart
docker compose restart backendWARNING
Never enable debug mode in production with real data!