]> review.fuel-infra Code Review - openstack-build/cinder-build.git/commit
Integrate OSprofiler and Cinder
authorBoris Pavlovic <boris@pavlovic.me>
Sun, 29 Jun 2014 16:03:28 +0000 (20:03 +0400)
committerBoris Pavlovic <boris@pavlovic.me>
Wed, 20 Aug 2014 22:19:36 +0000 (02:19 +0400)
commita8fa3ceb1e72bac2ab67f569a2ca009f995f59fd
tree3a594273777697479138fa7ea55f5d4f5dd24a7b
parentc8941ececc22c4642d5448174ccb062d027626d8
Integrate OSprofiler and Cinder

*) Add 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.
2) It start tracing in case of proper trace headers
and add first wsgi trace point, with info about HTTP request
*) Add initialization of osprofiler at start of serivce
Set's olso.messaging notifer instance (to send notifications to Ceilometer)

*) Fix fake notifier

NOTE to test this:

You should put to localrc:

  RECLONE=no

  CEILOMETER_NOTIFICATION_TOPICS=notifications,profiler

  ENABLED_SERVICES+=,ceilometer-acompute,ceilometer-acentral,ceilometer-anotification,ceilometer-collector
  ENABLED_SERVICES+=,ceilometer-alarm-evaluator,ceilometer-alarm-notifier
  ENABLED_SERVICES+=,ceilometer-api

You should use python-cinderclient with this patch:

  https://review.openstack.org/#/c/103359/

Run any command with --profile SECRET_KEY

  $ cinder --profile SECRET_KEY create 1
  # it will print <Trace ID>

Get pretty HTML with traces:

  $ osprofiler trace show --html <Profile ID>

note that osprofiler should be run from admin user name & tenant.

Change-Id: Ic3ce587946eaa7e6b19cf35a2cc905ae5de29dd3
cinder/db/sqlalchemy/api.py
cinder/rpc.py
cinder/service.py
cinder/tests/fake_notifier.py
cinder/tests/test_backup.py
cinder/tests/test_volume.py
cinder/volume/manager.py
etc/cinder/api-paste.ini
etc/cinder/cinder.conf.sample
requirements.txt