How can I get neutron or Nova api's response time

asked 2015-11-07 13:11:36 -0500

kiran gravatar image

updated 2015-11-11 11:04:37 -0500

Hello ,

We are trying to find the response time of different api's of an openstack service such as neutron or nova. I looked into the rabbitmq part.The sub services of any service internally communicate through RPC over amq.Each of the components gets its tasks from its controller through the queue.

So during this process I have few doubts

1)What other metrics should we monitor to observe neutrons or nova's performance other than the system metrics.

2)I wanted to monitor the response times of the api calls to neutron.

I believe few of the components of neutron are l3 agent,l2 agent,dhcp agent,vswitch agent,metadata agent etc.Can we track the execution time that each of this component takes.

POST Api -- > /v2.0/networks For example the above neutron api creates a network.How can I know which of the agents is executed for this api call and how can I get the response time. I tried seeing the response time from the logs.But I am not sure if that is the time for initiating the request or for fulfilling the request as the internal communication is through asynchronous calls over rabbiitmq.

BTW,rally is able to get the response times for different api calls.Looks like its invokes python api directly.For example once we launch an image we get the response time in the log.Is this the real response time for the vm to be in the final created state ?

3) How can I understand the interaction between the service components for a service such as neutron.For a specific api call ,how can we know which agents or components are invoked and in which order.The source code is one option.Do we have it documented else where.

thanks.

edit retag flag offensive close merge delete