dashboard.html 17 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394
  1. <!doctype html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="utf-8" />
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
  6. <title>Monitor</title>
  7. <meta content='width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0' name='viewport' />
  8. <meta name="viewport" content="width=device-width" />
  9. <!-- Bootstrap core CSS -->
  10. <link href="{{context}}/static/css/bootstrap.min.css" rel="stylesheet" />
  11. <!-- Animation library for notifications -->
  12. <link href="{{context}}/static/css/animate.min.css" rel="stylesheet"/>
  13. <!-- Dashboard core CSS -->
  14. <link href="{{context}}/static/css/dashboard.css" rel="stylesheet"/>
  15. <!-- Fonts and icons -->
  16. <link href="http://maxcdn.bootstrapcdn.com/font-awesome/latest/css/font-awesome.min.css" rel="stylesheet">
  17. <!--
  18. <link href='https://fonts.googleapis.com/css?family=Muli:400,300' rel='stylesheet' type='text/css'>
  19. -->
  20. <link href="{{context}}/static/css/themify-icons.css" rel="stylesheet">
  21. <!-- Core JS Files -->
  22. <script src="{{context}}/static/js/jquery-1.10.2.js" type="text/javascript"></script>
  23. <script src="{{context}}/static/js/bootstrap.min.js" type="text/javascript"></script>
  24. <!-- Checkbox, Radio & Switch Plugins -->
  25. <script src="{{context}}/static/js/bootstrap-checkbox-radio.js"></script>
  26. <!-- Charts Plugin -->
  27. <script src="{{context}}/static/js/chartist.min.js"></script>
  28. <!-- Notifications Plugin -->
  29. <script src="{{context}}/static/js/bootstrap-notify.js"></script>
  30. <!-- Google Maps Plugin
  31. <script type="text/javascript" src="https://maps.googleapis.com/maps/api/js"></script>
  32. -->
  33. <!-- Dashboard Core javascript and methods for Demo purpose -->
  34. <script src="{{context}}/static/js/default.js"></script>
  35. <!-- Dashboard DEMO methods, don't include it in your project! -->
  36. <script src="{{context}}/static/js/dashboard.js"></script>
  37. <script src="{{context}}/static/js/jx/dom.js"></script>
  38. <script src="{{context}}/static/js/jx/rpc.js"></script>
  39. <script src="{{context}}/static/js/jx/utils.js"></script>
  40. <script type="text/javascript">
  41. var URI_CONTEXT="{{context}}"
  42. $(document).ready(function(){
  43. var lobservers = [
  44. g.summary.factory('/1/get/summary/app_resources',function(r){
  45. //r = JSON.parse(r.responseText)
  46. jx.dom.set.value('total_cpu',r.cpu_usage)
  47. jx.dom.set.value('total_mem',r.memory_usage)
  48. jx.dom.set.value('mem_units',r.units)
  49. }),
  50. g.summary.factory('/1/get/summary/folder_size',function(r){
  51. //console.log(r.responseText)
  52. //r = JSON.parse(r.responseText)
  53. if (r.length == 0){
  54. r.size = "0.0"
  55. r.units = 'MB'
  56. }
  57. jx.dom.set.value('total_folder_size',r.size)
  58. jx.dom.set.value('folder_units',r.units)
  59. }),
  60. g.summary.factory('/1/get/summary/app_status',function(r){
  61. jx.dom.set.value('total_app_crashes',r.crash)
  62. })
  63. ]
  64. jx.utils.patterns.observer(lobservers,"init")
  65. dashboard.initChartist();
  66. });
  67. </script>
  68. </head>
  69. <body>
  70. <div class="wrapper">
  71. <div class="sidebar" data-background-color="white" data-active-color="danger">
  72. <!--
  73. Tip 1: you can change the color of the sidebar's background using: data-background-color="white | black"
  74. Tip 2: you can change the color of the active button using the data-active-color="primary | info | success | warning | danger"
  75. -->
  76. <div class="sidebar-wrapper">
  77. <div class="logo">
  78. <a href="#" class="simple-text">
  79. Monitor
  80. </a>
  81. </div>
  82. <ul class="nav">
  83. <li class="active">
  84. <a href="dashboard.html">
  85. <i class="ti-panel"></i>
  86. <p>Dashboard</p>
  87. </a>
  88. </li>
  89. <li>
  90. <a href= "/user">
  91. <i class="ti-user"></i>
  92. <p>User Profile</p>
  93. </a>
  94. </li>
  95. <li class="active-pro">
  96. <a href="/upgrade">
  97. <i class="ti-export"></i>
  98. <p>Upgrade to PRO</p>
  99. </a>
  100. </li>
  101. </ul>
  102. </div>
  103. </div>
  104. <!-- End Side Bar -->
  105. <div class="main-panel">
  106. <nav class="navbar navbar-default">
  107. <div class="container-fluid">
  108. <div class="navbar-header">
  109. <button type="button" class="navbar-toggle">
  110. <span class="sr-only">Toggle navigation</span>
  111. <span class="icon-bar bar1"></span>
  112. <span class="icon-bar bar2"></span>
  113. <span class="icon-bar bar3"></span>
  114. </button>
  115. <a class="navbar-brand" href="#">Dashboard</a>
  116. </div>
  117. <div class="collapse navbar-collapse">
  118. <ul class="nav navbar-nav navbar-right">
  119. <li>
  120. <a href="#" class="dropdown-toggle" data-toggle="dropdown">
  121. <i class="ti-panel"></i>
  122. <p>Stats</p>
  123. </a>
  124. </li>
  125. <li class="dropdown">
  126. <a href="#" class="dropdown-toggle" data-toggle="dropdown">
  127. <i class="ti-server"></i>
  128. <!-- <p class="notification">5</p> -->
  129. <p>Servers</p>
  130. <b class="caret"></b>
  131. </a>
  132. <ul class="dropdown-menu">
  133. {% for name in app_names %}
  134. <div class="action"><i class="fa fa-angle-right"></i> {{name|safe}}</div>
  135. {% endfor %}
  136. </ul>
  137. </li>
  138. <li>
  139. <a href="#">
  140. <i class="ti-settings"></i>
  141. <p>Settings</p>
  142. </a>
  143. </li>
  144. </ul>
  145. </div>
  146. </div>
  147. </nav>
  148. <!-- End Menu Bar -->
  149. <div class="content">
  150. <div class="container-fluid">
  151. <div class="row">
  152. <div class="col-lg-3 col-sm-6">
  153. <div class="card">
  154. <div class="content">
  155. <div class="row">
  156. <div class="col-xs-5">
  157. <div class="icon-big icon-warning text-center">
  158. <i class="ti-dashboard"></i>
  159. <div class="small">Total CPU</div>
  160. </div>
  161. </div>
  162. <div class="col-xs-7">
  163. <div class="numbers">
  164. <div id="total_cpu" align="center">00</div>
  165. <div class="small" align="right">Percent</div>
  166. </div>
  167. </div>
  168. </div>
  169. <div class="footer">
  170. <hr />
  171. <div class="stats">
  172. <i class="ti-reload"></i> Updated now
  173. </div>
  174. </div>
  175. </div>
  176. </div>
  177. </div>
  178. <div class="col-lg-3 col-sm-6">
  179. <div class="card">
  180. <div class="content">
  181. <div class="row">
  182. <div class="col-xs-5">
  183. <div class="icon-big icon-success text-center">
  184. <i class="fa fa-microchip"></i>
  185. <div class="small">Mem. Used</div>
  186. </div>
  187. </div>
  188. <div class="col-xs-7">
  189. <div class="numbers">
  190. <div id="total_mem"></div>
  191. <div class="small" id="mem_units" align="right"></div>
  192. </div>
  193. </div>
  194. </div>
  195. <div class="footer">
  196. <hr />
  197. <div class="stats">
  198. <i class="ti-calendar"></i> Last day
  199. </div>
  200. </div>
  201. </div>
  202. </div>
  203. </div>
  204. <div class="col-lg-3 col-sm-6">
  205. <div class="card">
  206. <div class="content">
  207. <div class="row">
  208. <div class="col-xs-5">
  209. <div class="icon-big icon-danger text-center">
  210. <i class="fa fa-warning"></i>
  211. <div class="small" align="center">Crashes</div>
  212. </div>
  213. </div>
  214. <div class="col-xs-7">
  215. <div class="numbers">
  216. <div id="total_app_crashes"></div>
  217. <!-- show errors API. Crashed? -->
  218. </div>
  219. </div>
  220. </div>
  221. <div class="footer">
  222. <hr />
  223. <div class="stats">
  224. <i class="ti-timer"></i> In the last hour
  225. </div>
  226. </div>
  227. </div>
  228. </div>
  229. </div>
  230. <div class="col-lg-3 col-sm-6">
  231. <div class="card">
  232. <div class="content">
  233. <div class="row">
  234. <div class="col-xs-5">
  235. <div class="icon-big icon-info text-center">
  236. <i class="ti-folder"></i>
  237. <div class="small">Folders</div>
  238. </div>
  239. </div>
  240. <div class="col-xs-7">
  241. <div class="numbers">
  242. <div id="total_folder_size" align="center"></div>
  243. <div class="small" align="center" id="folder_units"></div>
  244. <!-- Folder Analysis API here. -->
  245. </div>
  246. </div>
  247. </div>
  248. <div class="footer">
  249. <hr />
  250. <div class="stats">
  251. <i class="ti-reload"></i> Updated now
  252. </div>
  253. </div>
  254. </div>
  255. </div>
  256. </div>
  257. </div>
  258. <div class="row">
  259. <div class="col-md-12">
  260. <div class="card">
  261. <div class="header">
  262. <h4 class="title">Monitoring Apps</h4>
  263. <p class="category">performance</p>
  264. </div>
  265. <div class="content">
  266. <div id="chartHours" class="ct-chart"></div>
  267. <div class="footer">
  268. <div class="chart-legend">
  269. <!-- confirm these three are right with new API. -->
  270. <i class="fa fa-circle text-info"></i> cpu usage
  271. <i class="fa fa-circle text-warning"></i> memory used
  272. <i class="fa fa-circle text-danger"></i> available line
  273. </div>
  274. <hr>
  275. <div class="stats">
  276. <i class="ti-reload"></i> Updated 3 minutes ago
  277. </div>
  278. </div>
  279. </div>
  280. </div>
  281. </div>
  282. </div>
  283. <div class="row">
  284. <div class="col-md-6">
  285. <div class="card">
  286. <div class="header">
  287. <h4 class="title">Summary</h4>
  288. <p class="category">Running|Idle|Crash</p>
  289. </div>
  290. <div class="content">
  291. <div id="chartPreferences" class="ct-chart ct-perfect-fourth"></div>
  292. <div class="footer">
  293. <div class="chart-legend">
  294. <i class="fa fa-circle text-info"></i> Running
  295. <i class="fa fa-circle text-danger"></i> Crashed
  296. <i class="fa fa-circle text-warning"></i> Idle
  297. </div>
  298. <hr>
  299. <div class="stats">
  300. <i class="ti-timer"></i> Some footer
  301. </div>
  302. </div>
  303. </div>
  304. </div>
  305. </div>
  306. <div class="col-md-6">
  307. <div class="card ">
  308. <div class="header">
  309. <h4 class="title">CPU and Memory</h4>
  310. <p class="category">Usage Trends</p>
  311. </div>
  312. <div class="content">
  313. <div id="chartActivity" class="ct-chart"></div>
  314. <div class="footer">
  315. <div class="chart-legend">
  316. <i class="fa fa-circle text-info"></i> CPU
  317. <i class="fa fa-circle text-warning"></i> Memory
  318. </div>
  319. <hr>
  320. <div class="stats">
  321. <i class="ti-check"></i> Data information certified
  322. </div>
  323. </div>
  324. </div>
  325. </div>
  326. </div>
  327. </div>
  328. </div>
  329. </div>
  330. <footer class="footer">
  331. <div class="container-fluid">
  332. <nav class="pull-left">
  333. <ul>
  334. <li>
  335. <a href="#">
  336. Monitor
  337. </a>
  338. </li>
  339. <li>
  340. <a href="#">
  341. Invy
  342. </a>
  343. </li>
  344. </ul>
  345. </nav>
  346. </div>
  347. </footer>
  348. </div>
  349. </div>
  350. </body>
  351. </html>