GitHub user rashmidixit opened a pull request: https://github.com/apache/cloudstack/pull/1884
Add global setting for enable/disable Metrics feature The Metrics view for each type of entity basically fires APIs and calculates required values on the client end. For e.g. to display memory usage etc at the zone level, it will fetch all zones. For each zone it will fetch pods->cluster->host->VMs For a very large Cloudstack installation this will have a major impact on the performance. Ideally, there should be an API which calculates all metrics in the backend and the UI should simply show the values. However, for the time, introduce a global setting called enable.metrics which will be set to false. This will cause the metrics button not to be shown on any of the pages. If the Admin changes this to true, then the button will be visible and Metrics functionality will work as usual. In this pull request, have also added JUnit test case for listCapabilities API. Additionally added a test case in marvin called test_global_settings as part of the smoke tests which test the output of the listCapabilities API and checks if this setting is present or not. You can merge this pull request into a Git repository by running: $ git pull https://github.com/Accelerite/cloudstack CLOUDSTACK-9699 Alternatively you can review and apply these changes as the patch at: https://github.com/apache/cloudstack/pull/1884.patch To close this pull request, make a commit to your master/trunk branch with (at least) the following in the commit message: This closes #1884 ---- commit 9be96c2454553ed2f85cc8097837caed0fe3756e Author: Rashmi Dixit <rashmi_di...@persistent.co.in> Date: 2016-05-26T04:31:37Z CLOUDSTACK-9699: Add new setting to enable/disable metrics for console Reviewed-By: Radhika Grover & Koushik Das Added a new global setting called enable.metrics.ui (default false) which allows the metrics button to be enabled/disabled in the UI. Note that when false, the metrics button is not visible at all. This feature has been introduced because metrics feature is not optimized and will cause performance issues in large deployments. Conflicts: api/src/org/apache/cloudstack/api/command/user/config/ListCapabilitiesCmd.java api/src/org/apache/cloudstack/api/response/CapabilitiesResponse.java server/src/com/cloud/server/ManagementServerImpl.java ui/scripts/cloudStack.js ui/scripts/instances.js ui/scripts/sharedFunctions.js ui/scripts/storage.js ui/scripts/system.js commit c0cc5d6e3b0a79ae68d1e85d2ef5b4f4a4836c2a Author: Rashmi Dixit <rashmi_di...@persistent.co.in> Date: 2016-05-27T10:18:21Z CLOUDSTACK-9699: Added test case for checking output of ListCapabilities API and whether it includes enableMetrics parameter. Reviewed-By Koushik Das, Sanjeev N Added junit test case and marvin test case for testing updated listCapabilities API. The junit test case changes involved updating ResponseGenerator and ApiResponseHelper to correctly build the response. Conflicts: api/src/org/apache/cloudstack/api/command/user/config/ListCapabilitiesCmd.java server/src/com/cloud/api/ApiResponseHelper.java commit f5fb2c45d11a385050531c830a070d6d69006333 Author: Rashmi Dixit <rashmi_di...@persistent.co.in> Date: 2016-05-26T04:31:37Z CLOUDSTACK-9699: Add new setting to enable/disable metrics for console Reviewed-By: Radhika Grover & Koushik Das Added a new global setting called enable.metrics.ui (default false) which allows the metrics button to be enabled/disabled in the UI. Note that when false, the metrics button is not visible at all. This feature has been introduced because metrics feature is not optimized and will cause performance issues in large deployments. Conflicts: api/src/org/apache/cloudstack/api/command/user/config/ListCapabilitiesCmd.java api/src/org/apache/cloudstack/api/response/CapabilitiesResponse.java server/src/com/cloud/server/ManagementServerImpl.java ui/scripts/cloudStack.js ui/scripts/instances.js ui/scripts/sharedFunctions.js ui/scripts/storage.js ui/scripts/system.js commit 6e13a963d4d9df4a1c7bf7ed47b17f01083db281 Author: rashmidixit <rashmi_di...@persistent.co.in> Date: 2017-01-02T08:58:01Z CLOUDSTACK-9699: Removed some extra code which was not required. commit 49a5de8cb63e0676616f8af4d2006133b8edce28 Author: rashmidixit <rashmi_di...@persistent.co.in> Date: 2017-01-02T09:15:12Z Merge branch 'CLOUDSTACK-9699' of https://github.com/Accelerite/cloudstack into CLOUDSTACK-9699 Conflicts: api/src/org/apache/cloudstack/api/response/CapabilitiesResponse.java server/src/com/cloud/api/ApiResponseHelper.java test/integration/smoke/test_global_settings.py ui/scripts/cloudStack.js ui/scripts/sharedFunctions.js commit f6c748547c0846ec816c934e81c85a492c8492db Author: rashmidixit <rashmi_di...@persistent.co.in> Date: 2017-01-02T09:22:53Z CLOUDSTACK-9699: Removed an incorrect comment. ---- --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---