graphdb-workbench
Version:
The web application for GraphDB APIs
121 lines (112 loc) • 6.31 kB
HTML
<link href="css/clustermanagement.css?v=1.11.3-TR1" rel="stylesheet" />
<title>Cluster Management</title>
<h1>
{{title}}
<span class="btn btn-link"
ng-class="{ 'help-button': showExternalElements, 'help-button-disabled': !showExternalElements }"
uib-popover-template="'js/angular/templates/titlePopoverTemplate.html'"
popover-trigger="mouseenter"
popover-placement="bottom"
popover-append-to-body="true"><span class="icon-info"></span></span>
</h1>
<div onto-loader-new
ng-show="loader"
class="cluster-loader"
message="getLoaderMessage"
size="75">
</div>
<div class="row ng-scope" ng-hide="hasNodes || loader">
<p class="alert alert-danger">
No repositories are reachable.
Cluster management shows all enterprise repositories from the active location and all remote locations.
Please go to <a ng-href="repository" href="repository">Locations and Repositories</a> to activate or add your locations.
</p>
</div>
<div class="nodes" ng-show="hasNodes">
<div cluster-graphical-view></div>
</div>
<div class="nodetooltip" ng-hide="selectedNode == null">
<strong>{{selectedNode.location}}</strong>
<hr style="margin-top: 10px; margin-bottom: 10px"/>
<div ng-show="selectedNode.disabledReason" class="alert alert-warning" ng-bind-html="selectedNode.disabledReason"></div>
<div ng-show="isWorker(selectedNode)">
<div>
<div ng-show="hasInfo(selectedNode)">
<div>
<div class="row">
<div class="col-sm-6">Average task time</div><div class="col-sm-6">{{selectedNode.averageTaskTime}}</div>
</div>
<div class="row">
<div class="col-sm-6">Running tasks</div><div class="col-sm-6">{{selectedNode.runningTasks}}</div>
</div>
<div class="row">
<div class="col-sm-6">Completed tasks</div><div class="col-sm-6">{{selectedNode.completedTasks}}</div>
</div>
<div class="row">
<div class="col-sm-6">Failed tasks</div><div class="col-sm-6">{{selectedNode.failedTasks}}</div>
</div>
</div>
<div class="fingerprint">{{selectedNode.fingerprint}}</div>
</div>
<button ng-click="showCloneModal()" ng-disabled="selectedNode.disabledReason" class="btn btn-sm btn-success" aria-expanded="false" id="cloneButton">Clone to another location</button>
</div>
</div>
<div ng-show="!isWorker(selectedNode)">
<div ng-hide="selectedNode.disabledReason">
<div ng-show="hasInfo(selectedNode)">
<div class="row" id="selectedNodeReadonly" ng-click="setReadonly(!selectedNode.readonly)"><div class="col-sm-6">Read only</div><div class="col-sm-6">
<span class="switch">
<input type="checkbox" ng-checked="selectedNode.readonly" class="switch" />
<label for="selectedNodeReadonly"></label>
</span>
</div></div>
<div class="row"><div class="col-sm-6">Mode</div><div class="col-sm-6">
<input type="radio" id="selectedNodeModeNormal" ng-change="setMode(selectedNode.mode)" ng-model="selectedNode.mode" value="NORMAL"/>
<label for="selectedNodeModeNormal">Normal</label>
<input type="radio" id="selectedNodeModeMute" ng-change="setMode(selectedNode.mode)" ng-model="selectedNode.mode" value="MUTE"/>
<label for="selectedNodeModeNormal">Mute</label>
</div></div>
<div class="row"><div class="col-sm-6">Average read time</div><div class="col-sm-6">{{selectedNode.averageReadTime}}</div></div>
<div class="row"><div class="col-sm-6">Completed reads/writes</div><div class="col-sm-6">{{selectedNode.completedReads}}/{{selectedNode.completedWrites}}</div></div>
<div class="row"><div class="col-sm-6">Failed reads/writes</div><div class="col-sm-6">{{selectedNode.failedReads}}/{{selectedNode.failedWrites}}</div></div>
<div class="row"><div class="col-sm-6">Running reads/writes</div><div class="col-sm-6">{{selectedNode.runningReads}}/{{selectedNode.runningWrites}}</div></div>
<div class="row"><div class="col-sm-6">Pending writes</div><div class="col-sm-6">{{selectedNode.pendingWrites}}</div></div>
</div>
</div>
</div>
</div>
<div class="node-tip node-connect-tip">Drag and drop nodes to connect them or click to get additional information.</div>
<div class="node-tip node-disconnect-tip">Click link to disconnect the nodes</div>
<div class="node-tip node-warning-tip">This master is a peer to the other master but not vice versa, drag and drop the masters to fix it.</div>
<div class="container legend-container" ng-show="hasNodes && !loader">
<div class="row">
<div class="legend legend-on"></div><div class="legend-text">ON</div>
</div>
<div class="row">
<div class="legend legend-off"></div><div class="legend-text">OFF</div>
</div>
<div class="row">
<div class="legend legend-outofsync"></div><div class="legend-text">OUT OF SYNC</div>
</div>
<div class="row">
<div class="legend legend-outofsync-forced"></div><div class="legend-text">OUT OF SYNC FORCED</div>
</div>
<div class="row">
<div class="legend legend-writing"></div><div class="legend-text">WRITING</div>
</div>
<div class="row">
<div class="legend legend-writing-copy"></div><div class="legend-text">WRITING COPY</div>
</div>
<div class="row">
<div class="legend legend-waiting-write"></div><div class="legend-text">WAITING WRITE</div>
</div>
<div class="row">
<div class="legend legend-replication-server"></div><div class="legend-text">REPLICATION SERVER</div>
</div>
<div class="row">
<div class="legend legend-replication-client"></div><div class="legend-text">REPLICATION CLIENT</div>
</div>
<div class="row">
<div class="legend legend-unknown"></div><div class="legend-text">UNKNOWN</div>
</div>
</div>