mirror of
https://gitee.com/milvus-io/milvus.git
synced 2025-12-29 23:15:28 +08:00
issue: #36621 1. Add API to access task runtime metrics, including: - build index task - compaction task - import task - balance (including load/release of segments/channels and some leader tasks on querycoord) - sync task 2. Add a debug model to the webpage by using debug=true or debug=false in the URL query parameters to enable or disable debug mode. Signed-off-by: jaime <yun.zhang@zilliz.com>
169 lines
4.2 KiB
HTML
169 lines
4.2 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<title>Milvus WebUI - Tasks</title>
|
|
<meta name="description" content="Milvus Management WebUI">
|
|
<link href="./static/css/bootstrap.min.css" rel="stylesheet">
|
|
<link href="./static/css/style.css" rel="stylesheet">
|
|
<script src="./static/js/jquery.min.js"></script>
|
|
<script src="./static/js/bootstrap.min.js"></script>
|
|
<script src="./static/js/bootstrap.bundle.min.js"></script>
|
|
<script src="./static/js/render.js"></script>
|
|
<script src="./static/js/common.js"></script>
|
|
<script src="./static/js/mockdata.js"></script>
|
|
</head>
|
|
<body>
|
|
<div class="container-fluid">
|
|
<div id="header"></div>
|
|
<div class="row">
|
|
<div class="col-md-2">
|
|
</div>
|
|
<div class="col-md-8">
|
|
<h2>
|
|
QueryCoord Tasks
|
|
</h2>
|
|
<table id="channelCP" class="table table-hover">
|
|
<thead class="thead-light">
|
|
<tr>
|
|
<th scope="col">Task ID</th>
|
|
<th scope="col">Source</th>
|
|
<th scope="col">Actions</th>
|
|
<th scope="col">Type</th>
|
|
<th scope="col">State</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>indexChecker</td>
|
|
<td>querynode1</td>
|
|
<td>querynode2</td>
|
|
<td>queued</td>
|
|
</tr>
|
|
<tr>
|
|
<td>2</td>
|
|
<td>loadChannel</td>
|
|
<td>querynode1</td>
|
|
<td>querynode2</td>
|
|
<td>queued</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<h2>
|
|
Compaction Tasks
|
|
</h2>
|
|
<table id="compactionTasks" class="table table-hover">
|
|
<thead class="thead-light">
|
|
<tr>
|
|
<th scope="col">Task ID</th>
|
|
<th scope="col">Plan</th>
|
|
<th scope="col">State</th>
|
|
<th scope="col">Datanode</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>fake-plan</td>
|
|
<td>running</td>
|
|
<td>datanode1</td>
|
|
</tr>
|
|
<tr>
|
|
<td>2</td>
|
|
<td>fake-plan</td>
|
|
<td>running</td>
|
|
<td>datanode2</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<h2>
|
|
Flush Tasks
|
|
</h2>
|
|
<table id="flushTasks" class="table table-hover">
|
|
<thead class="thead-light">
|
|
<tr>
|
|
<th scope="col">Task ID</th>
|
|
<th scope="col">Segment ID</th>
|
|
<th scope="col">Insertion Size(MB)</th>
|
|
<th scope="col">Deletion Size(MB)</th>
|
|
<th scope="col">State</th>
|
|
<th scope="col">Datanode</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>1111</td>
|
|
<td>10</td>
|
|
<td>5</td>
|
|
<td>running</td>
|
|
<td>datanode1</td>
|
|
</tr>
|
|
<tr>
|
|
<td>2</td>
|
|
<td>2222</td>
|
|
<td>5</td>
|
|
<td>5</td>
|
|
<td>running</td>
|
|
<td>datanode2</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
|
|
<h2>
|
|
Index Build Tasks
|
|
</h2>
|
|
<table id="indexBuildTasks" class="table table-hover">
|
|
<thead class="thead-light">
|
|
<tr>
|
|
<th scope="col">Task ID</th>
|
|
<th scope="col">Plan</th>
|
|
<th scope="col">State</th>
|
|
<th scope="col">Indexnode</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<tr>
|
|
<td>1</td>
|
|
<td>fake-plan</td>
|
|
<td>running</td>
|
|
<td>datanode1</td>
|
|
</tr>
|
|
<tr>
|
|
<td>2</td>
|
|
<td>fake-plan</td>
|
|
<td>running</td>
|
|
<td>datanode2</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
</div>
|
|
<div class="col-md-2">
|
|
</div>
|
|
</div>
|
|
<div id="footer"></div>
|
|
</div>
|
|
|
|
<script>
|
|
$(document).ready(function(){
|
|
$('#header').load("header.html");
|
|
$('#footer').load("footer.html");
|
|
});
|
|
|
|
document.addEventListener("DOMContentLoaded", function() {
|
|
fetchData(MILVUS_URI + "/", sysmetrics)
|
|
.then(data => {
|
|
//TODO add tasks render
|
|
})
|
|
.catch(error => {
|
|
handleError(new Error("Unimplemented API"));
|
|
});
|
|
});
|
|
</script>
|
|
</body>
|
|
</html> |