{
"info": {
"author": "Sal Rashid",
"author_email": "salrashid123@gmail.com",
"bugtrack_url": null,
"classifiers": [
"Development Status :: 3 - Alpha",
"Intended Audience :: Developers",
"License :: OSI Approved :: Apache Software License",
"Operating System :: OS Independent",
"Programming Language :: Python",
"Programming Language :: Python :: 2.7",
"Programming Language :: Python :: 3.0",
"Topic :: Software Development :: Libraries",
"Topic :: Software Development :: Libraries :: Python Modules",
"Topic :: System :: Logging"
],
"description": "Flask extension for grouped log lines for Google Cloud Logging\n==============================================================\n\nFlask extension that allows log lines emitted within a request handler to display/render together.\n\nNormally, when using Google Cloud Logging libraries ( `google-cloud-logging `__ and `CloudLoggingHander `__), each log entry that gets emitted is displayed separately within the Logging UI. However, its desireable to group all logs together that logically belong that way in an HTTP Request. For a given HTTP Request into FLask, this extension displays all the logs 'together' below the parent request.\n\nas in\n\n.. image:: https://raw.githubusercontent.com/salrashid123/flask-gcp-log-groups/master/images/log_entry.png\n :target: https://raw.githubusercontent.com/salrashid123/flask-gcp-log-groups/master/images/log_entry.png\n\nConfiguration Parameters\n~~~~~~~~~~~~~~~~~~~~~~~~\n\n- ``GCPHandler``\n- \n - ``app``: Flask handler\n- \n - ``parentLogName``: parentLogger name for the 'request (default: request\")\n- \n - ``childLogName``: childLogger name for the 'application logs (default: \"application\")\n- \n - ``traceHeaderName``: header name to parse as the trace header. (on GCP, its ``X-Cloud-Trace-Context``)\n- \n - ``labels``: labels dictionary to apply to all logs (default = None),\n- \n - ``resource``: Cloud Logging resource to log against (default='global')\n\n.. code:: python\n\n from flask import Flask\n import logging, json\n\n from flask_gcp_log_groups import GCPHandler\n\n app = Flask(__name__)\n\n g = GCPHandler(app, parentLogName=\"request\",\n childLogName=\"application\",\n traceHeaderName='X-Cloud-Trace-Context',\n labels= {'foo': 'bar', 'baz': 'qux'},\n resource= {\n \"type\": \"gce_instance\", \n \"labels\": { \"instance_id\": \"5160310737730769780\",\n \"zone\": \"us-central1-a\" \n }\n })\n g.setLevel(logging.INFO)\n app.logger.addHandler(g)\n\n @app.route('/')\n def default():\n app.logger.setLevel(logging.INFO)\n app.logger.info(\"I met a traveller from an antique land,\")\n return 'ok'\n\n if __name__ == '__main__':\n app.run(host='0.0.0.0', port=8080, debug=False)\n\n- with trace only\n\n ::\n\n curl -v -H \"User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/44.0.2403.89 Safari/537.36\" \\\n -H \"X-Cloud-Trace-Context: `python -c \"import uuid; print uuid.uuid4()\"`\" \\\n http://localhost:8080/\n\n.. |images/log\\_entry.png| image:: images/log_entry.png",
"description_content_type": "",
"docs_url": null,
"download_url": "",
"downloads": {
"last_day": -1,
"last_month": -1,
"last_week": -1
},
"home_page": "https://github.com/salrashid123/flask-gcp-log-groups",
"keywords": "",
"license": "",
"maintainer": "",
"maintainer_email": "",
"name": "flask-gcp-log-groups",
"package_url": "https://pypi.org/project/flask-gcp-log-groups/",
"platform": "",
"project_url": "https://pypi.org/project/flask-gcp-log-groups/",
"project_urls": {
"Homepage": "https://github.com/salrashid123/flask-gcp-log-groups"
},
"release_url": "https://pypi.org/project/flask-gcp-log-groups/0.1.0/",
"requires_dist": null,
"requires_python": "",
"summary": "Python Flask logging handler to group messages on Google Cloud Platform",
"version": "0.1.0"
},
"last_serial": 4462402,
"releases": {
"0.0.1": [
{
"comment_text": "",
"digests": {
"md5": "9cba4f40da5d03cbbda96f1878d7ec78",
"sha256": "655940a585c088a89d77db82b0964b27f4c1889d6c79d2a620187154b8531870"
},
"downloads": -1,
"filename": "flask-gcp-log-groups-0.0.1.tar.gz",
"has_sig": false,
"md5_digest": "9cba4f40da5d03cbbda96f1878d7ec78",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7557,
"upload_time": "2018-09-22T23:54:11",
"url": "https://files.pythonhosted.org/packages/d7/87/9facf1ce7f36502f967e9bd6bac676b25354750b87c9f711594e7a185360/flask-gcp-log-groups-0.0.1.tar.gz"
}
],
"0.0.2": [
{
"comment_text": "",
"digests": {
"md5": "fbbfcb09fddb322bc16783b768ff1e2f",
"sha256": "31a82bfb27b3cbfc071615b8c5bc6ba121779aa01a9c2f6ecdb86b62e88c30bf"
},
"downloads": -1,
"filename": "flask-gcp-log-groups-0.0.2.tar.gz",
"has_sig": false,
"md5_digest": "fbbfcb09fddb322bc16783b768ff1e2f",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7488,
"upload_time": "2018-09-23T00:07:40",
"url": "https://files.pythonhosted.org/packages/c9/9f/fb96de2fc69f562e7f48724954c391c741667043a44e61f50c3fdd704ab8/flask-gcp-log-groups-0.0.2.tar.gz"
}
],
"0.0.3": [
{
"comment_text": "",
"digests": {
"md5": "bcdedf05aa668f862991315b5ba516e7",
"sha256": "57cd36b2f26151ea43aec58576edec7d8ee8336c5329631a7fd6bbc7eb688e82"
},
"downloads": -1,
"filename": "flask-gcp-log-groups-0.0.3.tar.gz",
"has_sig": false,
"md5_digest": "bcdedf05aa668f862991315b5ba516e7",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7522,
"upload_time": "2018-09-23T00:12:24",
"url": "https://files.pythonhosted.org/packages/a2/2c/9251c5b1da5c259c57814ddfed45cd61fc47a99b7662368bf1b7fdf9be89/flask-gcp-log-groups-0.0.3.tar.gz"
}
],
"0.0.4": [
{
"comment_text": "",
"digests": {
"md5": "776e83f75476620b307d4ff1f2a313fb",
"sha256": "0f64e2d7cbc128404dcf481ab512f8bcdf966ff62f3731b9085950ce1a2b5172"
},
"downloads": -1,
"filename": "flask-gcp-log-groups-0.0.4.tar.gz",
"has_sig": false,
"md5_digest": "776e83f75476620b307d4ff1f2a313fb",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7137,
"upload_time": "2018-09-23T00:16:04",
"url": "https://files.pythonhosted.org/packages/fa/0f/1b180e58387a98f5dd83b17db485064906264ff9ebe5a33cd036eedf449c/flask-gcp-log-groups-0.0.4.tar.gz"
}
],
"0.0.6": [
{
"comment_text": "",
"digests": {
"md5": "a22bde26e71bce3300e9ee93bf2aaa31",
"sha256": "9530e538ac74db93aa8c886e8374c95e8f613e4b045e2ce62bb8a1a491ef1290"
},
"downloads": -1,
"filename": "flask-gcp-log-groups-0.0.6.tar.gz",
"has_sig": false,
"md5_digest": "a22bde26e71bce3300e9ee93bf2aaa31",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7330,
"upload_time": "2018-09-23T00:21:57",
"url": "https://files.pythonhosted.org/packages/39/8a/1330c9c69eec1d39dc61fe6ef042b9f1a2878709d3c0ab14d78278ef8fb4/flask-gcp-log-groups-0.0.6.tar.gz"
}
],
"0.0.7": [
{
"comment_text": "",
"digests": {
"md5": "56e8a1f23fc1b25a3f9d5dab167c4743",
"sha256": "838042768f60ed90f05fd4a7f0984e268ee371a8c8b2e088a8d8f8e31af03297"
},
"downloads": -1,
"filename": "flask-gcp-log-groups-0.0.7.tar.gz",
"has_sig": false,
"md5_digest": "56e8a1f23fc1b25a3f9d5dab167c4743",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 7326,
"upload_time": "2018-09-23T00:25:16",
"url": "https://files.pythonhosted.org/packages/7c/17/0f2e1331a1f9403145193d3aa4e954edda2958d98cd0b054ebe9efc16edb/flask-gcp-log-groups-0.0.7.tar.gz"
}
],
"0.0.8": [
{
"comment_text": "",
"digests": {
"md5": "7ecc943a182630231b2379978202cae8",
"sha256": "0bda023436d196e3ffc6ef667a473631bc29140ac51c799c498b48f0a33f4195"
},
"downloads": -1,
"filename": "flask-gcp-log-groups-0.0.8.tar.gz",
"has_sig": false,
"md5_digest": "7ecc943a182630231b2379978202cae8",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 5649,
"upload_time": "2018-09-23T01:56:31",
"url": "https://files.pythonhosted.org/packages/c0/14/fe1c3103ac83b867050c516776487169f96fa9d39a015719528d41f701af/flask-gcp-log-groups-0.0.8.tar.gz"
}
],
"0.0.9": [
{
"comment_text": "",
"digests": {
"md5": "03c07e56de29eb437ec5556316b8be57",
"sha256": "defb2ac5535ad1a02e173e3c83869c571dec6e4bea7eb777698d0cd2fc229498"
},
"downloads": -1,
"filename": "flask-gcp-log-groups-0.0.9.tar.gz",
"has_sig": false,
"md5_digest": "03c07e56de29eb437ec5556316b8be57",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 5638,
"upload_time": "2018-10-15T14:08:29",
"url": "https://files.pythonhosted.org/packages/68/38/3764350dd6d8105ba1831e6b7bb8f09f461f615d44df4725234af3a2928d/flask-gcp-log-groups-0.0.9.tar.gz"
}
],
"0.1.0": [
{
"comment_text": "",
"digests": {
"md5": "a61789720f41ec0b1cb2802ec14c7280",
"sha256": "6dd83234e3163bc575652f052d6c128cf8952e09a69e48947d6cfeebeffa1137"
},
"downloads": -1,
"filename": "flask-gcp-log-groups-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "a61789720f41ec0b1cb2802ec14c7280",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 5842,
"upload_time": "2018-11-07T17:45:25",
"url": "https://files.pythonhosted.org/packages/a6/9d/12c1ab891451a59c890c96230bbe3405a256131eb9ac61384e2f2e7ceb15/flask-gcp-log-groups-0.1.0.tar.gz"
}
]
},
"urls": [
{
"comment_text": "",
"digests": {
"md5": "a61789720f41ec0b1cb2802ec14c7280",
"sha256": "6dd83234e3163bc575652f052d6c128cf8952e09a69e48947d6cfeebeffa1137"
},
"downloads": -1,
"filename": "flask-gcp-log-groups-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "a61789720f41ec0b1cb2802ec14c7280",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 5842,
"upload_time": "2018-11-07T17:45:25",
"url": "https://files.pythonhosted.org/packages/a6/9d/12c1ab891451a59c890c96230bbe3405a256131eb9ac61384e2f2e7ceb15/flask-gcp-log-groups-0.1.0.tar.gz"
}
]
}