Since the fix released was targeted for V3 REST API, which is not supported currently, we still don't have consistent format of diagnostics data output for different virt drivers. At the moment, the nova diagnostics + libvirt returns:
Response - Headers: {'status': '200', 'content-length': '675', 'content-location': 'http://10.109.3.3:8774/v2.1/servers/d782a127-1648-4759-9c6d-639c39e70c4f/diagnostics', 'x-compute-request-id': 'req-301bd0d7-ebf4-4ef7-9e71-8b6e495cc5c9', 'vary': 'X-OpenStack-Nova-API-Version', 'connection': 'close', 'x-openstack-nova-api-version': '2.1', 'date': 'Wed, 29 Jun 2016 14:58:34 GMT', 'content-type': 'application/json'} Body: {"tap443f65b3-94_rx_errors": 0, "memory-available": 49056, "vda_write": 214016, "cpu0_time": 12490000000, "memory-major_fault": 11, "vdz_write": 0, "vdz_write_req": 0, "memory-swap_out": 0, "tap443f65b3-94_tx_packets": 9, "tap443f65b3-94_rx": 976, "tap443f65b3-94_tx_errors": 0, "tap443f65b3-94_rx_packets": 12, "vdz_errors": -1, "vda_read": 23142400, "vda_write_req": 36, "memory-actual": 65536, "memory-swap_in": 0, "vdz_read_req": 142, "tap443f65b3-94_tx_drop": 0, "vdz_read": 1731584, "memory-minor_fault": 21668, "tap443f65b3-94_tx": 999, "memory": 65536, "memory-rss": 127992, "memory-unused": 30472, "vda_read_req": 1076, "vda_errors": -1, "tap443f65b3-94_rx_drop": 0}
and nova diagnostics + xenapi returns:
Response - Headers: {'content-length': '669', 'status': '200', 'x-compute-request-id': 'req-c24610d8-c004-444f-8a86-7915e1caa045', 'date': 'Tue, 01 Mar 2016 07:35:45 GMT', 'content-location': 'http://192.168.33.1:8774/v2.1/49bed283a6ab4392a1fef3c1e562440d/servers/5488ffab-1ac2-4718-9da2-2d025bae1c09/diagnostics', 'content-type': 'application/json', 'vary': 'X-OpenStack-Nova-API-Version', 'connection': 'close', 'x-openstack-nova-api-version': '2.1'} Body: {"vbd_xvdd_iowait": "0.0", "vbd_xvdd_read": "0.0", "vbd_xvda_write": "0.0", "vbd_xvdd_iops_read": "0.0", "vbd_xvda_avgqu_sz": "0.0", "vbd_xvdd_io_throughput_total": "0.0", "vif_0_tx": "0.0", "vbd_xvda_io_throughput_total": "0.0", "cpu0": "0.0003", "vif_0_rx": "180.5545", "vbd_xvda_iowait": "0.0", "vbd_xvdd_avgqu_sz": "0.0", "memory_target": "67108864.0000", "vbd_xvda_iops_write": "0.0", "last_update": "1456817745", "vbd_xvda_read": "0.0", "vbd_xvdd_iops_total": "0.0", "vbd_xvda_iops_read": "0.0", "vbd_xvdd_inflight": "0.0", "memory": "67108864.0000", "vbd_xvdd_write": "0.0", "vbd_xvda_iops_total": "0.0", "vbd_xvda_inflight": "0.0", "vbd_xvdd_iops_write": "0.0"}
It would be nice do not bury what has been already done (at least, we have https://github.com/openstack/nova/blob/stable/mitaka/nova/virt/diagnostics.py etc.) and to implement a microversion with support of consistent format of diagnostics data
Since the fix released was targeted for V3 REST API, which is not supported currently, we still don't have consistent format of diagnostics data output for different virt drivers. At the moment, the nova diagnostics + libvirt returns:
Response - Headers: {'status': '200', 'content-length': '675', 'content-location': 'http:// 10.109. 3.3:8774/ v2.1/servers/ d782a127- 1648-4759- 9c6d-639c39e70c 4f/diagnostics', 'x-compute- request- id': 'req-301bd0d7- ebf4-4ef7- 9e71-8b6e495cc5 c9', 'vary': 'X-OpenStack- Nova-API- Version' , 'connection': 'close', 'x-openstack- nova-api- version' : '2.1', 'date': 'Wed, 29 Jun 2016 14:58:34 GMT', 'content-type': 'application/json'} 94_rx_errors" : 0, "memory-available": 49056, "vda_write": 214016, "cpu0_time": 12490000000, "memory- major_fault" : 11, "vdz_write": 0, "vdz_write_req": 0, "memory-swap_out": 0, "tap443f65b3- 94_tx_packets" : 9, "tap443f65b3- 94_rx": 976, "tap443f65b3- 94_tx_errors" : 0, "tap443f65b3- 94_rx_packets" : 12, "vdz_errors": -1, "vda_read": 23142400, "vda_write_req": 36, "memory-actual": 65536, "memory-swap_in": 0, "vdz_read_req": 142, "tap443f65b3- 94_tx_drop" : 0, "vdz_read": 1731584, "memory- minor_fault" : 21668, "tap443f65b3- 94_tx": 999, "memory": 65536, "memory-rss": 127992, "memory-unused": 30472, "vda_read_req": 1076, "vda_errors": -1, "tap443f65b3- 94_rx_drop" : 0}
Body: {"tap443f65b3-
and nova diagnostics + xenapi returns:
Response - Headers: {'content-length': '669', 'status': '200', 'x-compute- request- id': 'req-c24610d8- c004-444f- 8a86-7915e1caa0 45', 'date': 'Tue, 01 Mar 2016 07:35:45 GMT', 'content-location': 'http:// 192.168. 33.1:8774/ v2.1/49bed283a6 ab4392a1fef3c1e 562440d/ servers/ 5488ffab- 1ac2-4718- 9da2-2d025bae1c 09/diagnostics', 'content-type': 'application/json', 'vary': 'X-OpenStack- Nova-API- Version' , 'connection': 'close', 'x-openstack- nova-api- version' : '2.1'} iops_read" : "0.0", "vbd_xvda_ avgqu_sz" : "0.0", "vbd_xvdd_ io_throughput_ total": "0.0", "vif_0_tx": "0.0", "vbd_xvda_ io_throughput_ total": "0.0", "cpu0": "0.0003", "vif_0_rx": "180.5545", "vbd_xvda_iowait": "0.0", "vbd_xvdd_ avgqu_sz" : "0.0", "memory_target": "67108864.0000", "vbd_xvda_ iops_write" : "0.0", "last_update": "1456817745", "vbd_xvda_read": "0.0", "vbd_xvdd_ iops_total" : "0.0", "vbd_xvda_ iops_read" : "0.0", "vbd_xvdd_ inflight" : "0.0", "memory": "67108864.0000", "vbd_xvdd_write": "0.0", "vbd_xvda_ iops_total" : "0.0", "vbd_xvda_ inflight" : "0.0", "vbd_xvdd_ iops_write" : "0.0"}
Body: {"vbd_xvdd_iowait": "0.0", "vbd_xvdd_read": "0.0", "vbd_xvda_write": "0.0", "vbd_xvdd_
It would be nice do not bury what has been already done (at least, we have https:/ /github. com/openstack/ nova/blob/ stable/ mitaka/ nova/virt/ diagnostics. py etc.) and to implement a microversion with support of consistent format of diagnostics data