oslo.metrics/doc/source/user/usage.rst
Ching Kuo 0a5cb7ad28 Fix Heading Characters
Change-Id: I270734c7cbd017e5476fbc4eb94f1b81708ae200
2021-07-01 23:11:24 +08:00

94 lines
3.4 KiB
ReStructuredText

=====
Usage
=====
A simple example of oslo.metrics in use::
$ oslo-metrics
2020-06-11 15:59:53.459 5435 INFO oslo.metrics.__main__ [-] Start oslo.metrics
Testing with DevStack
---------------------
This section describes how to test out oslo.metrics and collect oslo.messaging metric data using Devstack.
Download DevStack
~~~~~~~~~~~~~~~~~
.. code-block:: console
$ git clone https://opendev.org/openstack/devstack
$ cd devstack
The ``devstack`` repo contains a script that installs OpenStack and
templates for configuration files.
Create a local.conf
~~~~~~~~~~~~~~~~~~~
Create a ``local.conf`` file with four passwords preset at the root of the
devstack git repo.
.. code-block:: ini
[[local|localrc]]
ADMIN_PASSWORD=secret
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
LIBS_FROM_GIT=oslo.messaging
[[post-config|$NOVA_CONF]]
[oslo_messaging_metrics]
metrics_enabled = True
This is the minimum required config to get started with Devstack including
oslo.metrics.
Start the install
~~~~~~~~~~~~~~~~~
.. code-block:: console
$ ./stack.sh
This will take a 15 - 20 minutes, largely depending on the speed of
your internet connection. Many git trees and packages will be
installed during this process.
Start the Metrics Server
~~~~~~~~~~~~~~~~~~~~~~~~
.. code-block:: console
$ oslo-metrics
This command will start oslo.metrics server and start collecting
oslo.messaging metrics sending from OpenStack services.
oslo.metrics exporter will serve on port 3000 by default.
Example Output
~~~~~~~~~~~~~~
An example of oslo.metrics collecting metrics from Nova:
.. code-block:: console
ubuntu@devstack:~/devstack$ oslo-metrics
2021-06-12 14:32:26.091 466289 INFO oslo.metrics.__main__ [-] Start oslo.metrics
2021-06-12 14:57:50.632 466289 DEBUG oslo.metrics.__main__ [-] wait for socket.recv serve /usr/local/lib/python3.8/dist-packages/oslo_metrics/__main__.py:73
2021-06-12 14:57:50.632 466289 DEBUG oslo.metrics.__main__ [-] got message serve /usr/local/lib/python3.8/dist-packages/oslo_metrics/__main__.py:76
2021-06-12 14:57:50.633 466289 INFO oslo.metrics.message_router [-] Get labels with rpc_client_processing_seconds: {'call_type': 'call', 'exchange': None, 'topic': 'conductor', 'namespace': 'baseapi', 'version': '1.0', 'server': None, 'fanout': None, 'method': 'ping', 'timeout': None, 'process': ''}
2021-06-12 14:57:50.633 466289 INFO oslo.metrics.message_router [-] Perform action observe for rpc_client_processing_seconds metrics
2021-06-12 14:57:50.633 466289 DEBUG oslo.metrics.__main__ [-] wait for socket.recv serve /usr/local/lib/python3.8/dist-packages/oslo_metrics/__main__.py:73
2021-06-12 14:57:50.633 466289 DEBUG oslo.metrics.__main__ [-] got message serve /usr/local/lib/python3.8/dist-packages/oslo_metrics/__main__.py:76
2021-06-12 14:57:50.633 466289 INFO oslo.metrics.message_router [-] Get labels with rpc_client_invocation_end_total: {'call_type': 'call', 'exchange': None, 'topic': 'conductor', 'namespace': 'baseapi', 'version': '1.0', 'server': None, 'fanout': None, 'method': 'ping', 'timeout': None, 'process': ''}
2021-06-12 14:57:50.633 466289 INFO oslo.metrics.message_router [-] Perform action inc for rpc_client_invocation_end_total metrics`
Gathering Metrics
~~~~~~~~~~~~~~~~~
To gather metrics from oslo.metrics, configure Prometheus to scrape from port
3000 where oslo.metrics is running.