GitHub user kkhatua opened a pull request:
https://github.com/apache/drill/pull/1203
Advertising
DRILL-6289: Cluster view should show more relevant information
The commits make use of AJAX calls by the browser to all the Drillbits for
status metrics, which are then displayed here. This works with unsecured Drill
sessions, while secure setups will not be able to show the metrics because of
certificate authentication.
To achieve this, the HTTP port needed to be discoverable, for which changes
to the protobuf were done to provide the HTTP port number as well.
The Drillbit homepage has been extended to show the following:
* Heap Memory in use
* Direct Memory (actively) in use - Since we're not able to get the total
memory held by Netty at the moment, but only what is currently allocated to
running queries. The base memory shown is the total peak allocation by Drill
for Direct, because the actual Direct memory held is not available. In an
active stable system in production, this should be around 90%.
* Average (System) Load Factor reported by the OS for that node.
* Pill indicating the current Drillbit whose WebUI is being viewed
(existing UX feature), with an option to load (in a new window) the UI from
other Drillbits.
Information such as the User, Data and Control port numbers don't help much
during general cluster health, so it might be worth removing this information
if more real-estate is needed. For now, we are retaining this.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/kkhatua/drill DRILL-6289
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/drill/pull/1203.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 #1203
----
commit 94e8bbaefea7c6fe9b5729bcec3cba1dbbb3bc8f
Author: Kunal Khatua <kkhatua@...>
Date: 2018-03-26T05:03:12Z
Protobuf change to carry HTTP port info
commit 9b1513da949da870fc8d9a96472c4ca307e7d5e8
Author: Kunal Khatua <kkhatua@...>
Date: 2018-04-05T22:21:47Z
Allow CORS for access to remote Drillbit metrics
Cross-origin resource sharing (CORS) is required to ensure that the
WebServer is able serve REST calls for status pages.
commit eb9ae7c36a26194b5a49685230e2a94282efee84
Author: Kunal Khatua <kkhatua@...>
Date: 2018-04-05T21:21:18Z
Addition of Bootstrap's Glyphicons
As part of the Bootstrap's components, this meets Apache License criteria
Remove popout.png
commit 45e4831403997661c1df578a95e3c985f64ff4f8
Author: Kunal Khatua <kkhatua@...>
Date: 2018-04-06T23:08:43Z
Materialize relevant metrics
1. Heap memory (incl usage)
2. Heap memory (incl usage)
3. Average System Load (last 1 min)
4. Option to view from other nodes (pop out)
5. Added Glyphicons
commit dd507ea95a7d0ef4904092ef4fc43ee3b44ef058
Author: Kunal Khatua <kkhatua@...>
Date: 2018-03-30T06:24:54Z
Update System Table and related tests
1. Updated System Table to show HTTP port
2. Updated unit tests
----
---