Fix: Propagate OS global request ID

Cinder doesn't propagate global request IDs internally, so any external
request that comes with it will have it logged at the API service and
then we'll lose this information in all the other services.

We are properly serializing this information on our RPC calls, but we
are not reconstructing the Context properly on the receiving end.

This patch ensures that the "global_request_id" field from the context
is properly added on RPC reception.

Closes-Bug: #1743462
Change-Id: I35834a43298b5287d5cd3c37baa82903bdffda12
This commit is contained in:
Gorka Eguileor 2018-01-15 21:47:56 +01:00
parent 62561bdd4b
commit 28ada504af

View File

@ -176,6 +176,7 @@ class RequestContext(context.RequestContext):
quota_class=values.get('quota_class'), quota_class=values.get('quota_class'),
service_catalog=values.get('service_catalog'), service_catalog=values.get('service_catalog'),
request_id=values.get('request_id'), request_id=values.get('request_id'),
global_request_id=values.get('global_request_id'),
is_admin=values.get('is_admin'), is_admin=values.get('is_admin'),
roles=values.get('roles'), roles=values.get('roles'),
auth_token=values.get('auth_token'), auth_token=values.get('auth_token'),