[
https://issues.apache.org/jira/browse/CLOUDSTACK-9783?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15951364#comment-15951364
]
ASF GitHub Bot commented on CLOUDSTACK-9783:
--------------------------------------------
Github user nvazquez commented on the issue:
https://github.com/apache/cloudstack/pull/1944
Hi @rhtyd, thanks for this great improvement! Along with @serg38 we've been
testing in our env and got some failures on `listHostsMetrics` and
`listVolumeMetrics`:
````
test_list_clusters_metrics (test_metrics_api.TestMetrics) ... === TestName:
test_list_clusters_metrics | Status : SUCCESS ===
ok
test_list_hosts_metrics (test_metrics_api.TestMetrics) ... === TestName:
test_list_hosts_metrics | Status : EXCEPTION ===
ERROR
test_list_infrastructure_metrics (test_metrics_api.TestMetrics) ... ===
TestName: test_list_infrastructure_metrics | Status : SUCCESS ===
ok
test_list_pstorage_metrics (test_metrics_api.TestMetrics) ... === TestName:
test_list_pstorage_metrics | Status : SUCCESS ===
ok
test_list_vms_metrics (test_metrics_api.TestMetrics) ... === TestName:
test_list_vms_metrics | Status : SUCCESS ===
ok
test_list_volumes_metrics (test_metrics_api.TestMetrics) ... === TestName:
test_list_volumes_metrics | Status : EXCEPTION ===
ERROR
test_list_zones_metrics (test_metrics_api.TestMetrics) ... === TestName:
test_list_zones_metrics | Status : SUCCESS ===
ok
````
````
[root@ussarlabcsmgt41 cloudstack]# cat
/tmp//MarvinLogs//1A23HU/failed_plus_exceptions.txt
2017-03-31 10:21:19,514 - CRITICAL - EXCEPTION: test_list_hosts_metrics:
['Traceback (most recent call last):\n', ' File
"/usr/local/lib/python2.7/unittest/case.py", line 331, in run\n
testMethod()\n', ' File
"/home/t_vazqnadmin/cloudstack/test/integration/smoke/test_metrics_api.py",
line 77, in test_list_hosts_metrics\n host_metric =
self.apiclient.listHostsMetrics(cmd)[0]\n', ' File
"/usr/local/lib/python2.7/site-packages/marvin/cloudstackAPI/cloudstackAPIClient.py",
line 3094, in listHostsMetrics\n response =
self.connection.marvinRequest(command, response_type=response,
method=method)\n', ' File
"/usr/local/lib/python2.7/site-packages/marvin/cloudstackConnection.py", line
379, in marvinRequest\n raise e\n', "CloudstackAPIException: Execute cmd:
listhostsmetrics failed, due to: errorCode: 530, errorText:No value specified
for 'Date'\n"]
2017-03-31 10:23:50,276 - CRITICAL - EXCEPTION: test_list_volumes_metrics:
['Traceback (most recent call last):\n', ' File
"/usr/local/lib/python2.7/unittest/case.py", line 331, in run\n
testMethod()\n', ' File
"/home/t_vazqnadmin/cloudstack/test/integration/smoke/test_metrics_api.py",
line 172, in test_list_volumes_metrics\n lvm =
self.apiclient.listVolumesMetrics(cmd)[0]\n', ' File
"/usr/local/lib/python2.7/site-packages/marvin/cloudstackAPI/cloudstackAPIClient.py",
line 954, in listVolumesMetrics\n response =
self.connection.marvinRequest(command, response_type=response,
method=method)\n', ' File
"/usr/local/lib/python2.7/site-packages/marvin/cloudstackConnection.py", line
379, in marvinRequest\n raise e\n', "CloudstackAPIException: Execute cmd:
listvolumesmetrics failed, due to: errorCode: 530, errorText:No value specified
for 'Date'\n"]
````
Exception is thrown by `BeanUtils.copyProperties`, log on management server:
````
2017-03-31 10:28:33,257 ERROR [cloud.api.ApiServer]
(catalina-exec-15:ctx-7fb0b31e ctx-6ded5acb) unhandled exception executing api
command: [Ljava.lang.String;@63f1496d
org.apache.commons.beanutils.ConversionException: No value specified for
'Date'
at
org.apache.commons.beanutils.converters.AbstractConverter.handleMissing(AbstractConverter.java:310)
at
org.apache.commons.beanutils.converters.AbstractConverter.convert(AbstractConverter.java:136)
at
org.apache.commons.beanutils.converters.ConverterFacade.convert(ConverterFacade.java:60)
at
org.apache.commons.beanutils.BeanUtilsBean.convert(BeanUtilsBean.java:1078)
at
org.apache.commons.beanutils.BeanUtilsBean.copyProperty(BeanUtilsBean.java:437)
at
org.apache.commons.beanutils.BeanUtilsBean.copyProperties(BeanUtilsBean.java:286)
at
org.apache.commons.beanutils.BeanUtils.copyProperties(BeanUtils.java:137)
at
org.apache.cloudstack.metrics.MetricsServiceImpl.listHostMetrics(MetricsServiceImpl.java:244)
at
org.apache.cloudstack.api.ListHostsMetricsCmd.execute(ListHostsMetricsCmd.java:48)
at com.cloud.api.ApiDispatcher.dispatch(ApiDispatcher.java:150)
at com.cloud.api.ApiServer.queueCommand(ApiServer.java:709)
at com.cloud.api.ApiServer.handleRequest(ApiServer.java:533)
at
com.cloud.api.ApiServlet.processRequestInContext(ApiServlet.java:299)
at com.cloud.api.ApiServlet$1.run(ApiServlet.java:129)
at
org.apache.cloudstack.managed.context.impl.DefaultManagedContext$1.call(DefaultManagedContext.java:56)
at
org.apache.cloudstack.managed.context.impl.DefaultManagedContext.callWithContext(DefaultManagedContext.java:103)
at
org.apache.cloudstack.managed.context.impl.DefaultManagedContext.runWithContext(DefaultManagedContext.java:53)
at com.cloud.api.ApiServlet.processRequest(ApiServlet.java:126)
at com.cloud.api.ApiServlet.doGet(ApiServlet.java:88)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:555)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:299)
at
org.apache.coyote.http11.Http11NioProcessor.process(Http11NioProcessor.java:889)
at
org.apache.coyote.http11.Http11NioProtocol$Http11ConnectionHandler.process(Http11NioProtocol.java:732)
at
org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.run(NioEndpoint.java:2274)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
````
In our case it failed for this `hostResponse`:
````
{"id":"be606171-57e0-4cef-99e3-d4f2d47478b4","name":"ussfoldcsesx116.adslab.local","state":"Up","disconnected":"Mar
29, 2017 11:24:21
PM","type":"Routing","ipaddress":"10.140.32.116","zoneid":"0d074f25-ed31-482f-8bc5-44c9314fc417","zonename":"ECS-NSX","podid":"01d4848c-5357-442a-bfce-d0c691fe5bdf","podname":"POD1","version":"4.9.3.0-SNAPSHOT","hypervisor":"VMware","cpusockets":2,"cpunumber":48,"cpuspeed":2596,"cpuallocated":"1.2%","cpuused":"0.3%","cpuwithoverprovisioning":"124608.0","networkkbsread":0,"networkkbswrite":0,"memorytotal":137308676096,"memoryallocated":2147483648,"memoryused":6262890496,"capabilities":"hvm","lastpinged":"Jan
17, 1970 12:27:11
PM","managementserverid":345051565299,"clusterid":"e13b0968-a61e-474f-939e-8d03a088a9cc","clustername":"ussfoldvs6vc027.adslab.local/ECS-CSDEV/CLD100","clustertype":"ExternalManaged","islocalstorageactive":false,"created":"Apr
19, 2016 3:19:24 PM","events":"PingTimeout; StartAgentRebalance; HostDown;
AgentConnected; AgentDisconnected; ManagementServerDown; ShutdownRequested;
Ping;
Remove","hosttags":"test","outofbandmanagement":{"powerstate":"Disabled","enabled":false},"resourcestate":"Enabled","hypervisorversion":"6.0","hahost":false}
````
And `metricsResponse` after failure:
````
{"id":"be606171-57e0-4cef-99e3-d4f2d47478b4","name":"ussfoldcsesx116.adslab.local","disconnected":"Mar
29, 2017 11:24:21
PM","type":"Routing","ipaddress":"10.140.32.116","podid":"01d4848c-5357-442a-bfce-d0c691fe5bdf","podname":"POD1","hypervisor":"VMware","cpusockets":2,"cpunumber":48,"cpuspeed":2596,"cpuallocated":"1.2%","cpuused":"0.3%","cpuwithoverprovisioning":"124608.0","averageload":0,"networkkbsread":0,"networkkbswrite":0,"memorytotal":137308676096,"memoryallocated":2147483648,"memoryused":6262890496,"disksizetotal":0,"disksizeallocated":0,"capabilities":"hvm","lastpinged":"Jan
17, 1970 12:27:11
PM","managementserverid":345051565299,"clusterid":"e13b0968-a61e-474f-939e-8d03a088a9cc","clustername":"ussfoldvs6vc027.adslab.local/ECS-CSDEV/CLD100","clustertype":"ExternalManaged","islocalstorageactive":false,"created":"Apr
19, 2016 3:19:24 PM","events":"PingTimeout; StartAgentRebalance; HostDown;
AgentConnected; AgentDisconnected; ManagementServerDown; ShutdownRequested;
Ping;
Remove","hosttags":"test","hasenoughcapacity":false,"hypervisorversion":"6.0","hahost":false,"jobstatus":0}
````
Did you have a failure like this?
> Improve metrics view performance
> --------------------------------
>
> Key: CLOUDSTACK-9783
> URL: https://issues.apache.org/jira/browse/CLOUDSTACK-9783
> Project: CloudStack
> Issue Type: Improvement
> Security Level: Public(Anyone can view this level - this is the
> default.)
> Reporter: Rohit Yadav
> Assignee: Rohit Yadav
> Fix For: Future, 4.10.0.0, 4.9.3.0
>
>
> Metrics view is a pure frontend feature, where several API calls are made to
> generate the metrics view tabular data. In very large environments, rendering
> of these tables can take a lot of time, especially when there is high
> latency. The improvement task is to reimplement this feature by moving the
> logic to backend so metrics calculations happen at the backend and final
> result can be served by a single API request.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)