4 <title>Psensor Server Monitoring</title>
6 <link type="text/css" href="style.css" rel="stylesheet" />
7 <script type="text/javascript" src="jquery.js"></script>
8 <script type="text/javascript" src="psensor.js"></script>
10 $(document).ready(function() {
11 $.getJSON("/api/1.0/sensors", function(data) {
12 $.each(data, function(i, item) {
13 var sname = item["name"];
14 var svalue = item["last_measure"]["value"];
15 var smin = item["min"];
16 var smax = item["max"];
17 var stype = item["type"];
21 unit = type_to_unit(stype);
22 stype_str = type_to_str(stype);
24 $("#sensors").append("<tr>"
26 +"<a href='details.html?id="+escape("/api/1.0/sensors/"+item["id"])
27 +"'>"+sname+"</a></td>"
28 +"<td>"+svalue+unit+"</td><td>"+smin+unit+"</td><td>"+smax+unit+"</td><td>"+stype_str+"</td></tr>");
32 $.getJSON("/api/1.0/sysinfo", function(data) {
33 var load = Math.round(data["load"] * 100);
34 var load_1 = Math.round(data["load_1"]*1000)/1000;
35 var load_5 = Math.round(data["load_5"]*1000)/1000;
36 var load_15 = Math.round(data["load_15"]*1000)/1000;
37 var uptime = data["uptime"];
38 var uptime_s = uptime % 60;
39 var uptime_mn = Math.floor((uptime / 60) % 60);
40 var uptime_h = Math.floor((uptime / (60*60)) % 24);
41 var uptime_d = Math.floor(uptime / (60*60*24));
43 $("#cpu").append("<tr><td>"+load+"%</td><td>"+load_1+"</td><td>"+load_5+"</td><td>"+load_15+"</td></tr>");
45 $("#uptime").append(uptime_d+"d "+uptime_h+"h "+uptime_mn+"mn");
47 var ram = data["ram"];
48 var swap = data["swap"];
49 var mu = data["mem_unit"];
51 var ramtotal = ram["total"]*mu;
52 var ramfree = ram["free"]*mu;
53 var ramused = (ram["total"] - ram["free"])*mu;
54 var ramshared = ram["shared"]*mu;
55 var rambuffer = ram["buffer"]*mu;
58 $("#memory").append("<td>"+format_mem_size(ramtotal)+"</td>"
59 +"<td>"+format_mem_size(ramused)+"</td>"
60 +"<td>"+format_mem_size(ramfree)+"</td>"
61 +"<td>"+format_mem_size(ramshared)+"</td>"
62 +"<td>"+format_mem_size(rambuffer)+"</td>");
64 $("#swap").append("<td>"+format_mem_size(swap["total"]*mu)+"</td>"
65 +"<td>"+format_mem_size(swap["total"]*mu-swap["free"]*mu)+"</td>"
66 +"<td>"+format_mem_size(swap["free"]*mu)+"</td>");
68 var netdata = data["net"];
69 $.each(netdata, function(i, item) {
70 $("#net").append("<tr><td>"+item["name"]+"</td>"
71 +"<td>"+format_mem_size(item["bytes_in"])+"</td>"
72 +"<td>"+format_mem_size(item["bytes_out"])+"</td></tr>");
80 <div class='page-header'>
81 <h1>Psensor Server Monitoring</h1>
84 <div class='page-content'>
86 <p id='uptime'><strong>Uptime</strong>: </p>
91 <table id='cpu' border='0' cellspacing='0' cellpadding='0'>
94 <th>Current usage</th>
107 <table border='0' cellspacing='0' cellpadding='0'>
119 <tr id='memory'><td>Memory</td></tr>
120 <tr id='swap'><td>Swap</td></tr>
128 <table id='net' border='0' cellspacing='0' cellpadding='0'>
144 <table id='sensors' border='0' cellspacing='0' cellpadding='0'>
161 <div id="footer">Generated by <a href='http://wpitchoune.net/psensor'>psensor-server</a></div>