2015-11-19 14:50:38 +08:00
|
|
|
[DEFAULT]
|
|
|
|
output_file = etc/ironic/ironic.conf.sample
|
|
|
|
wrap_width = 62
|
|
|
|
namespace = ironic
|
|
|
|
namespace = ironic_lib.disk_utils
|
|
|
|
namespace = ironic_lib.disk_partitioner
|
2019-04-02 14:46:02 +02:00
|
|
|
namespace = ironic_lib.exception
|
2021-02-23 16:15:24 +01:00
|
|
|
namespace = ironic_lib.json_rpc
|
2019-04-11 17:02:58 +02:00
|
|
|
namespace = ironic_lib.mdns
|
2016-04-05 21:10:49 +00:00
|
|
|
namespace = ironic_lib.metrics
|
|
|
|
namespace = ironic_lib.metrics_statsd
|
2015-11-19 14:50:38 +08:00
|
|
|
namespace = ironic_lib.utils
|
|
|
|
namespace = oslo.db
|
|
|
|
namespace = oslo.messaging
|
|
|
|
namespace = oslo.middleware.cors
|
2018-02-09 11:30:24 -08:00
|
|
|
namespace = oslo.middleware.healthcheck
|
2019-07-25 23:14:41 +03:00
|
|
|
namespace = oslo.middleware.http_proxy_to_wsgi
|
2015-11-19 14:50:38 +08:00
|
|
|
namespace = oslo.concurrency
|
|
|
|
namespace = oslo.policy
|
|
|
|
namespace = oslo.log
|
2020-04-18 14:35:21 +08:00
|
|
|
namespace = oslo.reports
|
2015-11-19 14:50:38 +08:00
|
|
|
namespace = oslo.service.service
|
|
|
|
namespace = oslo.service.periodic_task
|
|
|
|
namespace = oslo.service.sslutils
|
2023-08-08 15:04:50 +09:00
|
|
|
namespace = oslo.versionedobjects
|
Enable OSProfiler support in Ironic
This patch does the following:
* Adds osprofiler wsgi middleware
This middleware is used for 2 things:
- It checks that person who wants to trace is trusted and knows
secret HMAC key.
- It starts tracing in case of proper trace headers
and adds first wsgi trace point, with info about HTTP request.
* Adds initialization of osprofiler at start of service
- Initialize and set an oslo.messaging based notifier instance
to osprofiler, which will be used to send notifications to Ceilometer.
* Traces HTTP/RPC/DB API calls and SQL requests
NOTE to test this patch:
1) Make the following changes in localrc to configure DevStack to enable
OSProfiler:
enable_plugin panko https://git.openstack.org/openstack/panko
enable_plugin ceilometer https://git.openstack.org/openstack/ceilometer
enable_plugin osprofiler https://git.openstack.org/openstack/osprofiler
# Enable the following services
CEILOMETER_NOTIFICATION_TOPICS=notifications,profiler
ENABLED_SERVICES+=,ceilometer-acompute,ceilometer-acentral
ENABLED_SERVICES+=,ceilometer-anotification,ceilometer-collector
ENABLED_SERVICES+=,ceilometer-alarm-evaluator,ceilometer-alarm-notifier
ENABLED_SERVICES+=,ceilometer-api
NOTE: the order of enabling plugins matters.
2) Run stack.sh. Once DevStack environment is setup, enable profiler options
in ironic.conf and restart ironic services:
[profiler]
enabled = true
hmac_keys = SECRET_KEY
trace_sqlalchemy = true
3) Use openstackclient and run baremetal command with
--os-profile SECRET_KEY
[--profile can be used, but it is deprecated.]
For example, the following will cause the <trace-id> to be printed
after node list:
$ openstack --os-profile SECRET_KEY baremetal node list
.....
.....
Trace ID: <trace-id>
Display trace with command:
osprofiler trace show --html <trace-id>
4) The trace results can be saved using this command:
$ osprofiler trace show --html <trace-id> --out trace.html
OSprofiler spec: https://review.openstack.org/#/c/103825/
Co-Authored-By: Tovin Seven <vinhnt@vn.fujitsu.com>
Co-Authored-By: Hieu LE <hieulq@vn.fujitsu.com>
Partial-Bug: #1560704
Change-Id: Icd3d7c62cf7442de8a77fc67f119ae9b03725f02
2016-08-18 16:55:56 -07:00
|
|
|
namespace = osprofiler
|
2022-07-08 00:46:23 +09:00
|
|
|
namespace = keystonemiddleware.audit
|
2015-11-19 14:50:38 +08:00
|
|
|
namespace = keystonemiddleware.auth_token
|