Metadata-Version: 2.4
Name: python-observabilityclient
Version: 1.3.0
Summary: OpenStack Observability Client
Author-email: OpenStack <openstack-discuss@lists.openstack.org>
License: Apache-2.0
Classifier: Environment :: Console
Classifier: Environment :: OpenStack
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
Classifier: Intended Audience :: System Administrators
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Programming Language :: Python :: 3 :: Only
Requires-Python: >=3.10
Description-Content-Type: text/markdown; charset=UTF-8
License-File: LICENSE
Requires-Dist: osc-lib>=1.0.1
Requires-Dist: keystoneauth1>=1.0.0
Requires-Dist: cliff>=1.14.0
Requires-Dist: PyYAML>5.1
Dynamic: license-file
Dynamic: requires-dist

==========================
python-observabilityclient
==========================

.. image:: https://governance.openstack.org/tc/badges/python-observabilityclient.svg

.. Change things from this point on

observabilityclient is an OpenStackClient (OSC) plugin implementation that
implements commands for management of Prometheus.

-----------
Development
-----------

Install your OpenStack environment and patch your ``openstack`` client
application using python.

.. code:: console
    git clone https://opendev.org/openstack/python-observabilityclient.git
    cd python-observabilityclient
    sudo pip install .

-----
Usage
-----

Use ``openstack metric query somequery`` to query for metrics in prometheus.

To use the python api do the following:

.. code:: python
    from observabilityclient import client

    c = client.Client(
        '1', keystone_client.get_session(conf),
        adapter_options={
            'interface': conf.service_credentials.interface,
            'region_name': conf.service_credentials.region_name})
    c.query.query("somequery")

----------------
List of commands
----------------

* ``openstack metric list`` - lists all metrics
* ``openstack metric show`` - shows current values of a metric
* ``openstack metric query`` - queries prometheus and outputs the result
* ``openstack metric delete`` - deletes some metrics
* ``openstack metric snapshot`` - takes a snapshot of the current data
* ``openstack metric clean-tombstones`` - cleans the tsdb tombstones

------------------------------------------------
List of functions provided by the python library
------------------------------------------------

* ``c.query.list`` - lists all metrics
* ``c.query.show`` - shows current values of a metric
* ``c.query.query`` - queries prometheus and outputs the result
* ``c.query.delete`` - deletes some metrics
* ``c.query.snapshot`` - takes a snapshot of the current data
* ``c.query.clean-tombstones`` - cleans the tsdb tombstones
