{ "info": { "author": "Emin Martinian", "author_email": "emin.martinian@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 3 - Alpha", "Intended Audience :: Developers", "Programming Language :: Python :: 3" ], "description": "Introduction\n============\n\nThe `ox_mon `__ package provides some\ntools to keep monitor your machine to keep it up to date, free of\nviruses, and generally working properly.\n\nBasically, there are lots of little monitoring and checking tasks you\nmay find yourself needing to do. You could write a separate script for\neach such task, but it would be nice to have some basic scaffolding for\nthings like notifications, logging, testing, and so on to simplify\nmachine monitoring. Better yet, by having a common framework many\ndevelopers can contribute small snippets of such tools that work in a\nsimilar way to simplify life for everyone.\n\nOnce you install ``ox_mon`` as described in the\n`Installation `__ section, you can do something\nlike\n\n.. code:: bash\n\n ox_mon check [`__\nsection with a consistent reporting system described in the\n`Notifiers `__ section.\n\nOne useful feature of ``ox_mon`` is that you can sign-up for free for\nthe Sentry service at https://sentry.io and either set the environment\nvariable ``SENTRY_DSN`` or provide the ``--SENTRY`` argument to your\n``ox_mon`` commands and get notifications via sentry. This provides an\neasy way to run ``ox_mon`` commands in cron or other scripts and get\nconvenient error notification on failures without having to configure a\nmail server or other tools.\n\nInstallation\n============\n\nYou can install via the usual ``pip install ox_mon``. If you want to\ninstall and be able to edit your installation, you may consider doing\nsomething like ``pip install --editable ox_mon``.\n\nUsage\n=====\n\nYou can see the list of possible commands via\n\n.. code:: bash\n\n ox_mon --help\n\nCheckers\n--------\n\nOne of the most useful commands is ``ox_mon check``. If you try\n\n.. code:: bash\n\n ox_mon check --help\n\nyou will see a list of possible checkers you can run. These all use the\nsame general syntax for things like how to notify an administrator if\nissues are found while also checker specific customization.\n\nChecker: apt\n~~~~~~~~~~~~\n\nThe ``apt`` checker will check your Ubuntu installation to see if you\nhave the latest security updates installed. If you do, then nothing\nhappens. If you have not done ``apt update`` recently or you do **NOT**\nhave the latest security packages installed, then you will be notified.\n\nYou can control the notification methods and how many days have passed\nsince you did ``apt update`` using command line options. For example,\ndoing\n\n.. code:: bash\n\n ox_mon check apt --notifier echo --age-in-days 7\n\nwould not notify you provided that you have done ``apt update`` within 7\ndays. If your packages are stale, the notification will just print a\nmessage. See the `Notifiers section `__ for\nnotification options.\n\nChecker: disk\n~~~~~~~~~~~~~\n\nThe ``disk`` checker will check your system to see if the disk is too\nfull. If so, you will be notified as described in the\n`Notifiers `__ section.\n\nYou can control the notification methods and how full the disk is\nallowed to be before it triggers an alarm. For example, doing\n\n.. code:: bash\n\n ox_mon check disk --notifier loginfo --max-used-pct 5\n\nwould not notify you using python's ``logging.INFO`` stream (which\nusually goes to ``stderr``) if your disk is more than ``5%`` full.\n\nChecker: anti-virus\n~~~~~~~~~~~~~~~~~~~\n\nThe ``clamscan`` checker will use `ClamAV `__\n(assuming you have it installed) to virus scan your system. You can\ncontrol the target location to scan via something like\n\n.. code:: bash\n\n ox_mon check clamscan --target $HOME\n\nBackup\n------\n\nThe ``ox_mon backup`` command group provides a way to use ``ox_mon`` for\nbackups. Try\n\n.. code:: bash\n\n ox_mon backup --help\n\nfor information.\n\nRaw commands\n------------\n\nIdeally it is nicer to right your scripts using the ``ox_mon`` library\ninterface since python is often more robust than shell scripts. If you\nhave a quick task, however, you can use ``gcmd raw`` to run a generic\nraw command via something like:\n\n.. code:: bash\n\n ox_mon gcmd raw --cmd /bin/ls\n\nYou can also provide arguments or options for your raw command by using\nthe ``--args`` option to ``gcmd`` and using colons instead of dashes\n(one outstanding feature request is to clean-up the colon syntax to make\nthis less ugly):\n\n.. code:: bash\n\n ox_mon gcmd raw --cmd /bin/ls --args :lt\n\nThe benefit of using ``gcmd raw`` is that you can include sentry or\nother notifiers to report results of the command.\n\nNotifiers\n---------\n\nThere are a variety of ways to get notifications:\n\n- ``echo``: Just echoes notification to stdout.\n- ``email``: Will send you an email provided you specify the following:\n\n - ``OX_MON_EMAIL_TO``: A comma separated list of email addresses\n (e.g., ``foo@exmaple.com`` or ``foo@exmaple.com,bar@example.com``)\n to send email to. If not set, will attempt to lookup from\n environment variable.\n - ``OX_MON_EMAIL_FROM``: Sending email address. If not set, will\n attempt to lookup from environment variable.\n - ``OX_MON_GMAIL_PASSWD``: A password to use if you want to use\n gmail as the SMTP relay to send mail from. This password should\n correspond to the username in ``OX_MON_EMAIL_FROM``.\n - ``OX_MON_SES_PROFILE``: If provided and email notifier is\n requested, will use this to send email via AWS SES. If not set,\n will attempt lookup from environment.\n - **IMPORTANT**: Either ``OX_MON_SES_PROFILE`` or\n ``OX_MON_GMAIL_PASSWD`` is required to send emails.\n\n- ``loginfo``: Will use Python's ``logging.info`` to send notification.\n This can be useful if you do not want the notifications in stdout but\n in stderr.\n- ``sentry``: Will use the Sentry service from https://sentry.io.\n\n - ``SENTRY``: The sentry DSN for the project to notify. The default\n value for this will be taken from the ``SENTRY_DSN`` environment\n variable if it exists.\n", "description_content_type": null, "docs_url": null, "download_url": null, "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/emin63/ox_mon", "keywords": "updating packages", "license": "MIT", "maintainer": null, "maintainer_email": null, "name": "ox_mon", "package_url": "https://pypi.org/project/ox_mon/", "platform": null, "project_url": "https://pypi.org/project/ox_mon/", "project_urls": { "Homepage": "http://github.com/emin63/ox_mon" }, "release_url": "https://pypi.org/project/ox_mon/0.2.15/", "requires_dist": null, "requires_python": null, "summary": "Monitor status, security, and robustness of your machines.", "version": "0.2.15", "yanked": false, "yanked_reason": null }, "last_serial": 13143452, "releases": { "0.2.0": [ { "comment_text": "", "digests": { "md5": "2ab35f0f20a06d12a56f64b63c680efe", "sha256": "0a8964abf664f36894205f4d9700ccc539c1df4c9a57742bf262c80a1ba3d7b0" }, "downloads": -1, "filename": "ox_mon-0.2.0.tar.gz", "has_sig": false, "md5_digest": "2ab35f0f20a06d12a56f64b63c680efe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8610, "upload_time": "2019-10-09T03:02:57", "upload_time_iso_8601": "2019-10-09T03:02:57.173449Z", "url": "https://files.pythonhosted.org/packages/3a/21/f7163c139ea2f3557a83c8f0bff9a38fc8a40f3c48cab18294491d547caa/ox_mon-0.2.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "5a250bdab9091df04027a310dcbe7675", "sha256": "c25954ace3f3d37cf59aeece823978bb7c7cd254e08c0ebebc20387b8b152215" }, "downloads": -1, "filename": "ox_mon-0.2.1.tar.gz", "has_sig": false, "md5_digest": "5a250bdab9091df04027a310dcbe7675", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8614, "upload_time": "2019-10-09T03:05:33", "upload_time_iso_8601": "2019-10-09T03:05:33.348635Z", "url": "https://files.pythonhosted.org/packages/64/ce/3a3095518996c8d6bbc480b9261d767f44d56a95954773e773949237ee16/ox_mon-0.2.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.10": [ { "comment_text": "", "digests": { "md5": "73372709f4ecae37578c0ed157280d42", "sha256": "030b95847f18108d8103561dac892b06c504aecd4bc529d5c5824603808e89f1" }, "downloads": -1, "filename": "ox_mon-0.2.10.tar.gz", "has_sig": false, "md5_digest": "73372709f4ecae37578c0ed157280d42", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18705, "upload_time": "2020-01-11T04:47:15", "upload_time_iso_8601": "2020-01-11T04:47:15.212346Z", "url": "https://files.pythonhosted.org/packages/95/12/79318c4b0025c9db970236207dc1754ad9033882c2322b7f1201ccfa29ab/ox_mon-0.2.10.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.11": [ { "comment_text": "", "digests": { "md5": "5ebecb3d79f6ae5113a6e7fb31dc6dfe", "sha256": "710c11f452824a9e0e5929b2fda0fe0de0c8bb99800f3defebdebe74fdba0a91" }, "downloads": -1, "filename": "ox_mon-0.2.11.tar.gz", "has_sig": false, "md5_digest": "5ebecb3d79f6ae5113a6e7fb31dc6dfe", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18729, "upload_time": "2020-01-11T05:25:43", "upload_time_iso_8601": "2020-01-11T05:25:43.333340Z", "url": "https://files.pythonhosted.org/packages/c8/b1/dc9f9ecac180dee4de3d46f28b9a64f7f9ded4017080c0516ffd1e1d8a0d/ox_mon-0.2.11.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.12": [ { "comment_text": "", "digests": { "md5": "bf10bf6a0fd8af2c5465a60b10abc7b2", "sha256": "1f441630ce88742cad386e2239f2b4155d3735014cd89b72d6ea481b35214b74" }, "downloads": -1, "filename": "ox_mon-0.2.12.tar.gz", "has_sig": false, "md5_digest": "bf10bf6a0fd8af2c5465a60b10abc7b2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 19139, "upload_time": "2020-01-11T19:45:12", "upload_time_iso_8601": "2020-01-11T19:45:12.582202Z", "url": "https://files.pythonhosted.org/packages/b2/dd/5ccc8484001eff04ea797e00911e099b180485c7e8d3850549e336cd10c9/ox_mon-0.2.12.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.15": [ { "comment_text": "", "digests": { "md5": "fdf9efd311c286a94295617e9dbbbf72", "sha256": "493b2ef08838e16785cba7ffecc3f9ffa415aeeae42894b1216ad474a271392c" }, "downloads": -1, "filename": "ox_mon-0.2.15.tar.gz", "has_sig": false, "md5_digest": "fdf9efd311c286a94295617e9dbbbf72", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21207, "upload_time": "2022-03-10T22:54:50", "upload_time_iso_8601": "2022-03-10T22:54:50.439165Z", "url": "https://files.pythonhosted.org/packages/ab/af/2dd2a612a8f2e158e6ebb7b65f85232382d07c4eeebd8b1cc73eb9518c54/ox_mon-0.2.15.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "d5e64b2122975988e66ee90c4bb4622c", "sha256": "376b4d3b5ebcd2e4b085d65de70e9d9be473ea533cec74cb1e60134fa1d71a6a" }, "downloads": -1, "filename": "ox_mon-0.2.2.tar.gz", "has_sig": false, "md5_digest": "d5e64b2122975988e66ee90c4bb4622c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12769, "upload_time": "2019-10-09T18:09:43", "upload_time_iso_8601": "2019-10-09T18:09:43.877936Z", "url": "https://files.pythonhosted.org/packages/42/b9/75d31b352499b685e32c4547438072270a3f6f4a8451892c10baa7ba7ff1/ox_mon-0.2.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "67ca604e3fb3fda0431cb782e4d1335e", "sha256": "199685da25fba81b5d2f90a4e0c8024ad00237fd0ff83bd9dc82de47a6bf5ac9" }, "downloads": -1, "filename": "ox_mon-0.2.3.tar.gz", "has_sig": false, "md5_digest": "67ca604e3fb3fda0431cb782e4d1335e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13218, "upload_time": "2019-10-10T20:29:09", "upload_time_iso_8601": "2019-10-10T20:29:09.205820Z", "url": "https://files.pythonhosted.org/packages/00/30/765c236a9a14c46f9ea2dded6594bd293723db4b215bbcf59877e4459f28/ox_mon-0.2.3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "21f851abb5d819a1e56370765e58c3f0", "sha256": "711bd66d4c699e3f8d210c4c5d30ce73e7a25952b46b2443fdb969eeae15256d" }, "downloads": -1, "filename": "ox_mon-0.2.4.tar.gz", "has_sig": false, "md5_digest": "21f851abb5d819a1e56370765e58c3f0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13222, "upload_time": "2019-10-10T20:56:26", "upload_time_iso_8601": "2019-10-10T20:56:26.836253Z", "url": "https://files.pythonhosted.org/packages/c3/ab/a1ca229e029339794c22be1b5fc50daa07b8b0f8c852d6927521b06422de/ox_mon-0.2.4.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "ec35a01664c5ea6dd36194bf15424a8d", "sha256": "cebaf57426a1ecf772a1b2038c1702bb66e069e54e851bcbc7978e275096ceb1" }, "downloads": -1, "filename": "ox_mon-0.2.5.tar.gz", "has_sig": false, "md5_digest": "ec35a01664c5ea6dd36194bf15424a8d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13324, "upload_time": "2019-10-11T19:10:43", "upload_time_iso_8601": "2019-10-11T19:10:43.708635Z", "url": "https://files.pythonhosted.org/packages/40/25/7c358f91aff76fc9295228ed5673f9e58fd4607fbbf5820c61b98f2a8af2/ox_mon-0.2.5.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "a3c150d936eeef50ea77da19d89b8b83", "sha256": "e15cddb6d44874e71c21ea6cfae822a164dc34c39fa6c57dfe846227b9f5c05a" }, "downloads": -1, "filename": "ox_mon-0.2.6.tar.gz", "has_sig": false, "md5_digest": "a3c150d936eeef50ea77da19d89b8b83", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15113, "upload_time": "2019-10-29T19:36:30", "upload_time_iso_8601": "2019-10-29T19:36:30.341500Z", "url": "https://files.pythonhosted.org/packages/67/a1/54c6b5c704cabd9b32430683d40c54d2ae00e25b423697154ceb4a3a20be/ox_mon-0.2.6.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.7": [ { "comment_text": "", "digests": { "md5": "41a97de57105dca21fcddc408e1cf679", "sha256": "07382cce89115e7f3b7bba300ad601e8f5b41e20c0d6216abecd432eb9415ab2" }, "downloads": -1, "filename": "ox_mon-0.2.7.tar.gz", "has_sig": false, "md5_digest": "41a97de57105dca21fcddc408e1cf679", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15112, "upload_time": "2019-10-29T19:51:16", "upload_time_iso_8601": "2019-10-29T19:51:16.841964Z", "url": "https://files.pythonhosted.org/packages/81/ff/f138d60eeece8b321c9218c43fe083db5c881c9bfee92aeb6aabcfd437be/ox_mon-0.2.7.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.8": [ { "comment_text": "", "digests": { "md5": "182c3e8fcd595f42b3255ad7e50498b6", "sha256": "136d44d3288ac66d95a57553c1f0893db9a6e5253e7b5d1794b8eb0a3f4c20ce" }, "downloads": -1, "filename": "ox_mon-0.2.8.tar.gz", "has_sig": false, "md5_digest": "182c3e8fcd595f42b3255ad7e50498b6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15715, "upload_time": "2019-10-30T20:02:37", "upload_time_iso_8601": "2019-10-30T20:02:37.377626Z", "url": "https://files.pythonhosted.org/packages/a1/dd/19008385b22233e03e91339d20ad40ef09f968620a3857f898a903799abc/ox_mon-0.2.8.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.9": [ { "comment_text": "", "digests": { "md5": "ff75332f83319a27c42a5963ed0cf92b", "sha256": "2b79827a0284c816242cdd4de4b48425051089ce23c7344ecd1f21197eb58d8f" }, "downloads": -1, "filename": "ox_mon-0.2.9.tar.gz", "has_sig": false, "md5_digest": "ff75332f83319a27c42a5963ed0cf92b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 16161, "upload_time": "2019-10-31T17:52:18", "upload_time_iso_8601": "2019-10-31T17:52:18.101596Z", "url": "https://files.pythonhosted.org/packages/b4/6b/bd0b6f5fe512de93a046b1ac57a2a1e0ed66e02799527eeb4d9358b1cd3d/ox_mon-0.2.9.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "fdf9efd311c286a94295617e9dbbbf72", "sha256": "493b2ef08838e16785cba7ffecc3f9ffa415aeeae42894b1216ad474a271392c" }, "downloads": -1, "filename": "ox_mon-0.2.15.tar.gz", "has_sig": false, "md5_digest": "fdf9efd311c286a94295617e9dbbbf72", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 21207, "upload_time": "2022-03-10T22:54:50", "upload_time_iso_8601": "2022-03-10T22:54:50.439165Z", "url": "https://files.pythonhosted.org/packages/ab/af/2dd2a612a8f2e158e6ebb7b65f85232382d07c4eeebd8b1cc73eb9518c54/ox_mon-0.2.15.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }