app/views/elasticsearch.scala.html (40 lines of code) (raw):
@import model.EstateProvider
@(elasticSearchStats: List[model.ElasticsearchStatsGroups.Node], estateProvider: EstateProvider)(implicit request: play.api.mvc.Security.AuthenticatedRequest[_, com.gu.googleauth.UserIdentity], human: java.text.DecimalFormat)
@main("elasticsearch status", estateProvider) {
<div class="container instance-info">
<div class="page-header">
<h1>Elasticsearch stats</h1>
</div>
<ul class="nav nav-pills">
@for((index, i) <- elasticSearchStats.zipWithIndex) {
<li @if(i==0){class="active"}><a href="#@{index.name.replaceAll(" ", "_")}" data-toggle="tab">@index.name</a></li>
}
</ul>
<div class="tab-content">
@for((index, i) <- elasticSearchStats.zipWithIndex) {
<div class="tab-pane @if(i==0){active}" id="@{index.name.replaceAll(" ", "_")}">
<table class="table table-striped">
<thead>
<tr>
<th>Stats Group</th>
<th>Query Total Time</th>
<th class="text-right">Query Requests</th>
<th class="text-right">Query Avg Req Time</th>
</tr>
</thead>
<tbody id="stats-body">
@for(statsGroup <- index.statsGroups) {
<tr>
<td>@statsGroup.name</td>
<td>@statsGroup.humanTime</td>
<td class="text-right">@human.format(statsGroup.queryCount)</td>
<td class="text-right">@human.format(statsGroup.averageRequestTime)</td>
</tr>
}
</tbody>
</table>
</div>
}
</div>
</div>
}