The nagiosplugin library
========================
About
-----
**nagiosplugin** is a Python class library which helps writing Nagios (or Icinga)
compatible plugins easily in Python. It cares for much of the boilerplate code
and default logic commonly found in Nagios checks, including:
- Nagios 3 Plugin API compliant parameters and output formatting
- Full Nagios range syntax support
- Automatic threshold checking
- Multiple independend measures
- Custom status line to communicate the main point quickly
- Long output and performance data
- Timeout handling
- Persistent "cookies" to retain state information between check runs
- Resume log file processing at the point where the last run left
- No dependencies beyond the Python standard library (except for Python 2.6).
**nagiosplugin** runs on POSIX and Windows systems. It is compatible with
Python 2.7, and Python 3.4 through 3.7.
Feedback and Suggestions
------------------------
nagiosplugin is currently maintained by Matt Pounsett <matt@conundrum.com>. A
public issue tracker can be found at
<https://github.com/mpounsett/nagiosplugin/issues> for bugs, suggestions, and
patches.
License
-------
The nagiosplugin package is released under the Zope Public License 2.1 (ZPL), a
BSD-style Open Source license.
Documentation
-------------
Comprehensive documentation is `available online`_. The examples mentioned in
the `tutorials`_ can also be found in the `nagiosplugin/examples` directory of
the source distribution.
.. _available online: https://nagiosplugin.readthedocs.io/
.. _tutorials: https://nagiosplugin.readthedocs.io/en/stable/tutorial/
Acknowledgements
----------------
nagiosplugin was originally written and maintained by Christian Kauhaus
<kc@flyingcircus.io>. Additional contributions from the community are
acknowledged in the file CONTRIBUTORS.txt
.. vim: set ft=rst:
Contributing to Nagiosplugin
============================
Getting the source
------------------
The source can be obtained via git from
https://github.com/mpounsett/nagiosplugin.git::
git clone https://github.com/mpounsett/nagiosplugin.git
This package supports installation in a virtualenv::
python3 -m venv .
pip install -e .
Making Changes
--------------
This project uses the `Git-flow workflow`_, approximately as laid out by
Vincent Driessen in 2010. New development should be done in feature branches,
which are branched off of the `develop` branch. PRs should be sent to
`upstream:develop`.
.. _Git-flow workflow: https://nvie.com/posts/a-successful-git-branching-model/
Consider whether your change updates or fixes any existing issues. Include
the appropriate "fixes" or "updates" entry in your PR description so that the
issue is updated. If your change does not reference an existing issue,
consider creating an issue to link it to.
The project uses PEP8 as its style guide. All changes should be checked
against PEP8 before committing, and commits **MUST** conform to PEP8 before
sending a PR. PEP8 tests can be run with the `tox -e flake8` command (see
**Tests** below for details on setting up the tox environment). PRs that
fail PEP8 compliance will be refused.
Note that, at present, much of the old codebase gets warnings related to
the `pylint` and `pydocstyle` tests. Your changes must not introduce any
**new** warnings from these tests.
If your change is a new feature, or otherwise alters the behaviour of
`nagiosplugin`, update the relevant section of the documentation and include
that in your PR.
Tests
-----
**nagiosplugin** tests are run by `tox`_, which is configured to expect all of
the supported `python` versions to be present. The easiest way to accomplish
this is by installing and using `pyenv`_.
.. _tox: https://tox.readthedocs.io/en/latest/
.. _pyenv: https://github.com/pyenv/pyenv
Once you have `pyenv` set up, make sure you have each of the supported
versions of python specified by the `envlist` in `tox.ini`. This will likely
look something like::
pyenv install 2.7.18
pyenv install 3.4.10
pyenv install 3.5.10
pyenv install 3.6.15
pyenv install 3.7.12
pyenv install 3.8.12
pyenv install 3.9.9
pyenv install 3.10.1
pyenv global 3.10.1 3.9.9 3.8.12 3.7.12 3.6.15 3.5.10 3.4.10 2.7.18 system
Install test dependencies::
pip install -r requirements_test.txt
After doing so, run the unit tests::
tox
To limit tests to a particular python environment::
tox -e py37
Run only PEP8 linting tests::
tox -e flake8
**nagiosplugin** also includes support for test coverage reports. Coverage
reports are updated automatically by `tox`. Open `htmlcov/index.html` to see
coverage reports.
You may run the supplied examples with the local interpreter::
python3 nagiosplugin/examples/check_load.py
Documentation
-------------
The documentation depends on Sphinx. Install the necessary dependencies, and
then build the documentation::
pip install -r requirements_docs.txt
make docs
HTML documentation will be built and installed in `doc/_build/html/`. You can
read the documentation by opening `doc/_build/html/index.html`.
Releasing
---------
This information will be unnecessary for most contributors. It is only
relevant to those actually making releases.
Versioning
~~~~~~~~~~
**nagiosplugin** obeys the semantic version numbering specification
published on SemVer_, adapted slightly to be `PEP 440`_ compliant.
.. _SemVer: http://semver.org/
.. _PEP 440: https://www.python.org/dev/peps/pep-0440/
How to release
~~~~~~~~~~~~~~
Instructions below are for a hypothetical 0.1.2 release. Make sure you use
the correct version numbers for your release, and don't copy and paste the
below examples.
Begin by making sure you have the build prerequisites installed::
pip install -r requirements_build.txt
Create a release branch from `develop`::
git checkout develop
git checkout -b release/0.1.2
Check that all tests pass. Apply hotfixes as necessary to pass all tests
before continuing.
Update the version number in `nagiosplugin/version.py`, and update the version
release date in the `HISTORY.txt` file::
sed -i '' -e 's/\(__VERSION__ =\).*/\1 "0.1.2"/' nagiosplugin/version.py
sed -i '' -e 's/0.1.2 (unreleased)/0.1.2 (2019-11-07)/' HISTORY.txt
You may need to update the `HISTORY.txt` file with additional changes. You
can get a list of commits since the last release by generating a reverse log,
which you can edit down to just a list of relevant changes::
git log --reverse --no-merges 0.1.1... > new-changes.txt
Commit the updated history and version files, making sure both of the file
changes are in the same commit. For a new version `0.1.2`::
git stage HISTORY.txt nagiosplugin/version.py
git commit -m "Preparing release 0.1.2"
Merge the release into the `main` branch and tag the release::
git checkout main
git merge release/0.1.2
git tag 0.1.2
git push
git push --tags
Build the **nagiosplugin** distribution for PyPi::
python3 setup.py sdist bdist_wheel
Check the contents of the packages in `dist/` to ensure they contain all of
the expected files.
Test your package prior to uploading::
twine check dist/dist/nagiosplugin-0.1.2.tar.gz
Do a test upload with TestPyPi::
twine upload --repository-url https://test.pypi.org/legacy/ dist/*
Check on https://test.pypi.org/nagiosplugin that the package metadata looks
correct. If everything is fine, upload the release::
twine upload dist/*
Merge the release back into `develop` and then delete the release branch::
git checkout develop
git merge release/0.1.2
git push
git branch -d release/0.1.2
Go to https://readthedocs.io/ and ensure the new stable and dev releases are
available.
.. vim: set ft=rst sw=3 sts=3 et:
Contributors
============
`nagiosplugin` has become what it is now with the help of many contributors from
the community. We want to thank everyone who has invested time and energy to
make `nagiosplugin` better:
* Christian Kauhaus <kc@flyingcircus.io>, the original author and maintainer.
* Wolfgang Schnerring <wosc@wosc.de> for thoughts on the design.
* Thomas Lotze <thomas@thomas-lotze.de> for improving the test infrastructure.
* Christian Theune <ct@flyingcircus.io> for comments and general feedback.
* Michael Howitz <mh@gocept.com> and Andrei Chirila <andreich@gmail.com> for the
Python 3 port.
* Birger Schmidt <birger.schmidt@netways.de> for bug reports.
* Florian Lagg <LaggAt@lagg-asus1.lan> for Windows compatibility fixes
* Jeff Goldschrafe <jeff@holyhandgrenade.org> for the Python 2.6 backport.
* José Manuel Fardello <jmfardello@gmail.com> for a logging fix.
* Jordan Metzmeier <jmetzmeier01@gmail.com> for build fixes and Debian
packaging.
* Andrey Panfilov <andrew@panfilov.tel> for a perfdata fix.
* Mihai Limbășan <mihai@limbasan.ro> for various output formatting fixes.
.. vim: set ft=rst sw=3 sts=3 et:
Release History
===============
1.3.3 (2022-02-07)
------------------
- new: adding support for newer python releases (3.8, 3.9, 3.10)
- fix: various typos in docstrings (#39, )
- fix: change use of deprecated upload-dir to upload_dir in setup.cfg (#34)
- fix: Runtime class now sets None for stdout by default (#24)
- fix: corrected argument order in several calls to super() (#18)
- cleanup: many bits of code tidying to eliminate linter warnings
1.3.2 (2019-11-09)
------------------
- Include `doc` and `tests` directories in source distribution to support
Gentoo package building tests (#22)
- Update official python support to 2.7, 3.4+ in README
1.3.1 (2019-11-08)
------------------
- Fixed a packaging bug
1.3.0 (2019-11-08)
------------------
- New maintainer/contributor information and project home
- Updated tests and package metadata for recent Python 3 versions
- Newer tooling for tests/documentation
1.2.4 (2016-03-12)
------------------
- Add optional keyword parameter `verbose` to Runtime.guarded(). This parameter
allows to set verbose level in the early execution phase (#13).
- Allow Context.evaluate() return either a Result or ServiceState object. In
case the latter is returned, it gets automatically wrapped in a Result object
(#6).
1.2.3 (2015-10-30)
------------------
- Fix bug that caused a UnicodeDecodeError when using non-ASCII characters in
fmt_metric (#12).
- Print perfdata always on a single line (even in multi-line mode) to improve
compatibility with various monitoring systems (#11).
1.2.2 (2014-05-27)
------------------
- Mention that nagiosplugin also runs with Python 3.4 (no code changes
necessary).
- Make name prefix in status output optional by allowing to assign None to
Check.name.
- Accept bare metric as return value from Resource.probe().
- Fix bug where Context.describe() was not used to obtain metric description
(#13162).
1.2.1 (2014-03-19)
------------------
- Fix build failures with LANG=C (#13140).
- Remove length limitation of perfdata labels (#13214).
- Fix formatting of large integers as Metric values (#13287).
- Range: allow simple numerals as argument to Range() (#12658).
- Cookie: allow for empty state file specification (#12788).
1.2 (2013-11-08)
----------------
- New `Summary.empty` method is called if there are no results present (#11593).
- Improve range violation wording (#11597).
- Ensure that nagiosplugin install correctly with current setuptools (#12660).
- Behave and do not attach anything to the root logger.
- Add debugging topic guide. Explain how to disable the timeout when using pdb
(#11592).
1.1 (2013-06-19)
----------------
- Identical to 1.1b1.
1.1b1 (2013-05-28)
------------------
- Made compatible with Python 2.6 (#12297).
- Tutorial #3: check_users (#11539).
- Minor documentation improvements.
1.0.0 (2013-02-05)
------------------
- LogTail returns lines as byte strings in Python 3 to avoid codec issues
(#11564).
- LogTail gives a line-based iterator instead of a file object (#11564).
- Basic API docs for the most important classes (#11612).
- Made compatible with Python 2.7 (#11533).
- Made compatible with Python 3.3.
1.0.0b1 (2012-10-29)
--------------------
- Improve error reporting for missing contexts.
- Exit with code 3 if no metrics have been generated.
- Improve default Summary.verbose() to list all threshold violations.
- Move main source repository to https://bitbucket.org/gocept/nagiosplugin/
(#11561).
1.0.0a2 (2012-10-26)
--------------------
- API docs for the most important classes (#7939).
- Added two tutorials (#9425).
- Fix packaging issues.
1.0.0a1 (2012-10-25)
--------------------
- Completely reworked API. The new API is not compatible with the old 0.4 API so
you must update your plugins.
- Python 3 support.
- The `Cookie` class is now basically a persistent dict and accepts key/value
pairs. Cookie are stored as JSON files by default so they can be inspected by
the system administrator (#9400).
- New `LogTail` class which provides convenient access to constantly growing log
files which are eventually rotated.
0.4.5 (2012-06-18)
------------------
- Windows port. `nagiosplugin` code now runs under pywin32 (#10899).
- Include examples in egg release (#9901).
0.4.4 (2011-07-18)
------------------
Bugfix release to fix issues reported by users.
- Improve Mac OS X compatibility (#8755).
- Include examples in distribution (#8555).
0.4.3 (2010-12-17)
------------------
- Change __str__ representation of large numbers to avoid scientific notation.
0.4.2 (2010-10-11)
------------------
- Packaging issues.
0.4.1 (2010-09-21)
------------------
- Fix distribution to install correctly.
- Documentation: tutorial and topic guides.
0.4 (2010-08-17)
----------------
- Initial public release.
.. vim: set ft=rst sw=3 sts=3 spell spelllang=en:
Raw data
{
"_id": null,
"home_page": "https://nagiosplugin.readthedocs.io/",
"name": "nagiosplugin",
"maintainer": "",
"docs_url": "https://pythonhosted.org/nagiosplugin/",
"requires_python": "",
"maintainer_email": "",
"keywords": "Nagios Icinga plugin check monitoring",
"author": "Matthew Pounsett",
"author_email": "matt@conundrum.com",
"download_url": "https://files.pythonhosted.org/packages/63/fd/28a46894ff4451f6885b826d20885a53810f81ff4fa79f4f3c1e0e0d33ec/nagiosplugin-1.3.3.tar.gz",
"platform": "",
"description": "The nagiosplugin library\n========================\n\nAbout\n-----\n\n**nagiosplugin** is a Python class library which helps writing Nagios (or Icinga)\ncompatible plugins easily in Python. It cares for much of the boilerplate code\nand default logic commonly found in Nagios checks, including:\n\n- Nagios 3 Plugin API compliant parameters and output formatting\n- Full Nagios range syntax support\n- Automatic threshold checking\n- Multiple independend measures\n- Custom status line to communicate the main point quickly\n- Long output and performance data\n- Timeout handling\n- Persistent \"cookies\" to retain state information between check runs\n- Resume log file processing at the point where the last run left\n- No dependencies beyond the Python standard library (except for Python 2.6).\n\n**nagiosplugin** runs on POSIX and Windows systems. It is compatible with\nPython 2.7, and Python 3.4 through 3.7.\n\nFeedback and Suggestions\n------------------------\n\nnagiosplugin is currently maintained by Matt Pounsett <matt@conundrum.com>. A\npublic issue tracker can be found at\n<https://github.com/mpounsett/nagiosplugin/issues> for bugs, suggestions, and\npatches.\n\nLicense\n-------\n\nThe nagiosplugin package is released under the Zope Public License 2.1 (ZPL), a\nBSD-style Open Source license.\n\n\nDocumentation\n-------------\n\nComprehensive documentation is `available online`_. The examples mentioned in\nthe `tutorials`_ can also be found in the `nagiosplugin/examples` directory of\nthe source distribution.\n\n.. _available online: https://nagiosplugin.readthedocs.io/\n.. _tutorials: https://nagiosplugin.readthedocs.io/en/stable/tutorial/\n\nAcknowledgements\n----------------\n\nnagiosplugin was originally written and maintained by Christian Kauhaus\n<kc@flyingcircus.io>. Additional contributions from the community are\nacknowledged in the file CONTRIBUTORS.txt\n\n.. vim: set ft=rst:\n\n\nContributing to Nagiosplugin\n============================\n\nGetting the source\n------------------\n\nThe source can be obtained via git from\nhttps://github.com/mpounsett/nagiosplugin.git::\n\n git clone https://github.com/mpounsett/nagiosplugin.git\n\nThis package supports installation in a virtualenv::\n\n python3 -m venv .\n pip install -e .\n\n\nMaking Changes\n--------------\n\nThis project uses the `Git-flow workflow`_, approximately as laid out by\nVincent Driessen in 2010. New development should be done in feature branches,\nwhich are branched off of the `develop` branch. PRs should be sent to\n`upstream:develop`.\n\n.. _Git-flow workflow: https://nvie.com/posts/a-successful-git-branching-model/\n\nConsider whether your change updates or fixes any existing issues. Include\nthe appropriate \"fixes\" or \"updates\" entry in your PR description so that the\nissue is updated. If your change does not reference an existing issue,\nconsider creating an issue to link it to.\n\nThe project uses PEP8 as its style guide. All changes should be checked\nagainst PEP8 before committing, and commits **MUST** conform to PEP8 before\nsending a PR. PEP8 tests can be run with the `tox -e flake8` command (see\n**Tests** below for details on setting up the tox environment). PRs that\nfail PEP8 compliance will be refused.\n\nNote that, at present, much of the old codebase gets warnings related to\nthe `pylint` and `pydocstyle` tests. Your changes must not introduce any\n**new** warnings from these tests.\n\nIf your change is a new feature, or otherwise alters the behaviour of\n`nagiosplugin`, update the relevant section of the documentation and include\nthat in your PR.\n\nTests\n-----\n\n**nagiosplugin** tests are run by `tox`_, which is configured to expect all of\nthe supported `python` versions to be present. The easiest way to accomplish\nthis is by installing and using `pyenv`_. \n\n.. _tox: https://tox.readthedocs.io/en/latest/\n.. _pyenv: https://github.com/pyenv/pyenv\n\nOnce you have `pyenv` set up, make sure you have each of the supported\nversions of python specified by the `envlist` in `tox.ini`. This will likely\nlook something like::\n\n pyenv install 2.7.18\n pyenv install 3.4.10\n pyenv install 3.5.10\n pyenv install 3.6.15\n pyenv install 3.7.12\n pyenv install 3.8.12\n pyenv install 3.9.9\n pyenv install 3.10.1\n pyenv global 3.10.1 3.9.9 3.8.12 3.7.12 3.6.15 3.5.10 3.4.10 2.7.18 system\n\nInstall test dependencies::\n\n pip install -r requirements_test.txt\n\nAfter doing so, run the unit tests::\n\n tox\n\nTo limit tests to a particular python environment::\n\n tox -e py37\n\nRun only PEP8 linting tests::\n\n tox -e flake8\n\n**nagiosplugin** also includes support for test coverage reports. Coverage\nreports are updated automatically by `tox`. Open `htmlcov/index.html` to see\ncoverage reports.\n\nYou may run the supplied examples with the local interpreter::\n\n python3 nagiosplugin/examples/check_load.py\n\n\nDocumentation\n-------------\n\nThe documentation depends on Sphinx. Install the necessary dependencies, and\nthen build the documentation::\n\n pip install -r requirements_docs.txt\n make docs\n\nHTML documentation will be built and installed in `doc/_build/html/`. You can\nread the documentation by opening `doc/_build/html/index.html`.\n\nReleasing\n---------\n\nThis information will be unnecessary for most contributors. It is only\nrelevant to those actually making releases.\n\nVersioning\n~~~~~~~~~~\n\n**nagiosplugin** obeys the semantic version numbering specification\npublished on SemVer_, adapted slightly to be `PEP 440`_ compliant.\n\n.. _SemVer: http://semver.org/\n.. _PEP 440: https://www.python.org/dev/peps/pep-0440/\n\n\nHow to release\n~~~~~~~~~~~~~~\n\nInstructions below are for a hypothetical 0.1.2 release. Make sure you use\nthe correct version numbers for your release, and don't copy and paste the\nbelow examples.\n\nBegin by making sure you have the build prerequisites installed::\n\n pip install -r requirements_build.txt\n\nCreate a release branch from `develop`::\n\n git checkout develop\n git checkout -b release/0.1.2\n\nCheck that all tests pass. Apply hotfixes as necessary to pass all tests\nbefore continuing.\n\nUpdate the version number in `nagiosplugin/version.py`, and update the version\nrelease date in the `HISTORY.txt` file::\n\n sed -i '' -e 's/\\(__VERSION__ =\\).*/\\1 \"0.1.2\"/' nagiosplugin/version.py\n sed -i '' -e 's/0.1.2 (unreleased)/0.1.2 (2019-11-07)/' HISTORY.txt\n\nYou may need to update the `HISTORY.txt` file with additional changes. You\ncan get a list of commits since the last release by generating a reverse log,\nwhich you can edit down to just a list of relevant changes::\n\n git log --reverse --no-merges 0.1.1... > new-changes.txt\n\nCommit the updated history and version files, making sure both of the file\nchanges are in the same commit. For a new version `0.1.2`::\n\n git stage HISTORY.txt nagiosplugin/version.py\n git commit -m \"Preparing release 0.1.2\"\n\nMerge the release into the `main` branch and tag the release::\n\n git checkout main\n git merge release/0.1.2\n git tag 0.1.2\n git push\n git push --tags\n\nBuild the **nagiosplugin** distribution for PyPi::\n\n python3 setup.py sdist bdist_wheel\n\nCheck the contents of the packages in `dist/` to ensure they contain all of\nthe expected files.\n\nTest your package prior to uploading::\n\n twine check dist/dist/nagiosplugin-0.1.2.tar.gz\n\nDo a test upload with TestPyPi::\n\n twine upload --repository-url https://test.pypi.org/legacy/ dist/*\n\nCheck on https://test.pypi.org/nagiosplugin that the package metadata looks\ncorrect. If everything is fine, upload the release::\n\n twine upload dist/*\n\nMerge the release back into `develop` and then delete the release branch::\n\n git checkout develop\n git merge release/0.1.2\n git push\n git branch -d release/0.1.2\n\nGo to https://readthedocs.io/ and ensure the new stable and dev releases are\navailable.\n\n\n.. vim: set ft=rst sw=3 sts=3 et:\n\n\nContributors\n============\n\n`nagiosplugin` has become what it is now with the help of many contributors from\nthe community. We want to thank everyone who has invested time and energy to\nmake `nagiosplugin` better:\n\n* Christian Kauhaus <kc@flyingcircus.io>, the original author and maintainer.\n* Wolfgang Schnerring <wosc@wosc.de> for thoughts on the design.\n* Thomas Lotze <thomas@thomas-lotze.de> for improving the test infrastructure.\n* Christian Theune <ct@flyingcircus.io> for comments and general feedback.\n* Michael Howitz <mh@gocept.com> and Andrei Chirila <andreich@gmail.com> for the\n Python 3 port.\n* Birger Schmidt <birger.schmidt@netways.de> for bug reports.\n* Florian Lagg <LaggAt@lagg-asus1.lan> for Windows compatibility fixes\n* Jeff Goldschrafe <jeff@holyhandgrenade.org> for the Python 2.6 backport.\n* Jos\u00e9 Manuel Fardello <jmfardello@gmail.com> for a logging fix.\n* Jordan Metzmeier <jmetzmeier01@gmail.com> for build fixes and Debian\n packaging.\n* Andrey Panfilov <andrew@panfilov.tel> for a perfdata fix.\n* Mihai Limb\u0103\u0219an <mihai@limbasan.ro> for various output formatting fixes.\n\n.. vim: set ft=rst sw=3 sts=3 et:\n\n\nRelease History\n===============\n\n\n1.3.3 (2022-02-07)\n------------------\n\n- new: adding support for newer python releases (3.8, 3.9, 3.10)\n- fix: various typos in docstrings (#39, )\n- fix: change use of deprecated upload-dir to upload_dir in setup.cfg (#34)\n- fix: Runtime class now sets None for stdout by default (#24)\n- fix: corrected argument order in several calls to super() (#18)\n- cleanup: many bits of code tidying to eliminate linter warnings\n\n\n1.3.2 (2019-11-09)\n------------------\n\n- Include `doc` and `tests` directories in source distribution to support\n Gentoo package building tests (#22)\n- Update official python support to 2.7, 3.4+ in README\n\n\n1.3.1 (2019-11-08)\n------------------\n\n- Fixed a packaging bug\n\n\n1.3.0 (2019-11-08)\n------------------\n\n- New maintainer/contributor information and project home\n\n- Updated tests and package metadata for recent Python 3 versions\n- Newer tooling for tests/documentation\n\n\n1.2.4 (2016-03-12)\n------------------\n\n- Add optional keyword parameter `verbose` to Runtime.guarded(). This parameter\n allows to set verbose level in the early execution phase (#13).\n- Allow Context.evaluate() return either a Result or ServiceState object. In\n case the latter is returned, it gets automatically wrapped in a Result object\n (#6).\n\n\n1.2.3 (2015-10-30)\n------------------\n\n- Fix bug that caused a UnicodeDecodeError when using non-ASCII characters in\n fmt_metric (#12).\n- Print perfdata always on a single line (even in multi-line mode) to improve\n compatibility with various monitoring systems (#11).\n\n\n1.2.2 (2014-05-27)\n------------------\n\n- Mention that nagiosplugin also runs with Python 3.4 (no code changes\n necessary).\n- Make name prefix in status output optional by allowing to assign None to\n Check.name.\n- Accept bare metric as return value from Resource.probe().\n- Fix bug where Context.describe() was not used to obtain metric description\n (#13162).\n\n\n1.2.1 (2014-03-19)\n------------------\n\n- Fix build failures with LANG=C (#13140).\n- Remove length limitation of perfdata labels (#13214).\n- Fix formatting of large integers as Metric values (#13287).\n- Range: allow simple numerals as argument to Range() (#12658).\n- Cookie: allow for empty state file specification (#12788).\n\n\n1.2 (2013-11-08)\n----------------\n\n- New `Summary.empty` method is called if there are no results present (#11593).\n- Improve range violation wording (#11597).\n- Ensure that nagiosplugin install correctly with current setuptools (#12660).\n- Behave and do not attach anything to the root logger.\n- Add debugging topic guide. Explain how to disable the timeout when using pdb\n (#11592).\n\n\n1.1 (2013-06-19)\n----------------\n\n- Identical to 1.1b1.\n\n\n1.1b1 (2013-05-28)\n------------------\n\n- Made compatible with Python 2.6 (#12297).\n- Tutorial #3: check_users (#11539).\n- Minor documentation improvements.\n\n\n1.0.0 (2013-02-05)\n------------------\n\n- LogTail returns lines as byte strings in Python 3 to avoid codec issues\n (#11564).\n- LogTail gives a line-based iterator instead of a file object (#11564).\n- Basic API docs for the most important classes (#11612).\n- Made compatible with Python 2.7 (#11533).\n- Made compatible with Python 3.3.\n\n\n1.0.0b1 (2012-10-29)\n--------------------\n\n- Improve error reporting for missing contexts.\n- Exit with code 3 if no metrics have been generated.\n- Improve default Summary.verbose() to list all threshold violations.\n- Move main source repository to https://bitbucket.org/gocept/nagiosplugin/\n (#11561).\n\n\n1.0.0a2 (2012-10-26)\n--------------------\n\n- API docs for the most important classes (#7939).\n- Added two tutorials (#9425).\n- Fix packaging issues.\n\n\n1.0.0a1 (2012-10-25)\n--------------------\n\n- Completely reworked API. The new API is not compatible with the old 0.4 API so\n you must update your plugins.\n- Python 3 support.\n- The `Cookie` class is now basically a persistent dict and accepts key/value\n pairs. Cookie are stored as JSON files by default so they can be inspected by\n the system administrator (#9400).\n- New `LogTail` class which provides convenient access to constantly growing log\n files which are eventually rotated.\n\n\n0.4.5 (2012-06-18)\n------------------\n\n- Windows port. `nagiosplugin` code now runs under pywin32 (#10899).\n- Include examples in egg release (#9901).\n\n\n0.4.4 (2011-07-18)\n------------------\n\nBugfix release to fix issues reported by users.\n\n- Improve Mac OS X compatibility (#8755).\n- Include examples in distribution (#8555).\n\n\n0.4.3 (2010-12-17)\n------------------\n\n- Change __str__ representation of large numbers to avoid scientific notation.\n\n\n0.4.2 (2010-10-11)\n------------------\n\n- Packaging issues.\n\n\n0.4.1 (2010-09-21)\n------------------\n\n- Fix distribution to install correctly.\n- Documentation: tutorial and topic guides.\n\n\n0.4 (2010-08-17)\n----------------\n\n- Initial public release.\n\n.. vim: set ft=rst sw=3 sts=3 spell spelllang=en:\n\n\n",
"bugtrack_url": null,
"license": "ZPL-2.1",
"summary": "Class library for writing Nagios (Icinga) plugins",
"version": "1.3.3",
"split_keywords": [
"nagios",
"icinga",
"plugin",
"check",
"monitoring"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "d0216145a5f86da5da6d612c182bc057e92908a603e09f8b84f2d846b8ce1278",
"md5": "d59aa8c3ffafeab33dd952e1bcc4834e",
"sha256": "e46b21c0d5e4ca80883a63c2732640df2ceb58743f6a021f9a59ba3ec7f8cd89"
},
"downloads": -1,
"filename": "nagiosplugin-1.3.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "d59aa8c3ffafeab33dd952e1bcc4834e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 37328,
"upload_time": "2022-02-07T19:39:04",
"upload_time_iso_8601": "2022-02-07T19:39:04.826094Z",
"url": "https://files.pythonhosted.org/packages/d0/21/6145a5f86da5da6d612c182bc057e92908a603e09f8b84f2d846b8ce1278/nagiosplugin-1.3.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "63fd28a46894ff4451f6885b826d20885a53810f81ff4fa79f4f3c1e0e0d33ec",
"md5": "7539bf58002fb1285706d91e94dd4e26",
"sha256": "bceafaec359f032393ddd560ae2cc8d163613833ec63c93ce7189f85904e53d6"
},
"downloads": -1,
"filename": "nagiosplugin-1.3.3.tar.gz",
"has_sig": false,
"md5_digest": "7539bf58002fb1285706d91e94dd4e26",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 3119586,
"upload_time": "2022-02-07T19:39:09",
"upload_time_iso_8601": "2022-02-07T19:39:09.263276Z",
"url": "https://files.pythonhosted.org/packages/63/fd/28a46894ff4451f6885b826d20885a53810f81ff4fa79f4f3c1e0e0d33ec/nagiosplugin-1.3.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2022-02-07 19:39:09",
"github": false,
"gitlab": false,
"bitbucket": false,
"lcname": "nagiosplugin"
}