
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
49 lines
1.7 KiB
Plaintext
49 lines
1.7 KiB
Plaintext
# The order of packages is significant, because pip processes them in the order
|
|
# of appearance. Changing the order has an impact on the overall integration
|
|
# process, which may cause wedges in the gate later.
|
|
pbr!=2.1.0,>=2.0.0 # Apache-2.0
|
|
SQLAlchemy!=1.1.5,!=1.1.6,!=1.1.7,!=1.1.8,>=1.0.10 # MIT
|
|
alembic>=0.8.10 # MIT
|
|
automaton>=0.5.0 # Apache-2.0
|
|
eventlet!=0.18.3,!=0.20.1,<0.21.0,>=0.18.2 # MIT
|
|
WebOb>=1.7.1 # MIT
|
|
paramiko>=2.0 # LGPLv2.1+
|
|
python-cinderclient>=2.1.0 # Apache-2.0
|
|
python-neutronclient>=6.3.0 # Apache-2.0
|
|
python-glanceclient>=2.7.0 # Apache-2.0
|
|
keystoneauth1>=2.21.0 # Apache-2.0
|
|
ironic-lib>=2.5.0 # Apache-2.0
|
|
python-swiftclient>=3.2.0 # Apache-2.0
|
|
pytz>=2013.6 # MIT
|
|
stevedore>=1.20.0 # Apache-2.0
|
|
pysendfile>=2.0.0 # MIT
|
|
oslo.concurrency>=3.8.0 # Apache-2.0
|
|
oslo.config!=4.3.0,!=4.4.0,>=4.0.0 # Apache-2.0
|
|
oslo.context>=2.14.0 # Apache-2.0
|
|
oslo.db>=4.23.0 # Apache-2.0
|
|
oslo.rootwrap>=5.0.0 # Apache-2.0
|
|
oslo.i18n!=3.15.2,>=2.1.0 # Apache-2.0
|
|
oslo.log>=3.22.0 # Apache-2.0
|
|
oslo.middleware>=3.27.0 # Apache-2.0
|
|
oslo.policy>=1.23.0 # Apache-2.0
|
|
oslo.reports>=0.6.0 # Apache-2.0
|
|
oslo.serialization>=1.10.0 # Apache-2.0
|
|
oslo.service>=1.10.0 # Apache-2.0
|
|
oslo.utils>=3.20.0 # Apache-2.0
|
|
osprofiler>=1.4.0 # Apache-2.0
|
|
pecan!=1.0.2,!=1.0.3,!=1.0.4,!=1.2,>=1.0.0 # BSD
|
|
requests>=2.14.2 # Apache-2.0
|
|
rfc3986>=0.3.1 # Apache-2.0
|
|
six>=1.9.0 # MIT
|
|
jsonpatch>=1.1 # BSD
|
|
WSME>=0.8 # MIT
|
|
Jinja2!=2.9.0,!=2.9.1,!=2.9.2,!=2.9.3,!=2.9.4,>=2.8 # BSD License (3 clause)
|
|
keystonemiddleware>=4.12.0 # Apache-2.0
|
|
oslo.messaging!=5.25.0,>=5.24.2 # Apache-2.0
|
|
retrying!=1.3.0,>=1.2.3 # Apache-2.0
|
|
oslo.versionedobjects>=1.17.0 # Apache-2.0
|
|
jsonschema!=2.5.0,<3.0.0,>=2.0.0 # MIT
|
|
psutil>=3.2.2 # BSD
|
|
futurist!=0.15.0,>=0.11.0 # Apache-2.0
|
|
tooz>=1.47.0 # Apache-2.0
|