639e36adbf
OSprofiler is an Oslo library dedicated to enable cross-service OpenStack profiling. This makes possible to trace the OpenStack request through all projects supporting the library, where the profiling is enabled, and generate JSON and HTML human-readable reports, describing what time was spent on which operation, e.g. API or DB request. This change inclues the following: * Add settings for OSprofiler wsgi middleware This middleware is used for 2 things: 1) It checks that person who want to trace is trusted and knows secret HMAC key (that is specified in paste.ini). 2) It initalize profiler in case of proper trace headers and add first wsgi trace point, with info about HTTP request. * Init profiler on start in both cases (httpd or eventlet) * Adding new conf group for profiler (to enable/disable) * By default osprofiler is disabled TBD: * Adding trace point for all DB (sql) calls. For proper format and result oslo.db enginefacade module needs to be updated. To test (old variant, will be changed with new commit to the python-openstackclient): $ . amdminrc # you should be admin user/tenant to fetch profiling data $ keystone --profile SECRET_KEY user-list $ osprofiler trace show --html --out result.html <TRACE_ID> Old python-keystoneclient change: https://review.openstack.org/#/c/114856/ Python-openstack client change: https://review.openstack.org/#/c/255861/ Depends-On: I248b134e0e245bd4cece0ebe225b9b729eedaf78 Change-Id: I3d6eaa7a5ab7ee9ae177f3e1d6cc92f0a01e6a42
41 lines
1.3 KiB
Plaintext
41 lines
1.3 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>=1.6 # Apache-2.0
|
|
WebOb>=1.2.3 # MIT
|
|
eventlet!=0.18.3,>=0.18.2 # MIT
|
|
greenlet>=0.3.2 # MIT
|
|
PasteDeploy>=1.5.0 # MIT
|
|
Paste # MIT
|
|
Routes!=2.0,!=2.1,>=1.12.3;python_version=='2.7' # MIT
|
|
Routes!=2.0,>=1.12.3;python_version!='2.7' # MIT
|
|
cryptography>=1.0 # BSD/Apache-2.0
|
|
six>=1.9.0 # MIT
|
|
SQLAlchemy<1.1.0,>=1.0.10 # MIT
|
|
sqlalchemy-migrate>=0.9.6 # Apache-2.0
|
|
stevedore>=1.5.0 # Apache-2.0
|
|
passlib>=1.6 # BSD
|
|
python-keystoneclient!=1.8.0,!=2.1.0,>=1.6.0 # Apache-2.0
|
|
keystonemiddleware!=4.1.0,>=4.0.0 # Apache-2.0
|
|
oslo.cache>=1.5.0 # Apache-2.0
|
|
oslo.concurrency>=3.5.0 # Apache-2.0
|
|
oslo.config>=3.7.0 # Apache-2.0
|
|
oslo.context>=0.2.0 # Apache-2.0
|
|
oslo.messaging>=4.0.0 # Apache-2.0
|
|
oslo.db>=4.1.0 # Apache-2.0
|
|
oslo.i18n>=2.1.0 # Apache-2.0
|
|
oslo.log>=1.14.0 # Apache-2.0
|
|
oslo.middleware>=3.0.0 # Apache-2.0
|
|
oslo.policy>=0.5.0 # Apache-2.0
|
|
oslo.serialization>=1.10.0 # Apache-2.0
|
|
oslo.service>=1.0.0 # Apache-2.0
|
|
oslo.utils>=3.5.0 # Apache-2.0
|
|
oauthlib>=0.6 # BSD
|
|
pysaml2<4.0.3,>=2.4.0 # Apache-2.0
|
|
dogpile.cache>=0.5.7 # BSD
|
|
jsonschema!=2.5.0,<3.0.0,>=2.0.0 # MIT
|
|
pycadf!=2.0.0,>=1.1.0 # Apache-2.0
|
|
msgpack-python>=0.4.0 # Apache-2.0
|
|
osprofiler>=1.1.0 # Apache-2.0
|