Metadata-Version: 2.1
Name: pysensu-ng
Version: 0.13.0
Summary: This is a client to interact with the Sensu API
Home-page: https://github.com/sangoma/pysensu
Author: Angel Velasquez
Author-email: avelasquez@sangoma.com
License: MIT
Keywords: pysensu
Platform: UNKNOWN
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: Implementation :: PyPy
Requires-Dist: requests

=============================
Sensu client for python
=============================

.. image:: https://badge.fury.io/py/pysensu-ng.svg
    :target: https://badge.fury.io/py/pysensu-ng

.. image:: https://travis-ci.org/sangoma/pysensu.png?branch=master
    :target: https://travis-ci.org/sangoma/pysensu

.. image:: https://pypip.in/d/pysensu-ng/badge.png
    :target: https://pypi.python.org/sangoma/pysensu-ng


This is a client to interact with the Sensu API


Features
--------

- Includes methods for some entrypoints (clients, events, checks, stashes) of the Sensu API (0.24)
  **IMPORTANT**: from 0.6.0 release we are supporting Sensu API 0.24+ .. backward
  compatibility with previous versions of Sensu API might be broken.
- Includes methods for handle subscriptions info (nodes subscribed to a
  specific channel)


Trivial Example
---------------

::

    from pysensu.api import SensuAPI

    url = 'http://localhost:4567'
    my_sensu = SensuAPI(url, username=username, password=password)
    print(my_sensu.get_info())

DEBUG
---------------
To enable debug import logging module and set the debug level

::

    import logging
    logging.getLogger('pysensu.api').setLevel(logging.DEBUG)

Exceptions
---------------
You can handle an exception using a code like this.
Note: Sensu API give you a 404 code if a client does not exists.

::

    import pysensu.api

    url = 'http://localhost:4567'
    my_sensu = pysensu.api.SensuAPI(url)
    client = "testclient"

    try:
        print(my_sensu.get_client_data(client))
    except pysensu.api.SensuAPIException as e:
        if "404" in str(e):
            print("{} does not exists on sensu api".format(client))
        else:
            raise e



Documentation
-------------

The full documentation is at http://pysensu.rtfd.org.



History
-------

0.13.0 (2019-07-23)
~~~~~~~~~~~~~~~~~~~

0.10.0 (2017-05-17)
~~~~~~~~~~~~~~~~~~~

* Add support for results API

0.9.0 (2017-03-13)
~~~~~~~~~~~~~~~~~~

* Add support for silenced API

0.8.0 (2016-11-28)
~~~~~~~~~~~~~~~~~~

* Added operations for Aggregates and Status (Health/Info)
* Added support for optional limit/offset parameters to get_clients
* Modified post_check_request to work properly with subscribers.

0.7.0 (2016-08-17)
~~~~~~~~~~~~~~~~~~

* Fix adding stashes

0.6.0 (2016-08-02)
~~~~~~~~~~~~~~~~~~

* Fix calls to Sensu API entrypoints in order to make them compatible
  with lastest version of Sensu API (0.24) previous versions of Sensu API
  might not behave as expected.

0.1.0 (2015-12-15)
~~~~~~~~~~~~~~~~~~

* First release on PyPI.


