SOLR-12620: Remove the Admin UI Cloud -> Graph (Radial) view

This commit is contained in:
Jan Høydahl 2018-10-10 21:54:34 +02:00
parent 4cfa876d9d
commit 80011d669a
7 changed files with 8 additions and 76 deletions

View File

@ -91,6 +91,8 @@ Other Changes
* SOLR-11812: Remove backward compatibility of old LIR implementation in 8.0 (Cao Manh Dat)
* SOLR-12620: Remove the Admin UI Cloud -> Graph (Radial) view (janhoy)
================== 7.6.0 ==================
Consult the LUCENE_CHANGES.txt file for additional, low level, changes in this release.

View File

@ -26,7 +26,7 @@ This screen provides status information about each collection & node in your clu
The "Cloud" menu option is only available on Solr instances running in <<getting-started-with-solrcloud.adoc#getting-started-with-solrcloud,SolrCloud mode>>. Single node or master/slave replication instances of Solr will not display this option.
====
Click on the "Cloud" option in the left-hand navigation, and a small sub-menu appears with options called "Nodes", "Tree", "Graph" and "Graph (Radial)". The sub-view selected by default is "Graph".
Click on the "Cloud" option in the left-hand navigation, and a small sub-menu appears with options called "Nodes", "Tree", "ZK Status" and "Graph". The sub-view selected by default is "Nodes".
== Nodes View
The "Nodes" view shows a list of the hosts and nodes in the cluster along with key information for each: "CPU", "Heap", "Disk usage", "Requests", "Collections" and "Replicas".
@ -47,7 +47,7 @@ The "ZK Status" view gives an overview over the Zookeepers used by Solr. It list
image::images/cloud-screens/cloud-zkstatus.png[image,width=512,height=509]
== Graph Views
== Graph View
The "Graph" view shows a graph of each collection, the shards that make up those collections, and the addresses and type ("NRT", "TLOG" or "PULL") of each replica for each shard.
This example shows a simple cluster. In addition to the 2 shard, 2 replica "gettingstarted" collection, there is an additional "tlog" collection consisting of mixed TLOG and PULL replica types.
@ -57,7 +57,3 @@ image::images/cloud-screens/cloud-graph.png[image,width=512,height=250]
Tooltips appear when hovering over each replica giving additional information.
image::images/cloud-screens/cloud-hover.png[image,width=512,height=250]
The "Graph (Radial)" option provides a different visual view of each node. Using the same example cluster, the radial graph view looks like:
image::images/cloud-screens/cloud-radial.png[image,width=478,height=250]

Binary file not shown.

Before

Width:  |  Height:  |  Size: 100 KiB

View File

@ -263,7 +263,6 @@ limitations under the License.
#menu #cloud.global .nodes a { background-image: url( ../../img/solr-ico.png ); }
#menu #cloud.global .zkstatus a { background-image: url( ../../img/ico/node-master.png ); }
#menu #cloud.global .graph a { background-image: url( ../../img/ico/molecule.png ); }
#menu #cloud.global .rgraph a { background-image: url( ../../img/ico/asterisk.png ); }
.sub-menu .ping.error a
{

View File

@ -154,7 +154,6 @@ limitations under the License.
<li class="tree" ng-class="{active:page=='cloud-tree'}"><a href="#/~cloud?view=tree">Tree</a></li>
<li class="zkstatus" ng-class="{active:page=='cloud-zkstatus'}"><a href="#/~cloud?view=zkstatus">ZK Status</a></li>
<li class="graph" ng-class="{active:page=='cloud-graph'}"><a href="#/~cloud?view=graph">Graph</a></li>
<li class="rgraph" ng-class="{active:page=='cloud-rgraph'}"><a href="#/~cloud?view=rgraph">Graph (Radial)</a></li>
</ul>
</li>

View File

@ -32,9 +32,6 @@ solrAdminApp.controller('CloudController',
if (view === "tree") {
$scope.resetMenu("cloud-tree", Constants.IS_ROOT_PAGE);
treeSubController($scope, Zookeeper);
} else if (view === "rgraph") {
$scope.resetMenu("cloud-rgraph", Constants.IS_ROOT_PAGE);
graphSubController($scope, Zookeeper, true);
} else if (view === "graph") {
$scope.resetMenu("cloud-graph", Constants.IS_ROOT_PAGE);
graphSubController($scope, Zookeeper, false);
@ -584,7 +581,7 @@ function secondsForHumans ( seconds ) {
return returntext.trim() === '' ? '0m' : returntext.trim();
}
var graphSubController = function ($scope, Zookeeper, isRadial) {
var graphSubController = function ($scope, Zookeeper) {
$scope.showZkStatus = false;
$scope.showTree = false;
$scope.showGraph = true;
@ -740,7 +737,7 @@ var graphSubController = function ($scope, Zookeeper, isRadial) {
$scope.helperData.state = $.unique($scope.helperData.state);
$scope.helperData.core_node = $.unique($scope.helperData.core_node);
if (!isRadial && data.znode && data.znode.paging) {
if (data.znode && data.znode.paging) {
$scope.showPaging = true;
var parr = data.znode.paging.split('|');
@ -774,7 +771,6 @@ var graphSubController = function ($scope, Zookeeper, isRadial) {
}
$scope.graphData = graph_data;
$scope.leafCount = leaf_count;
$scope.isRadial = isRadial;
});
});
};
@ -790,7 +786,6 @@ solrAdminApp.directive('graph', function(Constants) {
data: "=",
leafCount: "=",
helperData: "=",
isRadial: "="
},
link: function (scope, element, attrs) {
var helper_path_class = function (p) {
@ -873,11 +868,7 @@ solrAdminApp.directive('graph', function(Constants) {
scope.$watch("data", function(newValue, oldValue) {
if (newValue) {
if (scope.isRadial) {
radialGraph(element, scope.data, scope.leafCount);
} else {
flatGraph(element, scope.data, scope.leafCount);
}
flatGraph(element, scope.data, scope.leafCount);
}
$('text').tooltip({
@ -964,61 +955,6 @@ solrAdminApp.directive('graph', function(Constants) {
setNodeNavigationBehavior(node);
};
var radialGraph = function(element, graphData, leafCount) {
var max_val = Math.min(element.width(), $('body').height())
var r = max_val / 2;
var cluster = d3.layout.cluster()
.size([360, r - 160]);
var diagonal = d3.svg.diagonal.radial()
.projection(function (d) {
return [d.y, d.x / 180 * Math.PI];
});
d3.select('#canvas', element).html('');
var vis = d3.select('#canvas').append('svg')
.attr('width', r * 2)
.attr('height', r * 2)
.append('g')
.attr('transform', 'translate(' + r + ',' + r + ')');
var nodes = cluster.nodes(graphData);
var link = vis.selectAll('path.link')
.data(cluster.links(nodes))
.enter().append('path')
.attr('class', helper_path_class)
.attr('d', diagonal);
var node = vis.selectAll('g.node')
.data(nodes)
.enter().append('g')
.attr('class', helper_node_class)
.attr('transform', function (d) {
return 'rotate(' + (d.x - 90) + ')translate(' + d.y + ')';
})
node.append('circle')
.attr('r', 4.5);
node.append('text')
.attr('dx', function (d) {
return d.x < 180 ? 8 : -8;
})
.attr('dy', '.31em')
.attr('text-anchor', function (d) {
return d.x < 180 ? 'start' : 'end';
})
.attr('transform', function (d) {
return d.x < 180 ? null : 'rotate(180)';
})
.attr("title", helper_tooltip_text)
.text(helper_node_text);
setNodeNavigationBehavior(node, "rgraph");
}
}
};
});

View File

@ -239,7 +239,7 @@ limitations under the License.
</table>
</div>
<div graph data="graphData" leaf-count="leafCount" helper-data="helperData" is-radial="isRadial" id="graph-content" class="content clearfix" ng-show="showGraph">
<div graph data="graphData" leaf-count="leafCount" helper-data="helperData" id="graph-content" class="content clearfix" ng-show="showGraph">
<div id="canvas"></div>