{ "info": { "author": "Gary M. Josack", "author_email": "gary@dropbox.com", "bugtrack_url": null, "classifiers": [ "Programming Language :: Python", "Topic :: Software Development", "Topic :: Software Development :: Libraries", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "TrapperKeeper\n=============\n\nDescription\n-----------\n\nTrapperKeeper is a suite of tools for ingesting and displaying SNMP\ntraps. This is designed as a replacement for snmptrapd and to supplement\nexisting stateful monitoring solutions.\n\nNormally traps are stateless in nature which makes it difficult to\nmonitor with a system like nagios which requires polling a source.\nTrapperKeeper will store traps in an active state for a configured\namount of time before expiring. This makes it possible to poll the\nservice for active traps and alert off of those traps.\n\nOne example might be a humidity alert. If you cross over the humidity\nthreshold and it clears immediately you might not want to be paged at\n3am. But if it continues to send a trap every 5 minutes while it's over\nthat threshold the combination of (host, oid, severity) will remain in\nan active state as long as that trap's expiration duration is longer\nthan 5 minutes. This allows something like nagios to alarm when a single\ntrap remains active for greater than some period of time.\n\nAnother benefit is allowing aggregation of pages. Previously we'd just\nhad an e-mail to a pager per trap but now we're only paged based on the\nalert interval regardless of how many traps we receive. This also allows\nus to schedule downtime for a device during scheduled maintenance to\navoid trap storms.\n\nRequirements\n------------\n\nUbuntu\n~~~~~~\n\n.. code:: bash\n\n $ sudo apt-get install libmysqlclient-dev libsnmp-dev\n\nInstallation\n------------\n\nNew versions will be updated to PyPI pretty regularly so it should be as\neasy as:\n\n.. code:: bash\n\n $ pip install trapperkeeper\n\nOnce you've created a configuration file with your database information\nyou can run the following to create the database schema.\n\n.. code:: bash\n\n $ python -m trapperkeeper.cmds.sync_db -c /path/to/trapperkeeper.yaml\n\nTools\n-----\n\ntrapperkeeper\n~~~~~~~~~~~~~\n\nThe trapperkeeper command receives SNMP traps and handles e-mailing and\nwriting to the database. An example configuration file with\ndocumentation is available `here. `__\n\ntrapdoor\n~~~~~~~~\n\ntrapdoor is a webserver that provides a view into the existing traps as\nwell as an API for viewing the state of traps. An example configuration\nfile with documentation is available `here. `__\n\n.. figure:: https://raw.githubusercontent.com/dropbox/trapperkeeper/master/images/trapdoor.png\n :alt: Screenshot\n\n Screenshot\nAPI\n^^^\n\n/api/activetraps\n''''''''''''''''\n\n**Optional Parameters:** \\* host \\* oid \\* severity\n\n**Returns:**\n\n.. code:: javascript\n\n [\n (, , )\n ]\n\n/api/varbinds/\n''''''''''''''\n\n**Returns:**\n\n.. code:: javascript\n\n [\n {\n \"notification_id\": ,\n \"name\": ,\n \"pretty_value\": ,\n \"oid\": ,\n \"value\": ,\n \"value_type\": \n }\n ]\n\nMIB Configuration\n-----------------\n\n``trapperkeeper`` and ``trapdoor`` use the default mibs via netsnmp. You\ncan see the default path for your system by running\n``net-snmp-config --default-mibdirs``. You can use the following\nenvironment variables usually documented in the ``snmpcmd`` man page\n\n MIBS - The list of MIBs to load. Defaults to\n SNMPv2-TC:SNMPv2-MIB:IF-MIB:IP-MIB:TCP-MIB:UDP-MIB:SNMP-VACM-MIB.\n\n MIBDIRS - The list of directories to search for MIBs. Defaults to\n /usr/share/snmp/mibs.\n\nFor example I run both the ``trapperkeeper`` and ``trapdoor`` commands\nwith the following environment to add a directory to the path and load\nall mibs.\n\n``MIBS=ALL MIBDIRS=+/usr/share/mibs/local/``\n\nTODO\n----\n\n- Allow Custom E-mail templates for TrapperKeeper\n- cdnjs prefix for local cdnjs mirrors\n- User ACLs for resolution\n- Logging resolving user\n\nKnown Issues\n------------\n\n- Doesn't currently support SNMPv3\n- Doesn't currently support inform\n- Certain devices have been known to send negative TimeTicks. pyasn1\n fails to handle this.", "description_content_type": null, "docs_url": null, "download_url": "https://github.com/dropbox/trapperkeeper/archive/master.tar.gz", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/dropbox/trapperkeeper", "keywords": null, "license": "Apache", "maintainer": null, "maintainer_email": null, "name": "trapperkeeper", "package_url": "https://pypi.org/project/trapperkeeper/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/trapperkeeper/", "project_urls": { "Download": "https://github.com/dropbox/trapperkeeper/archive/master.tar.gz", "Homepage": "https://github.com/dropbox/trapperkeeper" }, "release_url": "https://pypi.org/project/trapperkeeper/0.6.1/", "requires_dist": null, "requires_python": null, "summary": "SNMP Trap Daemon.", "version": "0.6.1" }, "last_serial": 2634545, "releases": { "0.0.1": [], "0.0.2": [ { "comment_text": "", "digests": { "md5": "af5cfd73951f2af790c8995e57f2b36b", "sha256": "69b2d25de91c42a0cff88873dde1ddd96a481e63ea45e5217490bca4001847d6" }, "downloads": -1, "filename": "trapperkeeper-0.0.2.tar.gz", "has_sig": false, "md5_digest": "af5cfd73951f2af790c8995e57f2b36b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 78646, "upload_time": "2014-03-18T16:57:44", "url": "https://files.pythonhosted.org/packages/11/bf/54662826c59afe0142446378a7f7c9a68ee53052cf8b03fa58a59b3ffdf5/trapperkeeper-0.0.2.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "5665ef6534fef7f90bf8843b95c98e3d", "sha256": "c7f7f4b091c3954da964e647f871b34c1ed5dda7d40678def6358c6dce64c080" }, "downloads": -1, "filename": "trapperkeeper-0.1.1.tar.gz", "has_sig": false, "md5_digest": "5665ef6534fef7f90bf8843b95c98e3d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 79764, "upload_time": "2014-03-19T02:17:44", "url": "https://files.pythonhosted.org/packages/db/f5/4f09139e5615ca717ae95ea2557fd94aca07915bc7bd321f0fcb7b21526f/trapperkeeper-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "a4ec6bf0177635fc6805796f681e9218", "sha256": "dd5e31185346b8cc744a1358c3568bd7366eb385e29c70e2955395f14b5406fd" }, "downloads": -1, "filename": "trapperkeeper-0.1.2.tar.gz", "has_sig": false, "md5_digest": "a4ec6bf0177635fc6805796f681e9218", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 80046, "upload_time": "2014-03-19T18:17:59", "url": "https://files.pythonhosted.org/packages/5e/1b/375f34acc8a4bdec6541ff0dfb17c90f37991e97c5a44a7f538543766282/trapperkeeper-0.1.2.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "bfaac1270f2d1e1b7579c7ee22df8926", "sha256": "943f72038baf9825749a2d138cf9980e9cce023cb326ff0916ea7acc5fdf96d1" }, "downloads": -1, "filename": "trapperkeeper-0.2.0.tar.gz", "has_sig": false, "md5_digest": "bfaac1270f2d1e1b7579c7ee22df8926", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 81537, "upload_time": "2014-03-20T05:06:17", "url": "https://files.pythonhosted.org/packages/2b/0b/08ab8b0715d4e5d86cc8996e7b3ba2b10a95d50f4f98becdaf9fb6a177d7/trapperkeeper-0.2.0.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "47af601bbe540ee369b7975a923a4fef", "sha256": "8ddffe280aaab157bffe43912ad7ebfefae5a9fa03b000cae70b56058de130aa" }, "downloads": -1, "filename": "trapperkeeper-0.3.0.tar.gz", "has_sig": false, "md5_digest": "47af601bbe540ee369b7975a923a4fef", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 83923, "upload_time": "2014-03-20T21:07:59", "url": "https://files.pythonhosted.org/packages/87/72/0580e6b9cd25265f50d72f75c1b4853b5a8822f80d75d42490d1dfc077b2/trapperkeeper-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "f1f572d1c0f8d1198711166ed2757eb4", "sha256": "4c903aff6e233aadd211fb6cc420d5052eca11391b003568ee9dd07cea8c681d" }, "downloads": -1, "filename": "trapperkeeper-0.3.1.tar.gz", "has_sig": false, "md5_digest": "f1f572d1c0f8d1198711166ed2757eb4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 83936, "upload_time": "2014-03-20T22:37:53", "url": "https://files.pythonhosted.org/packages/1d/cf/dd02406404755cb173d858ac4324adecdce7ef6c71b69ebe9e7e4b2727cc/trapperkeeper-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "ae9899df46c9b5bdadf7f605d16a80ac", "sha256": "ffa764576bb12182583fa2719ed96d779e3a5d94588f05d3d756ef34b28a7197" }, "downloads": -1, "filename": "trapperkeeper-0.3.2.tar.gz", "has_sig": false, "md5_digest": "ae9899df46c9b5bdadf7f605d16a80ac", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 84497, "upload_time": "2014-03-26T17:47:56", "url": "https://files.pythonhosted.org/packages/10/1f/11219e25e487144aed894bb301136c647dbf590a367e55524033d1ed5bb7/trapperkeeper-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "e16ab0349a174071c8485a73794cebee", "sha256": "b88614eb58357a1f52f3845abe25bdb0aeff0bd750d18f4d647786576eedc5e5" }, "downloads": -1, "filename": "trapperkeeper-0.3.3.tar.gz", "has_sig": false, "md5_digest": "e16ab0349a174071c8485a73794cebee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 84671, "upload_time": "2014-03-26T17:57:04", "url": "https://files.pythonhosted.org/packages/fe/7a/9fa6b0c1845eda4c652777934b9604804e5aeafacabafc7cb5c663a232ed/trapperkeeper-0.3.3.tar.gz" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "f3b821b28f5499d154e9d4095d269b9a", "sha256": "9f450bf66eb052a4005455ae7941aa2c13f6849552e41494a4e53809c4eb4192" }, "downloads": -1, "filename": "trapperkeeper-0.3.4.tar.gz", "has_sig": false, "md5_digest": "f3b821b28f5499d154e9d4095d269b9a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 84664, "upload_time": "2014-03-27T03:30:48", "url": "https://files.pythonhosted.org/packages/89/d4/6b7895ef889211d1159fd5761a0a2d9aa305ba64c701745ad26653fa41bf/trapperkeeper-0.3.4.tar.gz" } ], "0.3.5": [ { "comment_text": "", "digests": { "md5": "6bad9b1fc56a06c8a1c1d48bd8a3b72e", "sha256": "b69381907ffaa44b68abe9ac019d96e2cde072c6e3f39c3997376caaf41fce16" }, "downloads": -1, "filename": "trapperkeeper-0.3.5.tar.gz", "has_sig": false, "md5_digest": "6bad9b1fc56a06c8a1c1d48bd8a3b72e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 87610, "upload_time": "2014-05-13T17:49:41", "url": "https://files.pythonhosted.org/packages/87/b1/b7ba0502e9b6be71e9b624fe5a2c1a193636aa4f2776c17cc03562c76747/trapperkeeper-0.3.5.tar.gz" } ], "0.3.6": [ { "comment_text": "", "digests": { "md5": "5faffe437749d0a22969eef303776501", "sha256": "ef3b8b2e3a3c0de0b5ec5c1311059c8f8c33afb35513ee8f0c104f0610cb216f" }, "downloads": -1, "filename": "trapperkeeper-0.3.6.tar.gz", "has_sig": false, "md5_digest": "5faffe437749d0a22969eef303776501", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 87620, "upload_time": "2014-07-15T18:06:13", "url": "https://files.pythonhosted.org/packages/09/a9/a9bdeab65e4ef3bcf1cf9f23007b654c8e79885050ffa5badf4969012195/trapperkeeper-0.3.6.tar.gz" } ], "0.3.7": [ { "comment_text": "", "digests": { "md5": "27b16602411a2c5059a1af8aae809af0", "sha256": "71eb9a246eeca1b0a9dce6f896a288f1c4aebe828579c6e6cb169eafce898414" }, "downloads": -1, "filename": "trapperkeeper-0.3.7.tar.gz", "has_sig": false, "md5_digest": "27b16602411a2c5059a1af8aae809af0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 87645, "upload_time": "2014-08-12T04:34:24", "url": "https://files.pythonhosted.org/packages/1a/85/861ccf0d916a9231133ec20072db4f0a939c8d83c613cc3293ad41c553d4/trapperkeeper-0.3.7.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "204d658f3254cbcd8f2f63536b4a62ae", "sha256": "e52879d0d606e75b9384ad0faf625fe01a1a6e38dba5973e0767dbbb2cc2d7f6" }, "downloads": -1, "filename": "trapperkeeper-0.4.1.tar.gz", "has_sig": false, "md5_digest": "204d658f3254cbcd8f2f63536b4a62ae", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 88455, "upload_time": "2014-10-29T22:32:01", "url": "https://files.pythonhosted.org/packages/ef/c9/aea24152f6fd1b1e5b7bf7835e95f31973205376166d3f8c0843713b7ef1/trapperkeeper-0.4.1.tar.gz" } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "74c9988ebe2398eca7be1260c25c4171", "sha256": "922699ab086a72daed7f0df483c40bcd8079a727e4b83025479e8d65b4f3ca96" }, "downloads": -1, "filename": "trapperkeeper-0.4.2.tar.gz", "has_sig": false, "md5_digest": "74c9988ebe2398eca7be1260c25c4171", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 88510, "upload_time": "2014-11-06T22:55:50", "url": "https://files.pythonhosted.org/packages/2b/d8/ca44555ab52ae88a02a4b5901dc1b31c55be7539e39a7041beb7c0195b92/trapperkeeper-0.4.2.tar.gz" } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "10c03116b913b831053babedf30548ee", "sha256": "f8aa4c2af0e8df0c0d1168313f02872293dc8bc11aac0cc8746dd61d3169cf57" }, "downloads": -1, "filename": "trapperkeeper-0.4.3.tar.gz", "has_sig": false, "md5_digest": "10c03116b913b831053babedf30548ee", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 88905, "upload_time": "2014-11-17T22:48:33", "url": "https://files.pythonhosted.org/packages/5f/e5/9ab31446f76e14e4a1f573a0b35d4cb55def878e661e3020e498b5d75bf2/trapperkeeper-0.4.3.tar.gz" } ], "0.5.0": [ { "comment_text": "", "digests": { "md5": "1e9bdb934e0babc59997448cba8df0f7", "sha256": "b85f52769caa168a8821c8fe2b1df8c900d923a1a4254087f8ee2b4080267bb2" }, "downloads": -1, "filename": "trapperkeeper-0.5.0.tar.gz", "has_sig": false, "md5_digest": "1e9bdb934e0babc59997448cba8df0f7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 89017, "upload_time": "2015-04-09T03:05:42", "url": "https://files.pythonhosted.org/packages/82/b7/95bff68cb9b0b9ec00f608d2223c4b6b73ad53e540ad86a01d98596969dc/trapperkeeper-0.5.0.tar.gz" } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "ce28a36b0b6e5bc07ae794db2e78944a", "sha256": "8d0dfa6bcfe6a181d2c9e2bac243d7c6d39293c5759cc4909341e915a14d32a2" }, "downloads": -1, "filename": "trapperkeeper-0.6.0.tar.gz", "has_sig": false, "md5_digest": "ce28a36b0b6e5bc07ae794db2e78944a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 89107, "upload_time": "2015-04-10T04:50:25", "url": "https://files.pythonhosted.org/packages/58/61/c0a84bf107f7d000d17d9778a069a18588c35776665ad0121842eabe78fe/trapperkeeper-0.6.0.tar.gz" } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "afbe96f912c9a6126d82fadba86641a6", "sha256": "2103c80e1c943b632d1925cbc4df1cf623c1d6d37bf088aac58ead6b03202d37" }, "downloads": -1, "filename": "trapperkeeper-0.6.1.tar.gz", "has_sig": false, "md5_digest": "afbe96f912c9a6126d82fadba86641a6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 93446, "upload_time": "2017-01-05T06:52:25", "url": "https://files.pythonhosted.org/packages/d6/55/9e0a1ba4a79487937c74d55f5e3897353ffd72ecd327eecbcde037104ba0/trapperkeeper-0.6.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "afbe96f912c9a6126d82fadba86641a6", "sha256": "2103c80e1c943b632d1925cbc4df1cf623c1d6d37bf088aac58ead6b03202d37" }, "downloads": -1, "filename": "trapperkeeper-0.6.1.tar.gz", "has_sig": false, "md5_digest": "afbe96f912c9a6126d82fadba86641a6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 93446, "upload_time": "2017-01-05T06:52:25", "url": "https://files.pythonhosted.org/packages/d6/55/9e0a1ba4a79487937c74d55f5e3897353ffd72ecd327eecbcde037104ba0/trapperkeeper-0.6.1.tar.gz" } ] }