ErrorEngine runs your query periodically. Each row returned represents an active error. When a row disappears from results, the error is automatically marked as resolved.
No. ErrorEngine is polling-based. Minimum interval is 1 minute.
Yes. Create multiple connections and assign each query to its own connection.
No Oracle Client installation needed. Just pip install oracledb and connect directly. This makes deployment much simpler.
The start scripts (start.sh / start.bat) automatically:
- Create a virtual environment
- Install dependencies
- Start the server
Manual installation gives you more control but requires more steps.
- Check SMTP credentials in
.env - Office 365 may require app passwords if MFA is enabled
- Check the Log page for error messages
- Try the test email feature in Impostazioni (Settings)
Set TIMEZONE=Europe/Rome (or your timezone) in .env and restart.
- Click Testa Query (Test Query) to verify the query returns rows
- Check that key fields are set correctly
- Verify the query is active and within its schedule window
This was a bug in versions before v2.1. Update to the latest version which includes atomic locking to prevent concurrent executions.
Copy instance/errorengine.db. This SQLite file contains all configuration and error history.
Query execution logs and email logs are viewable in the web UI under Log. They're stored in the SQLite database.
Use the API endpoints to fetch data programmatically:
curl http://localhost:5000/api/errorsNot recommended without protection. Use a VPN or reverse proxy with authentication. ErrorEngine doesn't have built-in user authentication.
Currently stored in plain text in SQLite. For production, protect the server and database file.
Read-only access is sufficient and recommended. ErrorEngine only runs SELECT queries.