[Openstack] request and transaction IDs across all projects

Jay Pipes jaypipes at gmail.com
Tue Jun 12 16:32:29 UTC 2012


On 06/12/2012 01:27 AM, Gabe Westmaas wrote:
> In nova we use a request ID to to help in finding all logs associated with
> a particular request, and this has proven to be extremely useful when
> debugging issues.  This should be taken a bit further, in two different
> directions.
>
> First, I'd like to see the request ID stored along with the any faults
> that are registered, and I'd like to see that request ID returned in the
> fault data.  Returning it in the fault data can start as an extension for
> now, and that should be able to move forward into the API pretty easily.

This is a no-brainer. ++

> Second, I'd like to figure out how we can extend this concept to all the
> openstack services.  I see two competing desires here.  First, we want to
> know about a particular request to a given service and second we want to
> know about an overall transaction across all services.  So, for example, a
> single create server request may cause multiple requests to glance, and
> depending on the issue, it would be great to both tie those together or
> investigate separately.  To this end, I'd like to see both a request ID
> and a transaction ID.  I'd like to see both these items in log, and I'd
> like all OpenStack services to obey the rule that if the transaction ID is
> set, don't reset it to anything else, but always add a request ID.

OK, so the request ID would be specific to a service (e.g. Nova, Glance, 
but not nova-api and nova-compute) and the transaction ID would be 
across all services?

Or would the request ID change from nova-api to nova-scheduler to 
nova-compute?

> Thoughts?  Do you buy the need for both a request ID and a transaction ID?

Sure. Just curious where you think the dividing line is -- the project 
(Nova, Glance) or the service/workers (nova-api, nova-compute, etc).

Best,
-jay




More information about the Openstack mailing list