)]}'
{"monasca_agent/collector/checks_d/hypervisor.py":[{"author":{"_account_id":11809,"name":"Craig Bryant","email":"craig.bryant@hpe.com","username":"craig-bryant"},"change_message_id":"b43d4af567aa9e8b81f5755fcd7df70d2cc1763a","unresolved":false,"context_lines":[{"line_number":361,"context_line":"                return"},{"line_number":362,"context_line":""},{"line_number":363,"context_line":"            cached_instance \u003d instance_cache.get(inst_name)"},{"line_number":364,"context_line":"            total_mb \u003d cached_instance[\u0027flavor\u0027][\u0027memory_mb\u0027]"},{"line_number":365,"context_line":"            free_mb \u003d total_mb - mem_usage.usage"},{"line_number":366,"context_line":"            mem_metrics \u003d {\u0027mem.free_mb\u0027: free_mb,"},{"line_number":367,"context_line":"                           \u0027mem.total_mb\u0027: total_mb,"}],"source_content_type":"text/x-python","patch_set":15,"id":"da6895a0_ce8c5f38","line":364,"range":{"start_line":364,"start_character":23,"end_line":364,"end_character":61},"updated":"2016-10-20 22:01:13.000000000","message":"I\u0027m not sure that I like this. Why not use the values from inst.memoryStats? Why use the flavor values? What if the flavor gets changed? Is some other hypervisor unable to return all of the values?","commit_id":"bcf36a2dcc00f3499abe4e1847c16bec2a3526ee"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"559d1415715fa4acdf2e43bae5206fea71a8319d","unresolved":false,"context_lines":[{"line_number":361,"context_line":"                return"},{"line_number":362,"context_line":""},{"line_number":363,"context_line":"            cached_instance \u003d instance_cache.get(inst_name)"},{"line_number":364,"context_line":"            total_mb \u003d cached_instance[\u0027flavor\u0027][\u0027memory_mb\u0027]"},{"line_number":365,"context_line":"            free_mb \u003d total_mb - mem_usage.usage"},{"line_number":366,"context_line":"            mem_metrics \u003d {\u0027mem.free_mb\u0027: free_mb,"},{"line_number":367,"context_line":"                           \u0027mem.total_mb\u0027: total_mb,"}],"source_content_type":"text/x-python","patch_set":15,"id":"9a629dbe_ab1d3375","line":364,"range":{"start_line":364,"start_character":23,"end_line":364,"end_character":61},"in_reply_to":"da6895a0_ce8c5f38","updated":"2016-11-08 08:32:33.000000000","message":"it seems more efficient to me. If the flavor does change (e.g. resize), and the VM\u0027s memory doesn\u0027t match with the flavor, then it is a serious nova bug, and it should be fixed.","commit_id":"bcf36a2dcc00f3499abe4e1847c16bec2a3526ee"}],"monasca_agent/collector/virt/libvirt/inspector.py":[{"author":{"_account_id":11809,"name":"Craig Bryant","email":"craig.bryant@hpe.com","username":"craig-bryant"},"change_message_id":"b43d4af567aa9e8b81f5755fcd7df70d2cc1763a","unresolved":false,"context_lines":[{"line_number":96,"context_line":"                   \"\u003cname\u003d%(name)s, id\u003d%(id)s\u003e: \""},{"line_number":97,"context_line":"                   \"[Error Code %(error_code)s] \""},{"line_number":98,"context_line":"                   \"%(ex)s\") % {\u0027name\u0027: instance.name,"},{"line_number":99,"context_line":"                                \u0027uuid\u0027: instance.UUID,"},{"line_number":100,"context_line":"                                \u0027error_code\u0027: error_code,"},{"line_number":101,"context_line":"                                \u0027ex\u0027: ex}"},{"line_number":102,"context_line":"            raise virt_inspector.InstanceNotFoundException(msg)"}],"source_content_type":"text/x-python","patch_set":15,"id":"da6895a0_ce629fad","line":99,"range":{"start_line":99,"start_character":33,"end_line":99,"end_character":37},"updated":"2016-10-20 22:01:13.000000000","message":"Shouldn\u0027t this be id to match the %(id) above?","commit_id":"bcf36a2dcc00f3499abe4e1847c16bec2a3526ee"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"559d1415715fa4acdf2e43bae5206fea71a8319d","unresolved":false,"context_lines":[{"line_number":96,"context_line":"                   \"\u003cname\u003d%(name)s, id\u003d%(id)s\u003e: \""},{"line_number":97,"context_line":"                   \"[Error Code %(error_code)s] \""},{"line_number":98,"context_line":"                   \"%(ex)s\") % {\u0027name\u0027: instance.name,"},{"line_number":99,"context_line":"                                \u0027uuid\u0027: instance.UUID,"},{"line_number":100,"context_line":"                                \u0027error_code\u0027: error_code,"},{"line_number":101,"context_line":"                                \u0027ex\u0027: ex}"},{"line_number":102,"context_line":"            raise virt_inspector.InstanceNotFoundException(msg)"}],"source_content_type":"text/x-python","patch_set":15,"id":"9a629dbe_0b037f43","line":99,"range":{"start_line":99,"start_character":33,"end_line":99,"end_character":37},"in_reply_to":"da6895a0_ce629fad","updated":"2016-11-08 08:32:33.000000000","message":"Done","commit_id":"bcf36a2dcc00f3499abe4e1847c16bec2a3526ee"},{"author":{"_account_id":11809,"name":"Craig Bryant","email":"craig.bryant@hpe.com","username":"craig-bryant"},"change_message_id":"b43d4af567aa9e8b81f5755fcd7df70d2cc1763a","unresolved":false,"context_lines":[{"line_number":125,"context_line":"            msg \u003d (\u0027Failed to inspect data of instance \u0027"},{"line_number":126,"context_line":"                   \u0027\u003cname\u003d%(name)s, id\u003d%(id)s\u003e, \u0027"},{"line_number":127,"context_line":"                   \u0027domain state is SHUTOFF.\u0027) % {"},{"line_number":128,"context_line":"                \u0027name\u0027: instance.name, \u0027uuid\u0027: instance.UUID}"},{"line_number":129,"context_line":"            raise virt_inspector.InstanceShutOffException(msg)"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"        return domain"}],"source_content_type":"text/x-python","patch_set":15,"id":"da6895a0_ce09bfdf","line":128,"range":{"start_line":128,"start_character":40,"end_line":128,"end_character":44},"updated":"2016-10-20 22:01:13.000000000","message":"See above","commit_id":"bcf36a2dcc00f3499abe4e1847c16bec2a3526ee"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"559d1415715fa4acdf2e43bae5206fea71a8319d","unresolved":false,"context_lines":[{"line_number":125,"context_line":"            msg \u003d (\u0027Failed to inspect data of instance \u0027"},{"line_number":126,"context_line":"                   \u0027\u003cname\u003d%(name)s, id\u003d%(id)s\u003e, \u0027"},{"line_number":127,"context_line":"                   \u0027domain state is SHUTOFF.\u0027) % {"},{"line_number":128,"context_line":"                \u0027name\u0027: instance.name, \u0027uuid\u0027: instance.UUID}"},{"line_number":129,"context_line":"            raise virt_inspector.InstanceShutOffException(msg)"},{"line_number":130,"context_line":""},{"line_number":131,"context_line":"        return domain"}],"source_content_type":"text/x-python","patch_set":15,"id":"9a629dbe_2b004334","line":128,"range":{"start_line":128,"start_character":40,"end_line":128,"end_character":44},"in_reply_to":"da6895a0_ce09bfdf","updated":"2016-11-08 08:32:33.000000000","message":"Done","commit_id":"bcf36a2dcc00f3499abe4e1847c16bec2a3526ee"},{"author":{"_account_id":11809,"name":"Craig Bryant","email":"craig.bryant@hpe.com","username":"craig-bryant"},"change_message_id":"b43d4af567aa9e8b81f5755fcd7df70d2cc1763a","unresolved":false,"context_lines":[{"line_number":210,"context_line":"                msg \u003d (\u0027Failed to inspect memory usage of instance \u0027"},{"line_number":211,"context_line":"                       \u0027\u003cname\u003d%(name)s, id\u003d%(id)s\u003e, \u0027"},{"line_number":212,"context_line":"                       \u0027can not get info from libvirt.\u0027) % {"},{"line_number":213,"context_line":"                    \u0027name\u0027: instance.name, \u0027uuid\u0027: instance.UUID}"},{"line_number":214,"context_line":"                self.log.warning(msg)"},{"line_number":215,"context_line":"        # memoryStats might launch an exception if the method is not supported"},{"line_number":216,"context_line":"        # by the underlying hypervisor being used by libvirt."}],"source_content_type":"text/x-python","patch_set":15,"id":"da6895a0_2ef95bc9","line":213,"range":{"start_line":213,"start_character":44,"end_line":213,"end_character":48},"updated":"2016-10-20 22:01:13.000000000","message":"See above","commit_id":"bcf36a2dcc00f3499abe4e1847c16bec2a3526ee"},{"author":{"_account_id":8213,"name":"Claudiu Belu","email":"cbelu@cloudbasesolutions.com","username":"claudiub"},"change_message_id":"559d1415715fa4acdf2e43bae5206fea71a8319d","unresolved":false,"context_lines":[{"line_number":210,"context_line":"                msg \u003d (\u0027Failed to inspect memory usage of instance \u0027"},{"line_number":211,"context_line":"                       \u0027\u003cname\u003d%(name)s, id\u003d%(id)s\u003e, \u0027"},{"line_number":212,"context_line":"                       \u0027can not get info from libvirt.\u0027) % {"},{"line_number":213,"context_line":"                    \u0027name\u0027: instance.name, \u0027uuid\u0027: instance.UUID}"},{"line_number":214,"context_line":"                self.log.warning(msg)"},{"line_number":215,"context_line":"        # memoryStats might launch an exception if the method is not supported"},{"line_number":216,"context_line":"        # by the underlying hypervisor being used by libvirt."}],"source_content_type":"text/x-python","patch_set":15,"id":"9a629dbe_6bfa3b44","line":213,"range":{"start_line":213,"start_character":44,"end_line":213,"end_character":48},"in_reply_to":"da6895a0_2ef95bc9","updated":"2016-11-08 08:32:33.000000000","message":"Done","commit_id":"bcf36a2dcc00f3499abe4e1847c16bec2a3526ee"}]}
