{ "info": { "author": "Fr\u00c3\u00a9d\u00c3\u00a9ric Aoustin", "author_email": "fraoustin@gmail.com", "bugtrack_url": null, "classifiers": [ "Environment :: Web Environment", "License :: OSI Approved :: GNU General Public License v2 (GPLv2)", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.0", "Programming Language :: Python :: 3.1", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "Flask-monitor\n=============\n\nGenerate time of execution and send data on multi destination\n\n- log\n- influxdb (and so grafana)\n- rabbitmq\n- zeromq\n- statsd\n\n\nInstallation\n------------\n\n::\n\n pip install flask-monitor\n \nOr\n\n::\n\n git clone https://github.com/fraoustin/flask-monitor.git\n cd flask-monitor\n python setup.py install\n\nUsage\n-----\n\n\n::\n\n from flask import Flask, request\n from flask_monitor import Monitor , ObserverLog\n import logging\n\n app = Flask(__name__)\n monitor = Monitor('monitor', __name__)\n app.register_blueprint(monitor)\n monitor.add_observer(ObserverLog())\n\n @app.route(\"/\")\n def hello():\n return \"Hello World!\"\n\n if __name__ == \"__main__\":\n app.logger.setLevel(logging.INFO)\n for h in app.logger.handlers:\n h.setLevel(logging.INFO) \n app.run(port=8080)\n\nYou can add a filter of event\n\n::\n\n from flask import Flask, request\n from flask_monitor import Monitor , ObserverLog\n \n def filterExt(event):\n return event.response.status_code == 400\n\n app = Flask(__name__)\n monitor = Monitor('monitor', __name__)\n app.register_blueprint(monitor)\n monitor.add_observer(ObserverLog(filter=filterExt))\n\n @app.route(\"/\")\n def hello():\n return \"Hello World!\"\n\n if __name__ == \"__main__\":\n app.run(port=8080)\n\n\nYou can create your own observer\n\n::\n\n from flask import Flask, request\n from flask_monitor import Monitor , ObserverLog\n \n class myeventlog(ObserverMetrics):\n\n def __init__(self):\n ObserverMetrics.__init__(self, filter=self.filter)\n\n def action(self, event):\n logging.getLogger().error(event.json)\n\n def filter(self, event):\n return event.response.status_code != 400\n\n app = Flask(__name__)\n monitor = Monitor('monitor', __name__)\n app.register_blueprint(monitor)\n monitor.add_observer(myeventlog())\n\n @app.route(\"/\")\n def hello():\n return \"Hello World!\"\n\n if __name__ == \"__main__\":\n app.run(port=8080)\n\n\nInfluxdb\n--------\n\n::\n\n pip install influxdb\n\nUsage\n\n::\n\n from flask_monitor.influxdb import ObserverInfluxdb\n monitor.add_observer(ObserverInfluxdb(host='127.0.0.1',\n port=8086,\n user='root',\n password='root',\n db='mydb'))\n\nRabbitMq\n--------\n\n::\n\n pip install pika\n\nUsage\n\n::\n\n from flask_monitor.rabbitmq import ObserverRabbit\n import pika\n\n monitor.add_observer(ObserverRabbit(host='127.0.0.1',\n credentials = pika.PlainCredentials('guest', 'guest')))\n\nZeroMq\n------\n\n::\n\n pip install zmq\n\nUsage\n\n::\n\n from flask_monitor.zeromq import ObserverZmq\n import zmq\n\n monitor.add_observer(ObserverZmq(context=zmq.Context(),\n addr='tcp://127.0.0.1:8080'))\n\nStatsd\n------\n\n::\n\n pip install statsd\n\nUsage\n\n::\n\n from flask_monitor.statsd import ObserverStatsd\n monitor.add_observer(ObserverStatsd(host='127.0.0.1', port=8125, format=\"{RequestUrl}\"))\n \n\n\n\nV. 0.2.6\n========\n\n- hotfix Issue#5 manage import influxdb\n\nV. 0.2.5\n========\n\n- hotfix requirement\n\nV. 0.2.4\n========\n\n- Add ssl, verify_ssl as options for ObserverInfluxdb \n\nV. 0.2.3\n========\n\n- correction setup.py by sujaymansingh\n\n\nV. 0.2.2\n========\n\n- correction statd by sujaymansingh\n\nV. 0.2.1\n========\n\n- add logger debug for start end finish request\n\nV. 0.2.0\n========\n\n- change manage logger of ObserverMetrics\n\nV. 0.1.3\n========\n\n- hotfix for name pkg\n\nV. 0.1.2\n========\n\n- manage logger default\n\nV. 0.1.1\n========\n\n- manage setup.py generic\n\nV. 0.1.0\n========\n\n- init\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/fraoustin/flask-monitor.git", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "flask-monitor", "package_url": "https://pypi.org/project/flask-monitor/", "platform": "", "project_url": "https://pypi.org/project/flask-monitor/", "project_urls": { "Homepage": "https://github.com/fraoustin/flask-monitor.git" }, "release_url": "https://pypi.org/project/flask-monitor/0.2.6/", "requires_dist": null, "requires_python": "", "summary": "Flask Monitor module", "version": "0.2.6" }, "last_serial": 3920010, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "91e4762b806764991a246e41bca26436", "sha256": "ef220c0c6b2ed6e1734f82df50891d4e254b95fd3c3ba968e1df649003e2eb67" }, "downloads": -1, "filename": "flask-monitor-0.1.0.zip", "has_sig": false, "md5_digest": "91e4762b806764991a246e41bca26436", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28548, "upload_time": "2017-04-11T15:30:08", "url": "https://files.pythonhosted.org/packages/14/a0/51b9506068666f16a960d6927e08dc1322c7ac4c73b1af9cb6169670115d/flask-monitor-0.1.0.zip" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "c1a3ff1bbbe057fc08194cf0c598a129", "sha256": "4b9d9b1b411e0afec79df783ab9f77d1d603a2ee7c2d29e9a4cdb42f5aa5d6d5" }, "downloads": -1, "filename": "flask-monitor-0.1.1.zip", "has_sig": false, "md5_digest": "c1a3ff1bbbe057fc08194cf0c598a129", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28836, "upload_time": "2017-04-12T12:02:38", "url": "https://files.pythonhosted.org/packages/78/f3/a066bc1341730bc2eec4fb6bb7a7cff502b8a85647526a6b1f38d699fb8d/flask-monitor-0.1.1.zip" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "c89552091651a537e93190d2d3829ed0", "sha256": "b693d69093ac7fcb0e3e0f77db2c1d86587a0b9b8add903dd437544cabac21be" }, "downloads": -1, "filename": "flask-monitor-0.1.2.zip", "has_sig": false, "md5_digest": "c89552091651a537e93190d2d3829ed0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29120, "upload_time": "2017-04-12T12:53:55", "url": "https://files.pythonhosted.org/packages/6a/a4/8cc5d0166a2228e8cc1417b122b1b0d4da578577431672ca9ab1b2b13e3e/flask-monitor-0.1.2.zip" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "1d5456df229c66f4b69d6756a0a91626", "sha256": "5a242d721a39b7c60eb23d25ccc3ccdac05803247e067ad91af8761f304b5065" }, "downloads": -1, "filename": "flask-monitor-0.1.3.tar.gz", "has_sig": false, "md5_digest": "1d5456df229c66f4b69d6756a0a91626", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16214, "upload_time": "2017-04-16T09:10:03", "url": "https://files.pythonhosted.org/packages/74/10/5ce129711196d45356d400d09a5a08438865cdbad40b9186bca9341e7cbe/flask-monitor-0.1.3.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "59f458da0453aa1a56f57c57e3593160", "sha256": "47933676774d95a38073ef886a3889baddd0e9fd21ea28f1137dba566e89435c" }, "downloads": -1, "filename": "flask-monitor-0.2.0.tar.gz", "has_sig": false, "md5_digest": "59f458da0453aa1a56f57c57e3593160", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16261, "upload_time": "2017-04-28T13:50:57", "url": "https://files.pythonhosted.org/packages/cb/2f/47d1d5495cd801c3600b839ecbeaab20955c05e09c8fcaae4253a357d2b5/flask-monitor-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "62030004c8c28dc129b1d03763d2fc0a", "sha256": "7d73e7489120bfd67a7d4e5dab67d4c2191515066d3981e865c270dfa2015b87" }, "downloads": -1, "filename": "flask-monitor-0.2.1.tar.gz", "has_sig": false, "md5_digest": "62030004c8c28dc129b1d03763d2fc0a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16370, "upload_time": "2017-04-30T17:05:09", "url": "https://files.pythonhosted.org/packages/cd/6f/b53d8b77830c60aa8015462f58081ca967bcac4bf94e8407095208b82e42/flask-monitor-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "76fe1c6d9a159a65208dabb1e8307a1a", "sha256": "d98afcdf1e1c02abdd02c772bb42d268824ca7bce4c25dfafcdc96853a780beb" }, "downloads": -1, "filename": "flask-monitor-0.2.2.tar.gz", "has_sig": false, "md5_digest": "76fe1c6d9a159a65208dabb1e8307a1a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16957, "upload_time": "2017-06-02T14:15:07", "url": "https://files.pythonhosted.org/packages/d8/38/c2d3b41df104de7d0be2b2c98de43ac78a7e323b76cf6c4df72f57ba7b5c/flask-monitor-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "beef98eddf3341a7ba16028c6a852de5", "sha256": "7a9560262666cc3a901df69f5d47544cb22f5b88a30b5a87882e41d38ad50c05" }, "downloads": -1, "filename": "flask-monitor-0.2.3.tar.gz", "has_sig": false, "md5_digest": "beef98eddf3341a7ba16028c6a852de5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12932, "upload_time": "2017-06-25T14:37:15", "url": "https://files.pythonhosted.org/packages/63/57/032d26b1c9504b1b4fe2a562794e6cdcf063acfd3e400e84ecc7b21de21c/flask-monitor-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "eca71e21473bbada5999ab4b6c0a22c1", "sha256": "965cd492c04155db75ca0f0334f4ccd978f52fe52caf0d5393edb4f509c1240d" }, "downloads": -1, "filename": "flask-monitor-0.2.4.tar.gz", "has_sig": false, "md5_digest": "eca71e21473bbada5999ab4b6c0a22c1", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12997, "upload_time": "2017-07-01T10:54:58", "url": "https://files.pythonhosted.org/packages/3b/c1/669cd14ee82dfff649fa868f490724882713604ba0a51e17f4bd60fae711/flask-monitor-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "3f851578ca256e382684449e51782132", "sha256": "d3887ad37e86030ac569931a58fd51176966824e62b3f8ec432080bb570a46ec" }, "downloads": -1, "filename": "flask-monitor-0.2.5.tar.gz", "has_sig": false, "md5_digest": "3f851578ca256e382684449e51782132", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13040, "upload_time": "2017-08-19T07:39:57", "url": "https://files.pythonhosted.org/packages/0e/65/c6966a97f5e50e67d5a66fb2d2095cd27f166c4f0b1471682ac8780a018b/flask-monitor-0.2.5.tar.gz" } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "46090ef663288edcac97ab1c02725d28", "sha256": "04a91bd674f685df142d0880cec5c873ee7ec2d4b3b129eb41abaefabedc27a0" }, "downloads": -1, "filename": "flask-monitor-0.2.6.tar.gz", "has_sig": false, "md5_digest": "46090ef663288edcac97ab1c02725d28", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13325, "upload_time": "2018-06-01T08:57:58", "url": "https://files.pythonhosted.org/packages/32/d8/16e23cd6ac4006253fe38d5ba54f8da1206cb20a96185027b71906e7510d/flask-monitor-0.2.6.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "46090ef663288edcac97ab1c02725d28", "sha256": "04a91bd674f685df142d0880cec5c873ee7ec2d4b3b129eb41abaefabedc27a0" }, "downloads": -1, "filename": "flask-monitor-0.2.6.tar.gz", "has_sig": false, "md5_digest": "46090ef663288edcac97ab1c02725d28", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13325, "upload_time": "2018-06-01T08:57:58", "url": "https://files.pythonhosted.org/packages/32/d8/16e23cd6ac4006253fe38d5ba54f8da1206cb20a96185027b71906e7510d/flask-monitor-0.2.6.tar.gz" } ] }