bpmDruidSqlDetail.jsp 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178
  1. <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
  2. <%@include file="/commons/include/html_doctype.html"%>
  3. <%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
  4. <%@taglib prefix="f" uri="http://www.jee-soft.cn/functions"%>
  5. <%@taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions"%>
  6. <%@taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt"%>
  7. <html>
  8. <head>
  9. <title>Druid SQL执行状态监控详细信息</title>
  10. <%@include file="/commons/include/get.jsp"%>
  11. <!--[if lt IE 9]><script type="text/javascript" src="excanvas.js"></script><![endif]-->
  12. <script type="text/javascript" src="${ctx}/js/jquery/plugins/jquery.jqplot.min.js"></script>
  13. <%-- <link rel="stylesheet" type="text/css" href="${ctx}/js/jquery/plugins/jquery.jqplot.min.css" /> --%>
  14. <f:link href="jqplot/jquery.jqplot.min.css"></f:link>
  15. <script type="text/javascript" src="${ctx}/js/jquery/plugins/jqplotPlugins/jqplot.barRenderer.min.js"></script>
  16. <script type="text/javascript" src="${ctx}/js/jquery/plugins/jqplotPlugins/jqplot.categoryAxisRenderer.min.js"></script>
  17. <script type="text/javascript" src="${ctx}/js/jquery/plugins/jqplotPlugins/jqplot.pointLabels.min.js"></script>
  18. <script type="text/javascript">
  19. $(function(){
  20. //Histogram
  21. var targetId='divHistogramChart';
  22. var data=new Array();
  23. var title="执行统计图";
  24. data[0]=${sqlStatData['HistogramJsAry']};
  25. var ticks=new Array('1-10 ms',
  26. '10-100 ms',
  27. '100ms-1 s',
  28. '1-10 s',
  29. '10-100 s',
  30. '100-1000 s',
  31. '> 1000 s');
  32. generateChart(targetId,data,title,ticks);
  33. //Histogram
  34. targetId='divFetchRowCountHistogramChart';
  35. data=new Array();
  36. title="获取记录统计直方图";
  37. data[0]=${sqlStatData['FetchRowCountHistogramJsAry']};
  38. ticks=new Array(
  39. '0-9行',
  40. '10-99行',
  41. '100-999行',
  42. '1000-9999行',
  43. '> 9999行');
  44. generateChart(targetId,data,title,ticks);
  45. //Histogram
  46. targetId='divEffectedRowCountHistogramChart';
  47. data=new Array();
  48. title="更新统计直方图";
  49. data[0]=${sqlStatData['EffectedRowCountHistogramJsAry']};
  50. ticks=new Array(
  51. '0-9行',
  52. '10-99行',
  53. '100-999行',
  54. '1000-9999行',
  55. '> 9999行');
  56. generateChart(targetId,data,title,ticks);
  57. targetId='divExecuteAndResultHoldTimeHistogramChart';
  58. data=new Array();
  59. title="ExecAndRsHold";
  60. data[0]=${sqlStatData['ExecuteAndResultHoldTimeHistogramJsAry']};
  61. ticks=new Array(
  62. '1-10 ms',
  63. '10-100 ms',
  64. '100ms-1 s',
  65. '1-10 s',
  66. '10-100 s',
  67. '100-1000 s',
  68. '> 1000 s');
  69. generateChart(targetId,data,title,ticks);
  70. });
  71. function generateChart(targetId,data,title,ticks){
  72. $.jqplot(targetId, data,{
  73. title:title,
  74. animate: !$.jqplot.use_excanvas,
  75. seriesDefaults:{
  76. renderer:$.jqplot.BarRenderer,
  77. pointLabels: { show: true }
  78. },
  79. axes: {
  80. xaxis: {
  81. renderer: $.jqplot.CategoryAxisRenderer,
  82. ticks: ticks
  83. }
  84. },
  85. highlighter: { show: false }
  86. });
  87. }
  88. </script>
  89. </head>
  90. <body>
  91. <div class="panel">
  92. <div class="panel-body">
  93. <div class="panel-toolbar">
  94. <div class="toolBar">
  95. <div class="group"><a class="link back" href="sql.ht">返回</a></div>
  96. </div>
  97. </div>
  98. <div class="panel-data">
  99. <table class="table-detail" id="tblSqlStat" cellpadding="1" cellspacing="1">
  100. <tr>
  101. <th>完整SQL语句</th>
  102. <td>
  103. <textarea style='width: 99%; height: 120px;; border: 1px #A8C7CE solid; line-height: 20px; font-size: 12px;'>${sqlStatData['formatSQL']}
  104. </textarea></td>
  105. </tr>
  106. <tr>
  107. <th>执行次数</th>
  108. <td>${sqlStatData['ExecuteCount'] }</td>
  109. </tr>
  110. <tr>
  111. <th>总执行时间(毫秒)</th>
  112. <td>${sqlStatData['TotalTime'] }</td>
  113. </tr>
  114. <tr>
  115. <th>最大执行时间(毫秒)</th>
  116. <td>${sqlStatData['MaxTimespan'] }</td>
  117. </tr>
  118. <tr>
  119. <th>在事务中执行次数</th>
  120. <td>${sqlStatData['InTransactionCount'] }</td>
  121. </tr>
  122. <tr>
  123. <th>错误次数</th>
  124. <td>${sqlStatData['ErrorCount'] }</td>
  125. </tr>
  126. <tr>
  127. <th>影响记录数</th>
  128. <td>${sqlStatData['EffectedRowCount'] }</td>
  129. </tr>
  130. <tr>
  131. <th>获取记录数</th>
  132. <td>${sqlStatData['FetchRowCount'] }</td>
  133. </tr>
  134. <tr>
  135. <th>正在运行数</th>
  136. <td>${sqlStatData['RunningCount'] }</td>
  137. </tr>
  138. <tr>
  139. <th>并发数</th>
  140. <td>${sqlStatData['ConcurrentMax'] }</td>
  141. </tr>
  142. <tr>
  143. <th>执行统计直方图</th>
  144. <td><div id="divHistogramChart" style="height: 400px; width: 600px;"></div></td>
  145. </tr>
  146. <tr>
  147. <th>获取记录统计直方图</th>
  148. <td><div id="divFetchRowCountHistogramChart" style="height: 400px; width: 600px;"></div></td>
  149. </tr>
  150. <tr>
  151. <th>更新统计直方图</th>
  152. <td><div id="divEffectedRowCountHistogramChart" style="height: 400px; width: 600px;"></div></td>
  153. </tr>
  154. <tr>
  155. <th>ExecAndRsHold</th>
  156. <td><div id="divExecuteAndResultHoldTimeHistogramChart" style="height: 400px; width: 600px;"></div></td>
  157. </tr>
  158. </table>
  159. </div>
  160. </div>
  161. <!-- end of panel-body -->
  162. </div>
  163. <!-- end of panel -->
  164. </body>
  165. </html>