{ "info": { "author": "Matt Davis", "author_email": "mattdavis90@googlemail.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.2", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: Implementation :: CPython", "Programming Language :: Python :: Implementation :: PyPy" ], "description": "Base10 |Version| |Build| |Coverage| |Health| |Docs| |CLA|\n===================================================================\n\n|Compatibility| |Implementations| |Format| |Downloads|\n\nBase10 is a metrics abstractoin layer for linking multiple metrics source and stores. It also simplifies metric creation and proxying.\n\n\nDocumentation\n-------------\nBase10's documentation can be found at `https://base10.readthedocs.io `_\n\n\nInstalling Base10\n-----------------\nBase10 can be installed from Pypi using pip::\n\n pip install base10\n\n\nExample\n-------\nThis shows a simple metric generator that writes a JSON formatted metric, containing a random value, to RabbitMQ.\n\n.. code :: python\n\n from random import random\n from time import sleep\n\n from base10 import MetricHelper, MetricHandler\n from base10.dialects import JSONDialect\n from base10.transports import RabbitMQWriter\n\n if __name__ == '__main__':\n\n class MyMetric(MetricHelper):\n _name = 'metric'\n\n _fields = [\n 'value',\n ]\n\n _metadata = [\n 'hostname',\n ]\n\n class JSON(MetricHandler):\n _dialect = JSONDialect()\n _writer = RabbitMQWriter(\n broker='127.0.0.1', exchange='amq.topic', topic='metrics.example')\n\n json = JSON()\n\n while True:\n json.write(MyMetric(value=random(), hostname='test'))\n sleep(1)\n\nThis shows a simple proxy that reads JSON formatted metrics from RabbitMQ and outputs them in InfluxDB format over a UDP socket.\n\n.. code :: python\n\n from base10 import MetricHandler\n from base10.dialects import JSONDialect, SplunkDialect #InfluxDBDialect\n from base10.transports import RabbitMQReader, UDPWriter\n\n if __name__ == '__main__':\n\n class RabbitMQ(MetricHandler):\n _dialect = JSONDialect()\n _reader = RabbitMQReader(\n broker='127.0.0.1', exchange='amq.topic', routing_key='metrics.#')\n\n class InfluxDB(MetricHandler):\n _dialect = SplunkDialect() #InfluxDBDialect()\n _writer = UDPWriter(host='127.0.0.1', port=10000)\n\n rabbitmq = RabbitMQ()\n influxdb = InfluxDB()\n\n for metric in rabbitmq.read():\n influxdb.write(metric)\n\n\nContributing\n------------\nTo contribute to base10, please make sure that any new features or changes\nto existing functionality **include test coverage**.\n\n*Pull requests that add or change code without coverage will most likely be rejected.*\n\nAdditionally, please format your code using `yapf `_\nwith ``facebook`` style prior to issuing your pull request.\n\n``yapf --style=facebook -i -r base10 setup.py``\n\n\n.. |Build| image:: https://travis-ci.org/mattdavis90/base10.svg?branch=master\n :target: https://travis-ci.org/mattdavis90/base10\n.. |Coverage| image:: https://img.shields.io/coveralls/mattdavis90/base10.svg\n :target: https://coveralls.io/r/mattdavis90/base10\n.. |Health| image:: https://codeclimate.com/github/mattdavis90/base10/badges/gpa.svg\n :target: https://codeclimate.com/github/mattdavis90/base10\n.. |Version| image:: https://img.shields.io/pypi/v/base10.svg\n :target: https://pypi.python.org/pypi/base10\n.. |Docs| image:: https://readthedocs.org/projects/base10/badge/?version=latest\n :target: https://base10.readthedocs.io\n.. |CLA| image:: https://cla-assistant.io/readme/badge/mattdavis90/base10\n :target: https://cla-assistant.io/mattdavis90/base10\n.. |Downloads| image:: https://img.shields.io/pypi/dm/base10.svg\n :target: https://pypi.python.org/pypi/base10\n.. |Compatibility| image:: https://img.shields.io/pypi/pyversions/base10.svg\n :target: https://pypi.python.org/pypi/base10\n.. |Implementations| image:: https://img.shields.io/pypi/implementation/base10.svg\n :target: https://pypi.python.org/pypi/base10\n.. |Format| image:: https://img.shields.io/pypi/format/base10.svg\n :target: https://pypi.python.org/pypi/base10\n\n\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/mattdavis90/base10", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "base10", "package_url": "https://pypi.org/project/base10/", "platform": "", "project_url": "https://pypi.org/project/base10/", "project_urls": { "Homepage": "https://github.com/mattdavis90/base10" }, "release_url": "https://pypi.org/project/base10/0.6.3/", "requires_dist": [ "six" ], "requires_python": "", "summary": "Base10 is a metrics abstractoin layer for linking multiple metrics source and stores. It also simplifies metric creation and proxying.", "version": "0.6.3" }, "last_serial": 3572423, "releases": { "0.1": [ { "comment_text": "", "digests": { "md5": "22ff589efc12619a12e81aa13955f353", "sha256": "d1072fbd8ef92522f7625cb82bb2d345d25dfe279a71eade5128730174496961" }, "downloads": -1, "filename": "base10-0.1.tar.gz", "has_sig": false, "md5_digest": "22ff589efc12619a12e81aa13955f353", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1690, "upload_time": "2017-03-15T02:16:15", "url": "https://files.pythonhosted.org/packages/1c/fb/19d9fc10ea99990006966ebb7127f68a71344cf1c7c18fad8bd82517d698/base10-0.1.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "6767aa19c986dbcd42c5daeab0b9e88b", "sha256": "dcdbb1181b0c703a5bc7ebfeba0181e2a60208c0dc59e9c22ae0988cda08018d" }, "downloads": -1, "filename": "base10-0.2.tar.gz", "has_sig": false, "md5_digest": "6767aa19c986dbcd42c5daeab0b9e88b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1743, "upload_time": "2017-03-16T00:46:33", "url": "https://files.pythonhosted.org/packages/92/db/dfd6fe8a84e0d5b05c9ec54cf9ea10978195f2acb47219d42290af153867/base10-0.2.tar.gz" } ], "0.3": [ { "comment_text": "", "digests": { "md5": "f3e6e4c78c48b61099b762d663dab2cf", "sha256": "8bf82bfce33ef1cdb5aafedc64d964c0a9004c35966908f028000e97fb73959b" }, "downloads": -1, "filename": "base10-0.3.tar.gz", "has_sig": false, "md5_digest": "f3e6e4c78c48b61099b762d663dab2cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1934, "upload_time": "2017-03-17T23:00:57", "url": "https://files.pythonhosted.org/packages/fb/47/7ffb6cd58959e627c697fe3491ece34d30b491e7816b434ead3d2fa4ae2d/base10-0.3.tar.gz" } ], "0.4": [ { "comment_text": "", "digests": { "md5": "c863260fdfd54f1a0f1ecead091a4542", "sha256": "89148a8327a42c6e2d53880ebc7ac4ed02e3721da04bca8b8840aacf85266064" }, "downloads": -1, "filename": "base10-0.4.tar.gz", "has_sig": false, "md5_digest": "c863260fdfd54f1a0f1ecead091a4542", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4919, "upload_time": "2017-03-17T23:31:01", "url": "https://files.pythonhosted.org/packages/31/07/50d27c852fe6f1412b49ca7a08e7b583d5e9e35477143725a2c845ad3145/base10-0.4.tar.gz" } ], "0.5": [ { "comment_text": "", "digests": { "md5": "162438d89b9284a34da47a7e3b4a8112", "sha256": "69fbf889d2071281ca2d671e8af9171ab74b3479039cdc6e03e5ca6fdf57de44" }, "downloads": -1, "filename": "base10-0.5.tar.gz", "has_sig": false, "md5_digest": "162438d89b9284a34da47a7e3b4a8112", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5151, "upload_time": "2017-03-24T08:52:51", "url": "https://files.pythonhosted.org/packages/3b/50/faf5ce2e0cdf52735bf81509f11364bab256f595e413b75b2c39d8df4f2f/base10-0.5.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "d2393003a056894bd0fa1ed3fc5a858b", "sha256": "d164f40fc7b81278008adb5943b523122bfee4f0de8bae715bebc353c5584b6d" }, "downloads": -1, "filename": "base10-0.5.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d2393003a056894bd0fa1ed3fc5a858b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4279, "upload_time": "2017-07-31T14:00:29", "url": "https://files.pythonhosted.org/packages/79/1b/970dc9bfc95e1639660d3bf9e3d51facc5fa63a66cf2b7b26cda4436bde7/base10-0.5.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "77c5a1303b426aec625f8b07986b711e", "sha256": "575d7de8a5e967f4c57e402b42b132a0fe4e4d0e56f6553159a32bea8152770c" }, "downloads": -1, "filename": "base10-0.5.0.tar.gz", "has_sig": false, "md5_digest": "77c5a1303b426aec625f8b07986b711e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3552, "upload_time": "2017-07-31T14:00:31", "url": "https://files.pythonhosted.org/packages/44/5e/602381fa16e566c46a1baf1b5d3d014a8c2748d768e67df229bfe262e1be/base10-0.5.0.tar.gz" } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "876a97b934db0f965df30e20c1dec011", "sha256": "3790d6d6db7a51ba3a9b70b1a448a4ad301ba310b06983e1634dda09173cddb4" }, "downloads": -1, "filename": "base10-0.5.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "876a97b934db0f965df30e20c1dec011", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4280, "upload_time": "2017-07-31T14:08:47", "url": "https://files.pythonhosted.org/packages/30/37/dea61acf29b5e0bb495815368b1a2adb5ca7753ef7bcc6d77d472d5662ac/base10-0.5.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f8b9f9aaddd3bcf4ccb0278aa833432c", "sha256": "e75a0113eb321d176f7613e93658683fa2ad8f0fa2b5c45b6670c157db78e0a9" }, "downloads": -1, "filename": "base10-0.5.1.tar.gz", "has_sig": false, "md5_digest": "f8b9f9aaddd3bcf4ccb0278aa833432c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3587, "upload_time": "2017-07-31T14:08:48", "url": "https://files.pythonhosted.org/packages/b5/75/a6d783f9902e584048d2f6541564453d0ec749d35eda5e23d7d1d5566c8e/base10-0.5.1.tar.gz" } ], "0.5.3": [ { "comment_text": "", "digests": { "md5": "254d8e002438ce83d62b1bfe92f30bbb", "sha256": "26cf0de0f6ecc1884b9a8c6c7f359bd5a8e72f345d9e5ee155f1ca1d67c3d74c" }, "downloads": -1, "filename": "base10-0.5.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "254d8e002438ce83d62b1bfe92f30bbb", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 12967, "upload_time": "2017-07-31T14:30:27", "url": "https://files.pythonhosted.org/packages/86/6f/ffe03a9f742c52defad3cfe95e2a00a34946a9dcf2bc7a2f71b8481e6e72/base10-0.5.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "756a7e81945dc020e09dbab91811308b", "sha256": "b83ac06707860f2970d67a79e566b52e5ac4249d31e47fd8a702f4f1d3cf4620" }, "downloads": -1, "filename": "base10-0.5.3.tar.gz", "has_sig": false, "md5_digest": "756a7e81945dc020e09dbab91811308b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 7804, "upload_time": "2017-07-31T14:30:28", "url": "https://files.pythonhosted.org/packages/f3/af/6384cf14ff677664948a166210232f345650201f5c3717488f2772f14dad/base10-0.5.3.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "f6c163cee9e41ff58711158bb863140e", "sha256": "80da6a5f03d3a12b517e18d89e929de07af24ac63bea10af6ad07a26952fa1f1" }, "downloads": -1, "filename": "base10-0.6.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f6c163cee9e41ff58711158bb863140e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13454, "upload_time": "2018-01-06T15:38:34", "url": "https://files.pythonhosted.org/packages/2c/ff/0d526375220202a8d3231981e5e6373539159a134f6ab95aec31034b1e41/base10-0.6.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "3df81d4593e18781c754a300f50440ad", "sha256": "8cdabe3eabb35360d4781a311250eaa05dcebb97371f4958d33350dd7e2d3a22" }, "downloads": -1, "filename": "base10-0.6.0.tar.gz", "has_sig": false, "md5_digest": "3df81d4593e18781c754a300f50440ad", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8582, "upload_time": "2018-01-06T15:16:21", "url": "https://files.pythonhosted.org/packages/d1/98/769596e1fb0633ceb5c8922de6d330d895588cb7de196e0244a2ef56ac61/base10-0.6.0.tar.gz" } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "237dbdc1d3c035643931422a243e8bc0", "sha256": "4dafcd20f616536e91b99fc5b602f8cc45bb66dbac45261c5232dbf29cc812ce" }, "downloads": -1, "filename": "base10-0.6.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "237dbdc1d3c035643931422a243e8bc0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13485, "upload_time": "2018-02-11T16:41:24", "url": "https://files.pythonhosted.org/packages/2c/5d/f70b0bbb61cd5fd1f7b081e3a21f6cb5b08fdc429123e15478c34c2e4e8c/base10-0.6.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "7abfe96a7f8a3e605b98c502d70001e7", "sha256": "9bfa209d53e60005c5cace1d356463c2725fd6c035c69c9f567f7534a5f30295" }, "downloads": -1, "filename": "base10-0.6.1.tar.gz", "has_sig": false, "md5_digest": "7abfe96a7f8a3e605b98c502d70001e7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8599, "upload_time": "2018-02-11T16:41:25", "url": "https://files.pythonhosted.org/packages/de/a4/35cb6dcf9c13deda2a89f16af5391d0fe6fcdbe403605288732e7b8f6a29/base10-0.6.1.tar.gz" } ], "0.6.2": [ { "comment_text": "", "digests": { "md5": "9556b5f7b1d4a6a33a167abf7f9e84f4", "sha256": "3b3590678d332ad080cb8a6e059cb19fa56f264c934a397903e2463761c9891f" }, "downloads": -1, "filename": "base10-0.6.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "9556b5f7b1d4a6a33a167abf7f9e84f4", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13500, "upload_time": "2018-02-11T17:01:04", "url": "https://files.pythonhosted.org/packages/3b/0c/240e46e06d15562c79c8cf52d50d2bd3e47bde31aec3ac500bbc03b4cfc0/base10-0.6.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6fd18832de02b8b748f1223c4f005bb3", "sha256": "a05d03c29885366259eb142e1287bf8012149643bc4afd0237856b45d693d822" }, "downloads": -1, "filename": "base10-0.6.2.tar.gz", "has_sig": false, "md5_digest": "6fd18832de02b8b748f1223c4f005bb3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8611, "upload_time": "2018-02-11T17:01:05", "url": "https://files.pythonhosted.org/packages/11/8c/a97816ff832b7e2967e487f7bf363d606b2a0f9c5262df9b3b5edefb5f9c/base10-0.6.2.tar.gz" } ], "0.6.3": [ { "comment_text": "", "digests": { "md5": "0ace7892b02c96c6a0015397dd61a712", "sha256": "047d17a876e389648ddbc9fac917ef383c6b4c4900d00be480418c633914151d" }, "downloads": -1, "filename": "base10-0.6.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0ace7892b02c96c6a0015397dd61a712", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13567, "upload_time": "2018-02-11T17:18:23", "url": "https://files.pythonhosted.org/packages/1d/a0/9e2091f9eab1d982ef8a3f57b13655172599cca10d0f3fcdb112860c303c/base10-0.6.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2f6a24c7c03ac7ad6f4cfa3f18721f96", "sha256": "d764a2b631d7f19e6ca9e36243e934aa83426880cec031e106c83a7a596867f6" }, "downloads": -1, "filename": "base10-0.6.3.tar.gz", "has_sig": false, "md5_digest": "2f6a24c7c03ac7ad6f4cfa3f18721f96", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8666, "upload_time": "2018-02-11T17:18:25", "url": "https://files.pythonhosted.org/packages/d5/92/74f0495a21cac86b38514629105c171a74d03cf318a07281f78255a516bc/base10-0.6.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0ace7892b02c96c6a0015397dd61a712", "sha256": "047d17a876e389648ddbc9fac917ef383c6b4c4900d00be480418c633914151d" }, "downloads": -1, "filename": "base10-0.6.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0ace7892b02c96c6a0015397dd61a712", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 13567, "upload_time": "2018-02-11T17:18:23", "url": "https://files.pythonhosted.org/packages/1d/a0/9e2091f9eab1d982ef8a3f57b13655172599cca10d0f3fcdb112860c303c/base10-0.6.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2f6a24c7c03ac7ad6f4cfa3f18721f96", "sha256": "d764a2b631d7f19e6ca9e36243e934aa83426880cec031e106c83a7a596867f6" }, "downloads": -1, "filename": "base10-0.6.3.tar.gz", "has_sig": false, "md5_digest": "2f6a24c7c03ac7ad6f4cfa3f18721f96", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8666, "upload_time": "2018-02-11T17:18:25", "url": "https://files.pythonhosted.org/packages/d5/92/74f0495a21cac86b38514629105c171a74d03cf318a07281f78255a516bc/base10-0.6.3.tar.gz" } ] }