{ "info": { "author": "Daniel K Lyons", "author_email": "dlyons@nrao.edu", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: GNU General Public License v2 (GPLv2)", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Topic :: Software Development :: Build Tools" ], "description": "# Pymygdala\n\nA CAPO aware library and suite of CLIs for interacting with RabbitMQ. This work borrows heavily from python-logging-rabbit, which can be found here:\n\nhttps://github.com/albertomr86/python-logging-rabbitmq/tree/master/python_logging_rabbitmq\n\n## Requirements\n\nThis library depends on pycapo and Pika.\n\n## Usage\n\n\n### Logging API\n\nThis is the minimal use case, where Pymygdala gets connection details from CAPO and relies on the defaults where it can.\n\n log = logging.getLogger(__name__)\n log.setlevel(logging.DEBUG)\n handler = LogHandler(profile='test', application='test-app',\n level=logging.INFO)\n log.addHandler(handler)\n log.error(\"there are eels in my hovercraft\")\n\n### Logging CLI\n\n pym-sendlog, 0.2.0: a command line tool for logging to RabbitMQ.\n\n optional arguments:\n -h, --help show this help message and exit\n --profile PROFILE CAPO profile name to use, e.g. test, production\n --exchange EXCHANGE exchange name to use, e.g. archive.logs\n --type EXCHANGE_TYPE exchange type to use, e.g. fanout\n --hostname HOSTNAME server name of the RabbitMQ server\n --username USERNAME username of the RabbitMQ server\n --password PASSWORD password of the RabbitMQ server\n --port PORT port number of the RabbitMQ server\n --key ROUTING_KEY routing key, e.g. archive.logs\n\n required arguments:\n --level LEVEL logging level, e.g. DEBUG, WARN\n --message MESSAGE message to log\n --app APPLICATION the application name to log as\n\n### DumpLogs CLI\n\n pym-dumplogs, 0.2.0: connect to a RabbitMQ server and dump out logs.\n\n optional arguments:\n -h, --help show this help message and exit\n --profile PROFILE CAPO profile name to use, e.g. test, production\n --exchange EXCHANGE exchange name to use, e.g. archive.logs\n --type EXCHANGE_TYPE exchange type to use, e.g. fanout\n --hostname HOSTNAME server name of the RabbitMQ server\n --username USERNAME username of the RabbitMQ server\n --password PASSWORD password of the RabbitMQ server\n --port PORT port number of the RabbitMQ server\n --outfile OUTFILE write output to file, - for STDOUT\n\n This is the pym-dumplogs epilog.\n\n### Sending an event, API\n\n message = {'eventName': settings['metadata']['workflow'],\n 'type': settings['metadata']['type'],\n 'additionalPaths': [],\n 'metadata': settings['metadata']}\n se = SendEvent(**settings)\n se.send(json.dumps(message))\n\n### Sending an event, CLI\n\nThis is the pym-sendevent description, 0.2.0\n\n optional arguments:\n -h, --help show this help message and exit\n --profile PROFILE CAPO profile name to use, e.g. test, production\n --exchange EXCHANGE exchange name to use, e.g. archive.logs\n --type EXCHANGE_TYPE exchange type to use, e.g. fanout\n --hostname HOSTNAME server name of the RabbitMQ server\n --username USERNAME username of the RabbitMQ server\n --password PASSWORD password of the RabbitMQ server\n --port PORT port number of the RabbitMQ server\n --key ROUTING_KEY routing key, e.g. archive.logs\n --metadata METADATA provide a KEY=VALUE pair to be passed to RabbitMQ; can be used multiple times\n\n This is the pym-sendevent epilog.\n\n0.2.2 2017-07-17 Fix to tone down timestamp's fractional seconds to something reasonable\n0.2.1\t2017-07-10\tQuick bugfix on SendNRAOEvent\n0.2.0\t2017-07-06\tMajor refactor, added pym-dumplogs, pym-sendlog, pym-sendevent CLI apps, docs and more goodness\n0.1.1\t2017-06-28\tPackaging fixes, first pypi release\n0.0.1\t2017-01-31\tInitial release plus logging\n", "description_content_type": null, "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://open-bitbucket.nrao.edu/projects/SSA/repos/pymygdala", "keywords": "", "license": "GPL", "maintainer": "", "maintainer_email": "", "name": "pymygdala", "package_url": "https://pypi.org/project/pymygdala/", "platform": "", "project_url": "https://pypi.org/project/pymygdala/", "project_urls": { "Homepage": "https://open-bitbucket.nrao.edu/projects/SSA/repos/pymygdala" }, "release_url": "https://pypi.org/project/pymygdala/0.2.2/", "requires_dist": null, "requires_python": "", "summary": "Pymygdala: Archive messaging for Python", "version": "0.2.2" }, "last_serial": 3030069, "releases": { "0.2.1": [ { "comment_text": "", "digests": { "md5": "0c09902451aba16565ee446e0d56737c", "sha256": "e1f2c443172d77a1a3f4919e924aa9f5b97ddb7c2cdee9a9c0a245e58f678fd2" }, "downloads": -1, "filename": "pymygdala-0.2.1-py3-none-any.whl", "has_sig": false, "md5_digest": "0c09902451aba16565ee446e0d56737c", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 13117, "upload_time": "2017-07-08T06:58:53", "url": "https://files.pythonhosted.org/packages/bb/e0/122185eb182eeb5b9d806a3ca71fe8b372ec63d05d2bf267fdc54cfd2007/pymygdala-0.2.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "78c2070d123c0112fb488dc4718c83d3", "sha256": "1a0e84b5b6c8b5fc14a87033148347bcfa192d7bd03459b14bf8aabf77d69470" }, "downloads": -1, "filename": "pymygdala-0.2.1.tar.gz", "has_sig": false, "md5_digest": "78c2070d123c0112fb488dc4718c83d3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1737352, "upload_time": "2017-07-08T06:58:33", "url": "https://files.pythonhosted.org/packages/33/1b/62be1005142752ae7b17c5e5432aaaba709c56b5a56aab93b9ecec9d908a/pymygdala-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "995c45b55b2fdd50080359d98d3460ae", "sha256": "31613b79f0cc85ae9609a6923a9ef41925f05f035c646b1532bd8613ec7a4f12" }, "downloads": -1, "filename": "pymygdala-0.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "995c45b55b2fdd50080359d98d3460ae", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 13307, "upload_time": "2017-07-18T00:50:39", "url": "https://files.pythonhosted.org/packages/db/c1/64fe2a6f037ba17931c2391facc82945a8021ff27748630874016dae64fe/pymygdala-0.2.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5fa36c8be6581f065219fd5cd67b4739", "sha256": "d0841896da88ea3fe1e3d329d40e27b656b0b1d39dfafb10cc4a92ba8d6afc8b" }, "downloads": -1, "filename": "pymygdala-0.2.2.tar.gz", "has_sig": false, "md5_digest": "5fa36c8be6581f065219fd5cd67b4739", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1737104, "upload_time": "2017-07-18T00:50:16", "url": "https://files.pythonhosted.org/packages/14/95/4c4469147d7b6cb0ce8e2c0ab6f620631d04c66e0b9077dafc02bc18dec0/pymygdala-0.2.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "995c45b55b2fdd50080359d98d3460ae", "sha256": "31613b79f0cc85ae9609a6923a9ef41925f05f035c646b1532bd8613ec7a4f12" }, "downloads": -1, "filename": "pymygdala-0.2.2-py3-none-any.whl", "has_sig": false, "md5_digest": "995c45b55b2fdd50080359d98d3460ae", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 13307, "upload_time": "2017-07-18T00:50:39", "url": "https://files.pythonhosted.org/packages/db/c1/64fe2a6f037ba17931c2391facc82945a8021ff27748630874016dae64fe/pymygdala-0.2.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5fa36c8be6581f065219fd5cd67b4739", "sha256": "d0841896da88ea3fe1e3d329d40e27b656b0b1d39dfafb10cc4a92ba8d6afc8b" }, "downloads": -1, "filename": "pymygdala-0.2.2.tar.gz", "has_sig": false, "md5_digest": "5fa36c8be6581f065219fd5cd67b4739", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1737104, "upload_time": "2017-07-18T00:50:16", "url": "https://files.pythonhosted.org/packages/14/95/4c4469147d7b6cb0ce8e2c0ab6f620631d04c66e0b9077dafc02bc18dec0/pymygdala-0.2.2.tar.gz" } ] }