{ "info": { "author": "Andrzej Mateja", "author_email": "mateja.and@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: Django", "Framework :: Django :: 2.0", "Framework :: Django :: 2.1", "Intended Audience :: Developers", "License :: OSI Approved :: GNU Lesser General Public License v3 or later (LGPLv3+)", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Topic :: Internet :: WWW/HTTP" ], "description": ".. image:: https://img.shields.io/travis/com/watcheye/watcheye-collector.svg\n :alt: Travis (.com)\n :target: https://travis-ci.com/watcheye/watcheye-collector\n.. image:: https://img.shields.io/coveralls/github/watcheye/watcheye-collector.svg\n :target: https://coveralls.io/github/watcheye/watcheye-collector\n.. image:: https://img.shields.io/pypi/v/watcheye-collector.svg\n :target: https://pypi.python.org/pypi/watcheye-collector\n.. image:: https://img.shields.io/pypi/format/watcheye-collector.svg\n :target: https://pypi.python.org/pypi/watcheye-collector\n.. image:: https://img.shields.io/pypi/djversions/watcheye-collector.svg\n :target: https://pypi.python.org/pypi/watcheye-collector\n.. image:: https://img.shields.io/pypi/pyversions/watcheye-collector.svg\n :target: https://pypi.python.org/pypi/watcheye-collector\n.. image:: https://img.shields.io/pypi/status/watcheye-collector.svg\n :target: https://pypi.python.org/pypi/watcheye-collector\n.. image:: https://img.shields.io/github/license/watcheye/watcheye-collector.svg\n\n=========\nCollector\n=========\n\nCollector is a Django application to collect monitoring data samples\nthrough HTTP or SNMP GET interface. Collected data might be then\nvisualized using e.g. `Grafana `_.\n\nDependencies\n------------\n\nCollector uses `InfluxDB `_\ntime series database for storing monitoring data samples and `django\nsupported database\n`_ for storing\nconfiguration and\n`Redis broker\n`_.\n\nQuick start\n-----------\n\nAssuming InfluxDB is properly configured (`setting up authentication\n`_\nis recommended) and so is Redis broker just a few steps are required.\n\n#. Install ``watcheye-collector``:\n\n .. code:: shell\n\n $ pip install watcheye-collector\n\n#. Add ``collector`` application to ``INSTALLED_APPS`` setting.\n\n .. code:: python\n\n INSTALLED_APPS = [\n ...\n 'collector',\n ]\n\n#. Integrate Celery with your django project (see `Celery documentation\n `_\n for further reference).\n\n#. Add InfluxDB connection and Celery configuration in ``settings.py``\n file:\n\n .. code:: python\n\n INFLUXDB_HOST = 'my_host'\n INFLUXDB_USERNAME = 'user'\n INFLUXDB_PASSWORD = 'secret'\n\n CELERY_BEAT_SCHEDULE = {\n 'snmp-scheduler': {\n 'task': 'collector.tasks.snmp_scheduler',\n 'schedule': crontab(minute='*')\n }\n }\n CELERY_RESULT_BACKEND = 'redis://my_broker_host/0'\n CELERY_BROKER_URL = 'redis://my_broker_host/1'\n\n # to use non-default values configure also:\n INFLUXDB_PORT = 1234\n INFLUXDB_DATABASE = 'my_database'\n INFLUXDB_RETENTION_POLICY = 'my_policy'\n INFLUXDB_DURATION = '30d'\n\n#. To set InfluxDB instance up run:\n\n .. code:: shell\n\n python manage.py setupinfluxdb --username \n\n#. To create the collector models run:\n\n .. code:: shell\n\n python manage.py migrate\n\n#. Include the collector URLconf in your project urls.py:\n\n .. code:: python\n\n path('collector/', include('collector.urls')),\n\n#. Start the development server and visit http://127.0.0.1:8000/admin/\n to create a collector configuration (the Admin application must also\n be enabled).\n\n#. Run Celery worker with:\n\n .. code:: shell\n\n celery --beat --app worker\n\n#. POST some samples:\n\n .. code:: shell\n\n $ curl -i -X POST \\\n -H \"Content-Type: application/json\" \\\n -d '{\"host\":\"test\", \"timestamp\": 1500000000,\n \"samples\": [{\"parameter\":\"CPU\", \"value\": 10}]}' \\\n http://127.0.0.1:8000/collector/\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/watcheye/watcheye-collector", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "watcheye-collector", "package_url": "https://pypi.org/project/watcheye-collector/", "platform": "", "project_url": "https://pypi.org/project/watcheye-collector/", "project_urls": { "Homepage": "https://github.com/watcheye/watcheye-collector" }, "release_url": "https://pypi.org/project/watcheye-collector/2.0.0/", "requires_dist": [ "celery[redis] (>=4.2.0)", "django (>=2.0.0)", "influxdb (>=5.2.0)", "pyasn1", "pysnmp" ], "requires_python": "", "summary": "A Django application to collect monitoring data samples through HTTP or SNMP GET interface.", "version": "2.0.0" }, "last_serial": 4660407, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "6b369f80bffb2f7f1108c3547eb8a0eb", "sha256": "966dbd21a928175c7668d0d02f304e1cf3d8ad06c3993410bf9583328cd9ee12" }, "downloads": -1, "filename": "watcheye-collector-1.0.0.tar.gz", "has_sig": false, "md5_digest": "6b369f80bffb2f7f1108c3547eb8a0eb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18860, "upload_time": "2018-09-20T12:58:33", "url": "https://files.pythonhosted.org/packages/da/56/cb31c257ebd1392ef132a923e820e515bb77123ad9015ca9031c67143cdc/watcheye-collector-1.0.0.tar.gz" } ], "2.0.0": [ { "comment_text": "", "digests": { "md5": "29a6b25692cdd6b8ce588d05868db5a6", "sha256": "f5a9f2e62b7b3fcd9bd2ec3ee86067099b490e8e475cf988d760fa5a4ce0486b" }, "downloads": -1, "filename": "watcheye_collector-2.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "29a6b25692cdd6b8ce588d05868db5a6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 32182, "upload_time": "2019-01-04T14:33:46", "url": "https://files.pythonhosted.org/packages/a4/b6/dae78197bab842b4880740b9860426740295cd4f15d9eb0c3511712fe43d/watcheye_collector-2.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9ee1e015140dd6095cbe17c2ad008228", "sha256": "2ebe7a105dce429ebe9c9d0589d59682bd6d3efc9f82c6d743f526ed2010c8c0" }, "downloads": -1, "filename": "watcheye-collector-2.0.0.tar.gz", "has_sig": false, "md5_digest": "9ee1e015140dd6095cbe17c2ad008228", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25891, "upload_time": "2019-01-04T14:33:47", "url": "https://files.pythonhosted.org/packages/ba/cb/974af5731a6b0c077d088ede0418c167f9c8296e7e7e96a2a14e7438db26/watcheye-collector-2.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "29a6b25692cdd6b8ce588d05868db5a6", "sha256": "f5a9f2e62b7b3fcd9bd2ec3ee86067099b490e8e475cf988d760fa5a4ce0486b" }, "downloads": -1, "filename": "watcheye_collector-2.0.0-py3-none-any.whl", "has_sig": false, "md5_digest": "29a6b25692cdd6b8ce588d05868db5a6", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 32182, "upload_time": "2019-01-04T14:33:46", "url": "https://files.pythonhosted.org/packages/a4/b6/dae78197bab842b4880740b9860426740295cd4f15d9eb0c3511712fe43d/watcheye_collector-2.0.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9ee1e015140dd6095cbe17c2ad008228", "sha256": "2ebe7a105dce429ebe9c9d0589d59682bd6d3efc9f82c6d743f526ed2010c8c0" }, "downloads": -1, "filename": "watcheye-collector-2.0.0.tar.gz", "has_sig": false, "md5_digest": "9ee1e015140dd6095cbe17c2ad008228", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25891, "upload_time": "2019-01-04T14:33:47", "url": "https://files.pythonhosted.org/packages/ba/cb/974af5731a6b0c077d088ede0418c167f9c8296e7e7e96a2a14e7438db26/watcheye-collector-2.0.0.tar.gz" } ] }