提交 151a7d94 编写于 作者: Y yong.you

modify the UI alignment adjustment

上级 014e1cc7
......@@ -52,7 +52,7 @@
<c:forEach var="item" items="${model.report.typeItems}" varStatus="status">
<c:set var="e" value="${item.type}"/>
<c:set var="lastIndex" value="${status.index}"/>
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td style="text-align:left"><a href="?domain=${report.domain}&date=${model.date}&ip=${model.ipAddress}&type=${e.id}">${e.id}</a></td>
<td>${w:format(e.totalCount,'#,###,###,###,##0')}</td>
<td>${item.missed}</td>
......@@ -89,7 +89,7 @@
<c:forEach var="item" items="${model.report.nameItems}" varStatus="status">
<c:set var="e" value="${item.name}"/>
<c:set var="lastIndex" value="${status.index}"/>
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td style="text-align:left;word-wrap:break-word;word-break:break-all;">${w:shorten(e.id, 80)}</td>
<td>${w:format(e.totalCount,'#,###,###,###,##0')}</td>
<td>${item.missed}</td>
......
......@@ -46,7 +46,7 @@ navUrlPrefix="ip=${model.ipAddress}&queryname=${model.queryName}&domain=${model.
<c:forEach var="item" items="${model.report.typeItems}" varStatus="status">
<c:set var="e" value="${item.type}"/>
<c:set var="lastIndex" value="${status.index}"/>
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td style="text-align:left"><a href="?op=history&domain=${model.domain}&reportType=${model.reportType}${model.customDate}&date=${model.date}&ip=${model.ipAddress}&type=${e.id}">${e.id}</a></td>
<td>${w:format(e.totalCount,'#,###,###,###,##0')}</td>
<td>${item.missed}</td>
......@@ -84,7 +84,7 @@ navUrlPrefix="ip=${model.ipAddress}&queryname=${model.queryName}&domain=${model.
<c:forEach var="item" items="${model.report.nameItems}" varStatus="status">
<c:set var="e" value="${item.name}"/>
<c:set var="lastIndex" value="${status.index}"/>
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td style="text-align:left;word-wrap:break-word;word-break:break-all;">
${w:shorten(e.id, 80)}</td>
<td>${w:format(e.totalCount,'#,###,###,###,##0')}</td>
......
......@@ -50,7 +50,7 @@
<th>QPS</th>
</tr>
<c:forEach var="callInfo" items="${model.hostInfo.callProjectsInfo}" varStatus="status">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td class="left">${callInfo.type}</td>
<td class="left"><a href="?op=historyMethod&domain=${model.domain}&reportType=${model.reportType}&date=${model.date}&ip=${model.ipAddress}&remote=${callInfo.ip }&project=${payload.projectName}${model.customDate}">${callInfo.ip}</a></td>
<td>${w:format(callInfo.totalCount,'#,###,###,###,##0')}</td>
......@@ -74,7 +74,7 @@
<th>QPS</th>
</tr>
<c:forEach var="serviceInfo" items="${model.hostInfo.serviceProjectsInfo}" varStatus="status">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td class="left">${serviceInfo.type}</td>
<td class="left"><a href="?op=historyMethod&domain=${model.domain}&reportType=${model.reportType}&date=${model.date}&ip=${model.ipAddress}&remote=${serviceInfo.ip}&project=${payload.projectName}${model.customDate}">${serviceInfo.ip}</a></td>
<td>${w:format(serviceInfo.totalCount,'#,###,###,###,##0')}</td>
......
......@@ -68,7 +68,7 @@
<th>QPS</th>
</tr>
<c:forEach var="callInfo" items="${model.methodInfo.callProjectsInfo}" varStatus="status">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td class="left">${callInfo.type}</td>
<td class="left">${callInfo.ip}</td>
<td class="left">${callInfo.id}</td>
......@@ -95,7 +95,7 @@
<th>QPS</th>
</tr>
<c:forEach var="serviceInfo" items="${model.methodInfo.serviceProjectsInfo}" varStatus="status">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td class="left">${serviceInfo.type}</td>
<td class="left">${serviceInfo.ip}</td>
<td class="left">${serviceInfo.id}</td>
......
......@@ -50,7 +50,7 @@
<th>QPS</th>
</tr>
<c:forEach var="callInfo" items="${model.projectInfo.callProjectsInfo}" varStatus="status">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td class="left">${callInfo.type}</td>
<td class="left"><a href="?op=historyHost&domain=${model.domain}&reportType=${model.reportType}&date=${model.date}&ip=${model.ipAddress}&project=${callInfo.projectName}${model.customDate}">${callInfo.projectName}</a></td>
<td>${w:format(callInfo.totalCount,'#,###,###,###,##0')}</td>
......@@ -73,7 +73,7 @@
<th>QPS</th>
</tr>
<c:forEach var="serviceInfo" items="${model.projectInfo.serviceProjectsInfo}" varStatus="status">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td class="left">${serviceInfo.type}</td>
<td class="left"><a href="?op=historyHost&domain=${model.domain}&reportType=${model.reportType}&date=${model.date}&ip=${model.ipAddress}&project=${serviceInfo.projectName}${model.customDate}">${serviceInfo.projectName}</a></td>
<td>${w:format(serviceInfo.totalCount,'#,###,###,###,##0')}</td>
......@@ -97,7 +97,7 @@
<th>QPS</th>
</tr>
<c:forEach var="serviceInfo" items="${model.projectInfo.callServiceProjectsInfo}" varStatus="status">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td class="left">${serviceInfo.type}</td>
<td class="left">${serviceInfo.projectName}</td>
<td>${w:format(serviceInfo.totalCount,'#,###,###,###,##0')}</td>
......
......@@ -50,7 +50,7 @@
<th>QPS</th>
</tr>
<c:forEach var="callInfo" items="${model.hostInfo.callProjectsInfo}" varStatus="status">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td class="left">${callInfo.type}</td>
<td class="left"><a href="?op=method&domain=${model.domain}&date=${model.date}&ip=${model.ipAddress}&remote=${callInfo.ip}&project=${payload.projectName}">${callInfo.ip}</a></td>
<td>${w:format(callInfo.totalCount,'#,###,###,###,##0')}</td>
......@@ -75,7 +75,7 @@
<th>QPS</th>
</tr>
<c:forEach var="serviceInfo" items="${model.hostInfo.serviceProjectsInfo}" varStatus="status">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td class="left">${serviceInfo.type}</td>
<td class="left"><a href="?op=method&domain=${model.domain}&date=${model.date}&ip=${model.ipAddress}&remote=${serviceInfo.ip}&project=${payload.projectName}">${serviceInfo.ip}</a></td>
<td>${w:format(serviceInfo.totalCount,'#,###,###,###,##0')}</td>
......
......@@ -65,7 +65,7 @@
<th>QPS</th>
</tr>
<c:forEach var="callInfo" items="${model.methodInfo.callProjectsInfo}" varStatus="status">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td class="left">${callInfo.type}</td>
<td class="left">${callInfo.ip}</td>
<td class="left">${callInfo.id}</td>
......@@ -92,7 +92,7 @@
<th>QPS</th>
</tr>
<c:forEach var="serviceInfo" items="${model.methodInfo.serviceProjectsInfo}" varStatus="status">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td class="left">${serviceInfo.type}</td>
<td class="left">${serviceInfo.ip}</td>
<td class="left">${serviceInfo.id}</td>
......
......@@ -52,8 +52,8 @@
<th>Avg(ms)</th>
</tr></thead><tbody>
<c:forEach var="item" items="${model.info.items}" varStatus="status">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<td>${item.type}</td>
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td class="left">${item.type}</td>
<td>${item.domain}</td>
<td>${item.ip}</td>
<td>${item.method}</td>
......
......@@ -43,7 +43,7 @@
varStatus="status">
<c:set var="e" value="${item.detail}" />
<c:set var="lastIndex" value="${status.index}" />
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td style="text-align: left">
<a href="?op=historyGraph&domain=${model.domain}&date=${model.date}&ip=${model.ipAddress}&reportType=${model.reportType}&type=${item.type}${model.customDate}" class="history_graph_link" data-status="${status.index}">[:: show ::]</a>
&nbsp;&nbsp;&nbsp;<a href="?op=history&domain=${model.domain}&date=${model.date}&ip=${model.ipAddress}&reportType=${model.reportType}&type=${item.type}${model.customDate}">${item.type}</a></td>
......@@ -70,7 +70,7 @@
varStatus="status">
<c:set var="e" value="${item.detail}" />
<c:set var="lastIndex" value="${status.index}" />
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td style="text-align: left">
<a href="?op=historyGraph&domain=${model.domain}&date=${model.date}&ip=${model.ipAddress}&reportType=${model.reportType}&type=${payload.type}&name=${e.id}${model.customDate}" class="history_graph_link" data-status="${status.index}">[:: show ::]</a>
&nbsp;&nbsp;&nbsp;${e.id}</td>
......
......@@ -13,7 +13,6 @@
<br>
<table class='data'>
<tr>
<th class="left" rowspan="2">Type</th>
<th class="left" rowspan="2"><a href="?date=${model.date}&domain=${model.domain}&sort=Name">Name</a></th>
<th rowspan="2" title="所有请求中总次数"><a href="?date=${model.date}&domain=${model.domain}&sort=Count">Total<br/>Hits</a></th>
......
......@@ -50,7 +50,7 @@
</tr>
<c:forEach var="item" items="${model.matrix.matrixs}"
varStatus="status">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td class="left">${item.type}</td>
<td class="left longText" style="white-space:normal">${w:shorten(item.name, 120)}</td>
<td>${item.count}</td>
......
......@@ -73,7 +73,7 @@
&nbsp;&nbsp;${statistics.value.type}
</td>
<td rowspan="${w:size(statistics.value.status)*2}"
class="${typeIndex.index mod 2 != 0 ? 'even' : 'odd'} top">${w:format(statistics.value.count,'#,###,###,###,##0')}</td>
class="${typeIndex.index mod 2 != 0 ? 'even' : 'odd'} top right">${w:format(statistics.value.count,'#,###,###,###,##0')}</td>
<c:forEach var="status" items="${statistics.value.status}"
varStatus="index">
<c:if test="${index.index != 0}">
......@@ -83,7 +83,7 @@
<a href="?op=historyGraph&domain=${model.domain}&date=${model.date}&ip=${model.ipAddress}&reportType=${model.reportType}&type=${statistics.value.type}&status=${status.value.status}${model.customDate}" class="problem_status_graph_link" data-status="${statistics.value.type}${status.value.status}">[:: show ::]</a>
&nbsp;${status.value.status}
</td>
<td class="${index.index mod 2 != 0 ? 'even' : 'odd'}"> ${w:format(status.value.count,'#,###,###,###,##0')}</td>
<td class="${index.index mod 2 != 0 ? 'even' : 'odd'} right"> ${w:format(status.value.count,'#,###,###,###,##0')}</td>
<td class="${index.index mod 2 != 0 ? 'even' : 'odd'}"><c:forEach
var="links" items="${status.value.links}" varStatus="linkIndex">
<a href="${model.logViewBaseUri}/${links}?domain=${model.domain}">${linkIndex.first?'L':(linkIndex.last?'g':'o')}</a>
......
......@@ -58,7 +58,7 @@
</tr>
<c:forEach var="item" items="${model.displaySqlReport.results}"
varStatus="status">
<tr class="${status.index mod 2==0 ? 'even' : 'odd'}">
<tr class="${status.index mod 2==0 ? 'even' : 'odd'} right">
<td class="left"><a href="" class="sql_graph_link" data-status="${status.index}">[:: show ::]</a></td>
<td class="left">${item.id}</td>
<td>${w:format(item.totalCount,'#,###,###,###,##0')}</td>
......
......@@ -44,15 +44,14 @@
</table>
<table width="80%">
<tr>
<td width="5%"></td>
<td width="30%">指标</td>
<td width="20%"></td>
<td width="45%">备注</td>
<th width="35%" colspan=2>指标</th>
<th width="20%"></th>
<th width="45%">备注</th>
</tr>
<tr class='odd'>
<td><a href="?op=graph&ip=${model.ipAddress}&date=${model.date}&key=total" data-status="total" class="state_graph_link">[:: show ::]</a></td>
<td>处理消息总量</td>
<td>${w:format(model.state.total.total,'#,###,###,###,##0.#')}</td>
<td class="right">${w:format(model.state.total.total,'#,###,###,###,##0.#')}</td>
<td>服务器接受到消息总量</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="total" style="display:none"></div></td></tr>
......@@ -60,8 +59,8 @@
<td><a href="?op=graph&ip=${model.ipAddress}&date=${model.date}&key=totalLoss" data-status="totalLoss" class="state_graph_link">[:: show ::]</a></td>
<td>丢失消息总量</td>
<c:choose>
<c:when test="${model.state.total.totalLoss > 0}"><td style="color:red;">${w:format(model.state.total.totalLoss,'#,###,###,###,##0.#')}</td></c:when>
<c:otherwise><td>${w:format(model.state.total.totalLoss,'#,###,###,###,##0.#')}</td></c:otherwise>
<c:when test="${model.state.total.totalLoss > 0}"><td class="right" style="color:red;">${w:format(model.state.total.totalLoss,'#,###,###,###,##0.#')}</td></c:when>
<c:otherwise><td class="right">${w:format(model.state.total.totalLoss,'#,###,###,###,##0.#')}</td></c:otherwise>
</c:choose>
<td>服务器进行encode以及analyze处理来不及而丢失消息总量</td>
</tr>
......@@ -69,21 +68,21 @@
<tr class='odd'>
<td><a href="?op=graph&ip=${model.ipAddress}&date=${model.date}&key=avgTps" data-status="avgTps" class="state_graph_link">[:: show ::]</a></td>
<td>每分钟平均处理数</td>
<td>${w:format(model.state.total.avgTps,'###,###,###,##0')}</td>
<td class="right">${w:format(model.state.total.avgTps,'###,###,###,##0')}</td>
<td>平均每分钟处理消息量</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="avgTps" style="display:none"></div></td></tr>
<tr class='even'>
<td><a href="?op=graph&ip=${model.ipAddress}&date=${model.date}&key=maxTps" data-status="maxTps" class="state_graph_link">[:: show ::]</a></td>
<td>单台机器每分钟最大处理数</td>
<td>${w:format(model.state.total.maxTps,'###,###,###,##0')}</td>
<td class="right">${w:format(model.state.total.maxTps,'###,###,###,##0')}</td>
<td>单台机器平均每分钟最大处理消息数目</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="maxTps" style="display:none"></div></td></tr>
<tr class='odd'>
<td><a href="?op=graph&ip=${model.ipAddress}&date=${model.date}&key=dump" data-status="dump" class="state_graph_link">[:: show ::]</a></td>
<td>gzip压缩成功消息数量</td>
<td>${w:format(model.state.total.dump,'###,###,###,##0')}</td>
<td class="right">${w:format(model.state.total.dump,'###,###,###,##0')}</td>
<td>将消息进行gzip压缩消息数目</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="dump" style="display:none"></div></td></tr>
......@@ -91,8 +90,8 @@
<td><a href="?op=graph&ip=${model.ipAddress}&date=${model.date}&key=dumpLoss" data-status="dumpLoss" class="state_graph_link">[:: show ::]</a></td>
<td>gzip来不及压缩丢失消息数量</td>
<c:choose>
<c:when test="${model.state.total.dumpLoss > 0}"><td style="color:red;">${w:format(model.state.total.dumpLoss,'#,###,###,###,##0.#')}</td></c:when>
<c:otherwise><td>${w:format(model.state.total.dumpLoss,'#,###,###,###,##0.#')}</td></c:otherwise>
<c:when test="${model.state.total.dumpLoss > 0}"><td class="right" style="color:red;">${w:format(model.state.total.dumpLoss,'#,###,###,###,##0.#')}</td></c:when>
<c:otherwise><td class="right">${w:format(model.state.total.dumpLoss,'#,###,###,###,##0.#')}</td></c:otherwise>
</c:choose>
<td>将消息进行gzip压缩,gzip线程太忙而丢失消息丢失数目</td>
</tr>
......@@ -100,49 +99,49 @@
<tr class='odd'>
<td><a href="?op=graph&ip=${model.ipAddress}&date=${model.date}&key=pigeonTimeError" data-status="pigeonTimeError" class="state_graph_link">[:: show ::]</a></td>
<td>两台机器时钟不准导致消息存储丢失</td>
<td>${w:format(model.state.total.pigeonTimeError,'###,###,###,##0')}</td>
<td class="right">${w:format(model.state.total.pigeonTimeError,'###,###,###,##0')}</td>
<td>这个场景用于Pigeon,服务端id是由客户端产生,客户端和服务端时钟差2小时,会导致存储丢失</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="pigeonTimeError" style="display:none"></div></td></tr>
<tr class='even'>
<td><a href="?op=graph&ip=${model.ipAddress}&date=${model.date}&key=networkTimeError" data-status="networkTimeError" class="state_graph_link">[:: show ::]</a></td>
<td>网络传输或者客户端延迟发送导致消息丢失</td>
<td>${w:format(model.state.total.networkTimeError,'###,###,###,##0')}</td>
<td class="right">${w:format(model.state.total.networkTimeError,'###,###,###,##0')}</td>
<td>CAT分小时处理,当一个小时过去了,默认会延迟3分钟结束当前小时,在3分钟后还接受上个小时消息,直接丢弃</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="networkTimeError" style="display:none"></div></td></tr>
<tr class='odd'>
<td><a href="?op=graph&ip=${model.ipAddress}&date=${model.date}&key=blockTotal" data-status="blockTotal" class="state_graph_link">[:: show ::]</a></td>
<td>存储消息块数量</td>
<td>${w:format(model.state.total.blockTotal,'###,###,###,##0')}</td>
<td class="right">${w:format(model.state.total.blockTotal,'###,###,###,##0')}</td>
<td>CAT是分块存储,消息块成功放入存储队列</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="blockTotal" style="display:none"></div></td></tr>
<tr class='even'>
<td><a href="?op=graph&ip=${model.ipAddress}&date=${model.date}&key=blockLoss" data-status="blockLoss" class="state_graph_link">[:: show ::]</a></td>
<td>存储消息块丢失数量</td>
<td>${w:format(model.state.total.blockLoss,'###,###,###,##0')}</td>
<td class="right">${w:format(model.state.total.blockLoss,'###,###,###,##0')}</td>
<td>将存储块写入磁盘的线程太忙,存储队列溢出的消息块数量</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="blockLoss" style="display:none"></div></td></tr>
<tr class='odd'>
<td><a href="?op=graph&ip=${model.ipAddress}&date=${model.date}&key=blockTime" data-status="blockTime" class="state_graph_link">[:: show ::]</a></td>
<td>存储消息块花费时间(分钟)</td>
<td>${w:format(model.state.total.blockTime/1000/60,'###,###,###,##0')}</td>
<td class="right">${w:format(model.state.total.blockTime/1000/60,'###,###,###,##0')}</td>
<td>存储消息花费的CPU时间</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="blockTime" style="display:none"></div></td></tr>
<tr class='even'>
<td><a href="?op=graph&ip=${model.ipAddress}&date=${model.date}&key=size" data-status="size" class="state_graph_link">[:: show ::]</a></td>
<td>压缩前消息大小(GB)</td>
<td>${w:format(model.state.total.size/1024/1024/1024,'0.00#')}</td>
<td class="right">${w:format(model.state.total.size/1024/1024/1024,'0.00#')}</td>
<td>压缩前所有存储消息的总大小</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="size" style="display:none"></div></td></tr>
<tr class='odd'>
<td><a href="?op=graph&ip=${model.ipAddress}&date=${model.date}&key=delayAvg" data-status="delayAvg" class="state_graph_link">[:: show ::]</a></td>
<td>系统处理延迟(ms)</td>
<td>${w:format(model.state.total.delayAvg,'0.#')}</td>
<td class="right">${w:format(model.state.total.delayAvg,'0.#')}</td>
<td>客户端产生消息,到服务端存储之间的时钟误差。(在机器时钟完全准确的情况下)</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="delayAvg" style="display:none"></div></td></tr>
......
......@@ -41,15 +41,16 @@
</table>
<table width="80%">
<tr>
<td width="5%"></td>
<td width="30%">指标</td>
<td width="20%"></td>
<td width="45%">备注</td>
<tr>
<th width="35%" colspan=2>指标</th>
<th width="20%"></th>
<th width="45%">备注</th>
</tr>
</tr>
<tr class='odd'>
<td><a href="?op=historyGraph&ip=${model.ipAddress}&reportType=${model.reportType}&date=${model.date}&key=total" data-status="total" class="state_graph_link">[:: show ::]</a></td>
<td>处理消息总量</td>
<td>${w:format(model.state.total.total,'#,###,###,###,##0.#')}</td>
<td class="right">${w:format(model.state.total.total,'#,###,###,###,##0.#')}</td>
<td>服务器接受到消息总量</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="total" style="display:none"></div></td></tr>
......@@ -57,8 +58,8 @@
<td><a href="?op=historyGraph&ip=${model.ipAddress}&reportType=${model.reportType}&date=${model.date}&key=totalLoss" data-status="totalLoss" class="state_graph_link">[:: show ::]</a></td>
<td>丢失消息总量</td>
<c:choose>
<c:when test="${model.state.total.totalLoss > 0}"><td style="color:red;">${w:format(model.state.total.totalLoss,'#,###,###,###,##0.#')}</td></c:when>
<c:otherwise><td>${w:format(model.state.total.totalLoss,'#,###,###,###,##0.#')}</td></c:otherwise>
<c:when test="${model.state.total.totalLoss > 0}"><td class="right" style="color:red;">${w:format(model.state.total.totalLoss,'#,###,###,###,##0.#')}</td></c:when>
<c:otherwise><td class="right">${w:format(model.state.total.totalLoss,'#,###,###,###,##0.#')}</td></c:otherwise>
</c:choose>
<td>服务器进行encode以及analyze处理来不及而丢失消息总量</td>
</tr>
......@@ -66,21 +67,21 @@
<tr class='odd'>
<td><a href="?op=historyGraph&ip=${model.ipAddress}&reportType=${model.reportType}&date=${model.date}&key=avgTps" data-status="avgTps" class="state_graph_link">[:: show ::]</a></td>
<td>每分钟平均处理数</td>
<td>${w:format(model.state.total.avgTps,'###,###,###,##0')}</td>
<td class="right">${w:format(model.state.total.avgTps,'###,###,###,##0')}</td>
<td>平均每分钟处理消息量</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="avgTps" style="display:none"></div></td></tr>
<tr class='even'>
<td><a href="?op=historyGraph&ip=${model.ipAddress}&reportType=${model.reportType}&date=${model.date}&key=maxTps" data-status="maxTps" class="state_graph_link">[:: show ::]</a></td>
<td>单台机器每分钟最大处理数</td>
<td>${w:format(model.state.total.maxTps,'###,###,###,##0')}</td>
<td class="right">${w:format(model.state.total.maxTps,'###,###,###,##0')}</td>
<td>单台机器平均每分钟最大处理消息数目</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="maxTps" style="display:none"></div></td></tr>
<tr class='odd'>
<td><a href="?op=historyGraph&ip=${model.ipAddress}&reportType=${model.reportType}&date=${model.date}&key=dump" data-status="dump" class="state_graph_link">[:: show ::]</a></td>
<td>gzip压缩成功消息数量</td>
<td>${w:format(model.state.total.dump,'###,###,###,##0')}</td>
<td class="right">${w:format(model.state.total.dump,'###,###,###,##0')}</td>
<td>将消息进行gzip压缩消息数目</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="dump" style="display:none"></div></td></tr>
......@@ -88,8 +89,8 @@
<td><a href="?op=historyGraph&ip=${model.ipAddress}&reportType=${model.reportType}&date=${model.date}&key=dumpLoss" data-status="dumpLoss" class="state_graph_link">[:: show ::]</a></td>
<td>gzip来不及压缩丢失消息数量</td>
<c:choose>
<c:when test="${model.state.total.dumpLoss > 0}"><td style="color:red;">${w:format(model.state.total.dumpLoss,'#,###,###,###,##0.#')}</td></c:when>
<c:otherwise><td>${w:format(model.state.total.dumpLoss,'#,###,###,###,##0.#')}</td></c:otherwise>
<c:when test="${model.state.total.dumpLoss > 0}"><td class="right" style="color:red;">${w:format(model.state.total.dumpLoss,'#,###,###,###,##0.#')}</td></c:when>
<c:otherwise><td class="right">${w:format(model.state.total.dumpLoss,'#,###,###,###,##0.#')}</td></c:otherwise>
</c:choose>
<td>将消息进行gzip压缩,gzip线程太忙而丢失消息丢失数目</td>
</tr>
......@@ -97,49 +98,49 @@
<tr class='odd'>
<td><a href="?op=historyGraph&ip=${model.ipAddress}&reportType=${model.reportType}&date=${model.date}&key=pigeonTimeError" data-status="pigeonTimeError" class="state_graph_link">[:: show ::]</a></td>
<td>两台机器时钟不准导致消息存储丢失</td>
<td>${w:format(model.state.total.pigeonTimeError,'###,###,###,##0')}</td>
<td class="right">${w:format(model.state.total.pigeonTimeError,'###,###,###,##0')}</td>
<td>这个场景用于Pigeon,服务端id是由客户端产生,客户端和服务端时钟差2小时,会导致存储丢失</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="pigeonTimeError" style="display:none"></div></td></tr>
<tr class='even'>
<td><a href="?op=historyGraph&ip=${model.ipAddress}&reportType=${model.reportType}&date=${model.date}&key=networkTimeError" data-status="networkTimeError" class="state_graph_link">[:: show ::]</a></td>
<td>网络传输或者客户端延迟发送导致消息丢失</td>
<td>${w:format(model.state.total.networkTimeError,'###,###,###,##0')}</td>
<td class="right">${w:format(model.state.total.networkTimeError,'###,###,###,##0')}</td>
<td>CAT分小时处理,当一个小时过去了,默认会延迟3分钟结束当前小时,在3分钟后还接受上个小时消息,直接丢弃</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="networkTimeError" style="display:none"></div></td></tr>
<tr class='odd'>
<td><a href="?op=historyGraph&ip=${model.ipAddress}&reportType=${model.reportType}&date=${model.date}&key=blockTotal" data-status="blockTotal" class="state_graph_link">[:: show ::]</a></td>
<td>存储消息块数量</td>
<td>${w:format(model.state.total.blockTotal,'###,###,###,##0')}</td>
<td class="right">${w:format(model.state.total.blockTotal,'###,###,###,##0')}</td>
<td>CAT是分块存储,消息块成功放入存储队列</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="blockTotal" style="display:none"></div></td></tr>
<tr class='even'>
<td><a href="?op=historyGraph&ip=${model.ipAddress}&reportType=${model.reportType}&date=${model.date}&key=blockLoss" data-status="blockLoss" class="state_graph_link">[:: show ::]</a></td>
<td>存储消息块丢失数量</td>
<td>${w:format(model.state.total.blockLoss,'###,###,###,##0')}</td>
<td class="right">${w:format(model.state.total.blockLoss,'###,###,###,##0')}</td>
<td>将存储块写入磁盘的线程太忙,存储队列溢出的消息块数量</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="blockLoss" style="display:none"></div></td></tr>
<tr class='odd'>
<td><a href="?op=historyGraph&ip=${model.ipAddress}&reportType=${model.reportType}&date=${model.date}&key=blockTime" data-status="blockTime" class="state_graph_link">[:: show ::]</a></td>
<td>存储消息块花费时间(分钟)</td>
<td>${w:format(model.state.total.blockTime/1000/60,'###,###,###,##0')}</td>
<td class="right">${w:format(model.state.total.blockTime/1000/60,'###,###,###,##0')}</td>
<td>存储消息花费的CPU时间</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="blockTime" style="display:none"></div></td></tr>
<tr class='even'>
<td><a href="?op=historyGraph&ip=${model.ipAddress}&reportType=${model.reportType}&date=${model.date}&key=size" data-status="size" class="state_graph_link">[:: show ::]</a></td>
<td>压缩前消息大小(GB)</td>
<td>${w:format(model.state.total.size/1024/1024/1024,'0.00#')}</td>
<td class="right">${w:format(model.state.total.size/1024/1024/1024,'0.00#')}</td>
<td>压缩前所有存储消息的总大小</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="size" style="display:none"></div></td></tr>
<tr class='odd'>
<td><a href="?op=historyGraph&ip=${model.ipAddress}&reportType=${model.reportType}&date=${model.date}&key=delayAvg" data-status="delayAvg" class="state_graph_link">[:: show ::]</a></td>
<td>系统处理延迟(ms)</td>
<td>${w:format(model.state.total.delayAvg,'0.#')}</td>
<td class="right">${w:format(model.state.total.delayAvg,'0.#')}</td>
<td>客户端产生消息,到服务端存储之间的时钟误差。(在机器时钟完全准确的情况下)</td>
</tr>
<tr class="graphs"><td colspan="4"><div id="delayAvg" style="display:none"></div></td></tr>
......
......@@ -51,7 +51,7 @@
varStatus="status">
<c:set var="e" value="${item.detail}" />
<c:set var="lastIndex" value="${status.index}" />
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td style="text-align: left">
<a href="?op=historyGraph&domain=${model.domain}&date=${model.date}&ip=${model.ipAddress}&reportType=${model.reportType}&type=${item.type}${model.customDate}" class="history_graph_link" data-status="${status.index}">[:: show ::]</a>
&nbsp;&nbsp;&nbsp;<a href="?op=history&domain=${model.domain}&date=${model.date}&ip=${model.ipAddress}&reportType=${model.reportType}&type=${item.type}${model.customDate}">${item.type}</a></td>
......@@ -105,7 +105,7 @@
varStatus="status">
<c:set var="e" value="${item.detail}" />
<c:set var="lastIndex" value="${status.index}" />
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'}">
<tr class="${status.index mod 2 != 0 ? 'odd' : 'even'} right">
<td class="longText" style="text-align:left;white-space:normal">
<c:choose>
<c:when test="${status.index > 0}">
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册