Simple and Extensible Error Monitor framework for Flask
Full featured error monitor app for Flask
Flask-Error-Monitor is a batteries-included, simple-to-use Flask extension that lets you add error recording interfaces to Flask applications. It’s implemented in such a way that the developer has total control of the resulting application.
Out-of-the-box, Flask-Error-Monitor plays nicely with various ORM’s, including
It also boasts a simple Model management interface.
The biggest feature of Flask-Error-Monitor is flexibility. To start off with you can create a very simple application in no time, with exception monitor enabled, but then you can go further and customize different aspects.
Flask-Error-Monitor is an active project, well-tested and production ready.
To install Flask-Error-Monitor, simply:
pip install flask-error-monitor.git
- Sensitive data( like password, secret ) Masking
- Record all the frames ( frame data are stored in JSON format so that it can be analyzed later)
- Unique URL generation
- Number of times the exception occurred and first/last time of exception
- Sending emails with exception details
- Record different types of exception like 500 or 404 etc
- Raise or update ticket in Jira/Bugzilla etc by ticketing interface.
- App configuration
... APP_ERROR_SEND_EMAIL = True APP_ERROR_RECIPIENT_EMAIL = ('email@example.com',) APP_ERROR_SUBJECT_PREFIX = "Server Error" APP_ERROR_EMAIL_SENDER = 'firstname.lastname@example.org'
from flask import Flask from flask_mail import Mail import settings from flask_error_monitor import AppErrorMonitor from flask_sqlalchemy import SQLAlchemy ... app = Flask(__name__) app.config.from_object(settings) db = SQLAlchemy(app) class MyMailer(Mail, NotificationMixin): def notify(self, message, exception): self.send(message) mail = MyMailer(app=app) error_monitor = AppErrorMonitor(app=app, db=db, notifier=mail) .... .... # Record exception when 404 error code is raised @app.errorhandler(403) def error_403(e): error_monitor.record_exception() # any custom logic # Record error using decorator @app.errorhandler(500) @error_monitor.track_exception def error_500(e): # some custom logic ....
This has got extensive document browse at https://flask-error-monitor.readthedocs.io/en/latest/
All docs are in docs/source
And if you want to preview any .rst snippets that you may want to contribute, go to http://rst.ninjs.org/.
Several usage examples are included in the /tests folder. Please feel free to add your own examples, or improve on some of the existing ones, and then submit them via GitHub as a pull-request.
You can see some of these examples in action at https://github.com/sonus21/flask-error-monitor/tree/master/examples. To run the examples on your local environment, one at a time, do something like:
cd flask-error-monitor python examples/simple/app.py
Test are run with nose. If you are not familiar with this package you can get some more info from their website.
To run the tests, from the project directory, simply:
pip install -r requirements-dev.txt nosetests
You should see output similar to:
............................................. ---------------------------------------------------------------------- Ran 29 tests in 1.144s OK
You’re most welcome to raise pull request or fixes.
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
|Filename, size||File type||Python version||Upload date||Hashes|
|Filename, size flask-error-monitor-0.1.1.tar.gz (14.7 kB)||File type Source||Python version None||Upload date||Hashes View hashes|
Hashes for flask-error-monitor-0.1.1.tar.gz