{ "info": { "author": "nonetheless", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Intended Audience :: Developers", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "==================\nFlask Task Monitor\n==================\nA flask plugin to monitor thread task\n\nHow to use\n==========\nInstall\n-------\nTo install from source, download the source code, then run this:\n::\n\n python setup.py install\n\nOr install with pip:\n::\n\n pip install Flask-Task-Monitor\n\nSetup\n=====\nAdding the extension to your Flask app is simple:\n::\n\n from flask import Flask\n from flask_monitor import Monitor\n monitor = Monitor(config={\n 'FLASK_MONITOR_PERIOD': 1\n })\n app = Flask(__name__)\n monitor.init_app(app)\n\nAdd monitered task with database\n::\n\n from flask_monitor import DBMonitor\n from yourapplication import monitor\n\n class DemoMonitorJob(DBMonitor):\n def __init__(self, a, b, c):\n super(DemoMonitorJob, self).__init__()\n pass\n\n @classmethod\n def redo(cls, *args, **kwargs):\n '''\n execute when your job is crashed\n '''\n pass\n\n @classmethod\n def roll_back(cls, *args, **kwargs):\n '''\n execute after redo when catch exception\n '''\n pass\n\n def do(self, *args, **kwargs):\n '''your own job which needs to monitered\n '''\n pass\n\n monitor.add_check_monitor(DemoMonitorJob)\n\nYour own monitor\n================\nYou can code your own monitor by redis, zookeeper, etcd and more\n::\n\n from flask_monitor import BaseMonitorInterface\n class YourMonitor(BaseMonitorInterface):\n def lock(self, *args, **kwargs):\n '''\n when called your do function\n '''\n pass\n\n def unlock(self, args, **kwargs):\n '''\n when your do function return\n '''\n pass\n\n @classmethod\n def check(cls, *args, **kwargs):\n '''\n your own check function: it will return to\n try:\n redo(list, dict)\n except Expection:\n rollback(list,dict)\n '''\n return list, dict\n\n @abstractmethod\n def do(self, *args, **kwargs):\n pass\n\n @classmethod\n @abstractmethod\n def redo(self, *args, **kwargs):\n pass\n\n @classmethod\n @abstractmethod\n def rollback(self, *args, **kwargs):\n pass", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/nonetheless/Flask-Task-Monitor", "keywords": "utility,versioning", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "Flask-Task-Monitor", "package_url": "https://pypi.org/project/Flask-Task-Monitor/", "platform": "", "project_url": "https://pypi.org/project/Flask-Task-Monitor/", "project_urls": { "Homepage": "http://github.com/nonetheless/Flask-Task-Monitor" }, "release_url": "https://pypi.org/project/Flask-Task-Monitor/2.0/", "requires_dist": null, "requires_python": "", "summary": "Flask Task Monitor module", "version": "2.0" }, "last_serial": 5352252, "releases": { "2.0": [ { "comment_text": "", "digests": { "md5": "22a7113122467b7395ead6d81950c21d", "sha256": "49fc844943c64f2716d71bd1170ce572e213ee1cf4bf011407e6abdfce2f3968" }, "downloads": -1, "filename": "Flask-Task-Monitor-2.0.tar.gz", "has_sig": false, "md5_digest": "22a7113122467b7395ead6d81950c21d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 72227, "upload_time": "2019-06-03T12:32:37", "url": "https://files.pythonhosted.org/packages/c8/58/0de6a71cc3f3309d1cc27cb0fef4bfb963f5bd8212d213d4ccf0d0d7d652/Flask-Task-Monitor-2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "22a7113122467b7395ead6d81950c21d", "sha256": "49fc844943c64f2716d71bd1170ce572e213ee1cf4bf011407e6abdfce2f3968" }, "downloads": -1, "filename": "Flask-Task-Monitor-2.0.tar.gz", "has_sig": false, "md5_digest": "22a7113122467b7395ead6d81950c21d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 72227, "upload_time": "2019-06-03T12:32:37", "url": "https://files.pythonhosted.org/packages/c8/58/0de6a71cc3f3309d1cc27cb0fef4bfb963f5bd8212d213d4ccf0d0d7d652/Flask-Task-Monitor-2.0.tar.gz" } ] }