index.html (1470B)
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="utf-8"> 5 <title>Server stats</title> 6 <style> 7 table, td { 8 border: 1px solid #333; 9 } 10 11 thead { 12 background-color: #333; 13 color: #fff; 14 } 15 </style> 16 </head> 17 <body> 18 <h1>Server stats</h1> 19 <table> 20 <thead> 21 <tr> 22 <th colspan="2">Memory usage</th> 23 </tr> 24 </thead> 25 <tbody> 26 <tr> 27 <td>RSS</td> 28 <td id="rss"></td> 29 </tr> 30 <tr> 31 <td>Heap total</td> 32 <td id="heapTotal"></td> 33 </tr> 34 <tr> 35 <td>Heap used</td> 36 <td id="heapUsed"></td> 37 </tr> 38 <tr> 39 <td>External</td> 40 <td id="external"></td> 41 </tr> 42 </tbody> 43 </table> 44 <script> 45 (function() { 46 const rss = document.getElementById('rss'); 47 const heapTotal = document.getElementById('heapTotal'); 48 const heapUsed = document.getElementById('heapUsed'); 49 const external = document.getElementById('external'); 50 const ws = new WebSocket(`ws://${location.host}`); 51 52 ws.onmessage = function(event) { 53 const data = JSON.parse(event.data); 54 55 rss.textContent = data.rss; 56 heapTotal.textContent = data.heapTotal; 57 heapUsed.textContent = data.heapUsed; 58 external.textContent = data.external; 59 }; 60 })(); 61 </script> 62 </body> 63 </html>