{ "info": { "author": "Peter Demin", "author_email": "peterdemin@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6" ], "description": "===============================================\nAmazon Web Services Cloud Watch Metrics Library\n===============================================\n\n\n.. image:: https://img.shields.io/pypi/v/awsme.svg\n :target: https://pypi.python.org/pypi/awsme\n\n.. image:: https://img.shields.io/travis/peterdemin/awsme.svg\n :target: https://travis-ci.org/peterdemin/awsme\n\n.. image:: https://pyup.io/repos/github/peterdemin/awsme/shield.svg\n :target: https://pyup.io/repos/github/peterdemin/awsme/\n :alt: Updates\n\nConfigurable client library, that supports asynchronous and buffered sending of\nAWS cloud watch metrics.\n\nInstallation\n------------\n\nBy default awsme is installed without ``boto3`` dependency to make it deploy\nfaster in AWS Lambda environment (See `#3 ` for details).\n\nIf you run awsme outside of Lambda, use following command to activate ``boto3`` dependency::\n\n pip install awsme[boto3]\n\nUsage\n-----\n\n.. code-block:: python\n\n from awsme import create_cloud_watch\n cloud_watch = create_cloud_watch(\n namespace='Application',\n dimensions={'version': '1.0.0'},\n )\n cloud_watch.log('metric', dimensions={'key': 'dim'}, value=123)\n\nCreate Options\n--------------\n\n``create_cloud_watch`` accepts following arguments:\n\n* asynchronous (optional bool): if True (default), send metrics from a separate thread.\n* buffered (optional bool): if True (default), metrics will be accumulated in a buffer and sent in batches.\n* dummy (optional bool): if True, ignore two previous options and create dummy recorder. False by default.\n* dimensions: (optional Dict[str, str]): dictionary of default dimensions, that will be attached to all metrics.\n* All other kwargs will be bypassed to ``boto3.client('cloudwatch', **kwargs)``\n\nLog Options\n-----------\n\nCloudWatch, returned by ``create_cloud_watch`` has two public methods. The primary method is ``log``.\nIt's arguments:\n\n* name (required str): name of the metric.\n* dimensions (optional Dict[str, str]): additional dimensions,\n that will be added to default dimension from factory.\n* value (optional float): metric's value, 1 by default.\n* unit (optional str): metric unit, e.g. Count, Seconds, Bytes,\n see `AWS docs`_ for a complete list of valid values.\n* storage_resolution (optional int): metric storage resolution in seconds, 60 by default.\n\nFlushing\n--------\n\nIf ``create_cloud_watch`` was called with ``buffered=True`` (default) then you may want to forcefully \nflush the internal metrics buffer. \nIn a standard application this will likely not be necessary, as the buffer will auto-flush ``atexit``.\nHowever, if your application is running as an AWS Lambda function, the execution of the Lambda function\nwill be \"frozen\" when the function completes, preventing exiting and thus flushing. In this use case, \nyou will need to forcibly flush the buffer by calling ``flush``.\nIt's argument:\n\n* complete (optional bool): if True (default), perform a complete flush.\n\nAWS configuration\n-----------------\n\nAwsme uses boto3 library, that takes configuration from `environment variables`_\nand configuration files.\nTo check, that you have everything configured properly to send metrics, use included command-line tool:\n\n.. code-block::\n\n $ awsme-test\n ...\n Successfully sent metric \"awsme-test\" to \"Test Namespace\"\n\n\nCredits\n-------\n\nThis package was created with Cookiecutter_ and the `elgertam/cookiecutter-pipenv`_ project template, based on `audreyr/cookiecutter-pypackage`_.\n\n.. _Cookiecutter: https://github.com/audreyr/cookiecutter\n.. _`elgertam/cookiecutter-pipenv`: https://github.com/elgertam/cookiecutter-pipenv\n.. _`audreyr/cookiecutter-pypackage`: https://github.com/audreyr/cookiecutter-pypackage\n.. _`AWS docs`: https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_MetricDatum.html\n.. _`environment variables`: https://boto3.amazonaws.com/v1/documentation/api/latest/guide/configuration.html#environment-variables\n\n\n=======\nHistory\n=======\n\n0.2.2 (2019-01-24)\n------------------\n\n* Added asynchronous recorder and user documentation\n\n0.1.0 (2018-11-13)\n------------------\n\n* First release on PyPI.\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/peterdemin/awsme", "keywords": "awsme", "license": "MIT license", "maintainer": "", "maintainer_email": "", "name": "awsme", "package_url": "https://pypi.org/project/awsme/", "platform": "", "project_url": "https://pypi.org/project/awsme/", "project_urls": { "Homepage": "https://github.com/peterdemin/awsme" }, "release_url": "https://pypi.org/project/awsme/1.0.0/", "requires_dist": [ "click", "attrs", "boto3 ; extra == 'boto3'" ], "requires_python": "", "summary": "AWS CloudWatch client library to send metrics conveniently and efficiently", "version": "1.0.0" }, "last_serial": 4913056, "releases": { "0.1.3": [ { "comment_text": "", "digests": { "md5": "1f5f28d906ed678f237ee30476b3df78", "sha256": "01a0f4a644ede5b1e71dbb9530d2051fd8a7ad0a3de75c3a2811cec2e559ccd9" }, "downloads": -1, "filename": "awsme-0.1.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "1f5f28d906ed678f237ee30476b3df78", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 7227, "upload_time": "2018-11-14T03:36:16", "url": "https://files.pythonhosted.org/packages/30/1a/b4f7a0d16ac1d6a45be43cd72739efec47749678278178dc724b15d5cb81/awsme-0.1.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "c70f311c79429ef2c1f75952bc2dd145", "sha256": "4699bda5ef146ae33ff093665772e917402737d32c38701af12ddea8d220c11f" }, "downloads": -1, "filename": "awsme-0.1.3.tar.gz", "has_sig": false, "md5_digest": "c70f311c79429ef2c1f75952bc2dd145", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29601, "upload_time": "2018-11-14T03:36:18", "url": "https://files.pythonhosted.org/packages/bf/fa/046e2dda973ae6d16d570aa494e097847b187a416c80117b8488e2728624/awsme-0.1.3.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "b5011a42b99be236479d55267b180e3c", "sha256": "5091aaa586bfa71ffacae493458dc47702683be26f6e6358bbf734dbfabda883" }, "downloads": -1, "filename": "awsme-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b5011a42b99be236479d55267b180e3c", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8736, "upload_time": "2019-01-25T02:26:17", "url": "https://files.pythonhosted.org/packages/6f/25/cc8b1e1a5c37a1b4ed2bbf253f63f9723547a4c46b046c90335716c76d3f/awsme-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "70ba9c19c2da9404e6ab4aa391a9af4b", "sha256": "608ba8404286459e6b96c15029230b540d44034ca2b5f1d590acffcbe78d70e6" }, "downloads": -1, "filename": "awsme-0.2.0.tar.gz", "has_sig": false, "md5_digest": "70ba9c19c2da9404e6ab4aa391a9af4b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31598, "upload_time": "2019-01-25T02:26:18", "url": "https://files.pythonhosted.org/packages/13/22/61a8791dc970e5e578ed3bb80fe60252445b0646654858f2ef5bdf0cc8e7/awsme-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "f38725a4ac715126f3dac265956ee3a0", "sha256": "f17b395cfdee432348b76be0e46dd22c61c632fea0ae299e73672ed5b4f89fa6" }, "downloads": -1, "filename": "awsme-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f38725a4ac715126f3dac265956ee3a0", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8809, "upload_time": "2019-01-25T03:02:11", "url": "https://files.pythonhosted.org/packages/09/8b/0b1136a96a675c25b6998463b3c0cb47c2d1ec555a551215f4a14d8f0b89/awsme-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6e3858b28de60b6cd6e8ef5cfbf42b99", "sha256": "b2fc104de785291381ec30c0c2c6b4b636bbd31e4c872aa9e9cba6a2cb71f025" }, "downloads": -1, "filename": "awsme-0.2.1.tar.gz", "has_sig": false, "md5_digest": "6e3858b28de60b6cd6e8ef5cfbf42b99", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32091, "upload_time": "2019-01-25T03:02:12", "url": "https://files.pythonhosted.org/packages/1f/98/505547abae7d453168eb42937f46f7e259a1e7182c2785d5c03f888e02fa/awsme-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "d4798168330710a266085a62024d4f08", "sha256": "c84aecd0d975362d4b241a377b722750fadcb0143aa8cd087333c2ab9b0a4cc2" }, "downloads": -1, "filename": "awsme-0.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "d4798168330710a266085a62024d4f08", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8862, "upload_time": "2019-01-25T03:19:13", "url": "https://files.pythonhosted.org/packages/52/6f/950867cdd3311ab5851d0eafde877ef37f5cd3ecf33d84c2f0d5512fd66a/awsme-0.2.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a47e47d8c664a4b83938dff4783691b5", "sha256": "73ee158fe7d1f860bff572ff02e02989bd7d619b69e4a05d4108ce6f4d13bc9b" }, "downloads": -1, "filename": "awsme-0.2.2.tar.gz", "has_sig": false, "md5_digest": "a47e47d8c664a4b83938dff4783691b5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32154, "upload_time": "2019-01-25T03:19:14", "url": "https://files.pythonhosted.org/packages/35/d2/2bbe21f660d2a223551a967c008090ff6503716bc2996cdb97207dfb0287/awsme-0.2.2.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "1d21a0272dfd6f3bac669e7add132b7a", "sha256": "0a0810f3b8cf7f2712bd78084da8c4938f0eb8ab889175f03036f82c712dae59" }, "downloads": -1, "filename": "awsme-0.2.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "1d21a0272dfd6f3bac669e7add132b7a", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8865, "upload_time": "2019-01-25T03:39:30", "url": "https://files.pythonhosted.org/packages/b6/bd/9528e5a47349daf6948699f763976e2b6b16d4f39de92d48330c03e85cde/awsme-0.2.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "da8de822fcbadd2b9d6eb364732f01e0", "sha256": "fb08c43461f29cc54fad8d54e7bff0c88c683a55dcaf9b3c67f9ebe543c30732" }, "downloads": -1, "filename": "awsme-0.2.3.tar.gz", "has_sig": false, "md5_digest": "da8de822fcbadd2b9d6eb364732f01e0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32164, "upload_time": "2019-01-25T03:39:31", "url": "https://files.pythonhosted.org/packages/55/e1/9916cc37d0f739bb07b1278e0cc027bed154a99664720677cbd7137a3e3b/awsme-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "1136cd356c1cc2cee278552badf4e88f", "sha256": "9fdf09c8e2a9105e5b17902b419fc079d820d8ad43708970ba11b61ddbc22292" }, "downloads": -1, "filename": "awsme-0.2.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "1136cd356c1cc2cee278552badf4e88f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 8865, "upload_time": "2019-01-25T03:40:33", "url": "https://files.pythonhosted.org/packages/53/32/57ad6c915d3ab21f979438c5edc8a70414423034b2069bf36e2361c78ea3/awsme-0.2.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "790a974153d4817bf54796c8ad042d95", "sha256": "c2c9e3bddb80274e2ea1a7fa36d241170ef8f5c400455ddaee63801c61ee9b3c" }, "downloads": -1, "filename": "awsme-0.2.4.tar.gz", "has_sig": false, "md5_digest": "790a974153d4817bf54796c8ad042d95", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32167, "upload_time": "2019-01-25T03:40:34", "url": "https://files.pythonhosted.org/packages/f4/38/6f12c2e79762c6860e24488b9164c47edf8ad40d500a1f12b1bf4cf8ed87/awsme-0.2.4.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "0278424b24fc1e5d54c82b5eb642022e", "sha256": "cce8899e8369a5f0dbe1f00fd203eeda904d7a1369ce53b2ba5cdca34f99b565" }, "downloads": -1, "filename": "awsme-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0278424b24fc1e5d54c82b5eb642022e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9595, "upload_time": "2019-03-07T23:55:47", "url": "https://files.pythonhosted.org/packages/ba/9a/a2d1387ec1408c8b3335c66817fc7210e8799b20c78bce79b2ac71b09a8b/awsme-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "85239e6ce3e593f293cd5b5c0c8fcc03", "sha256": "ef97279d2638ed348786af517f4fedc4ede6bc022388fe07ddd1c3a0cddc9a32" }, "downloads": -1, "filename": "awsme-1.0.0.tar.gz", "has_sig": false, "md5_digest": "85239e6ce3e593f293cd5b5c0c8fcc03", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33277, "upload_time": "2019-03-07T23:55:48", "url": "https://files.pythonhosted.org/packages/18/7d/0ffac18e358b9cfd9743bd0d7aae2449937e2577d79dea255edd9088491b/awsme-1.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "0278424b24fc1e5d54c82b5eb642022e", "sha256": "cce8899e8369a5f0dbe1f00fd203eeda904d7a1369ce53b2ba5cdca34f99b565" }, "downloads": -1, "filename": "awsme-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "0278424b24fc1e5d54c82b5eb642022e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 9595, "upload_time": "2019-03-07T23:55:47", "url": "https://files.pythonhosted.org/packages/ba/9a/a2d1387ec1408c8b3335c66817fc7210e8799b20c78bce79b2ac71b09a8b/awsme-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "85239e6ce3e593f293cd5b5c0c8fcc03", "sha256": "ef97279d2638ed348786af517f4fedc4ede6bc022388fe07ddd1c3a0cddc9a32" }, "downloads": -1, "filename": "awsme-1.0.0.tar.gz", "has_sig": false, "md5_digest": "85239e6ce3e593f293cd5b5c0c8fcc03", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 33277, "upload_time": "2019-03-07T23:55:48", "url": "https://files.pythonhosted.org/packages/18/7d/0ffac18e358b9cfd9743bd0d7aae2449937e2577d79dea255edd9088491b/awsme-1.0.0.tar.gz" } ] }