/*! * Pi Dashboard (http://www.nxez.com) * Copyright 2017 NXEZ.com. * Licensed under the GPL v3.0 license. */ $(document).ready(function() { Highcharts.setOptions({ global: { useUTC: false }, credits: { enabled: false }, navigation: { buttonOptions: { enabled: false } } }); var gaugeOptions = { chart: { type: 'solidgauge' }, title: null, pane: { center: ['50%', '85%'], size: '140%', startAngle: -90, endAngle: 90, background: { backgroundColor: (Highcharts.theme && Highcharts.theme.background2) || '#FFFFFF', innerRadius: '60%', outerRadius: '100%', shape: 'arc' } }, tooltip: { enabled: false }, // the value axis yAxis: { stops: [ [0.1, '#55BF3B'], [0.5, '#DDDF0D'], [0.9, '#DF5353'] ], lineWidth: 0, minorTickInterval: null, tickAmount: 2, title: { y: -70 }, labels: { y: 16 } }, plotOptions: { solidgauge: { dataLabels: { y: 5, borderWidth: 0, useHTML: true } } } }; var chartCPU = Highcharts.chart('container-cpu', Highcharts.merge(gaugeOptions, { yAxis: { min: 0, max: 100, title: { text: '' } }, series: [{ name: 'CPU', data: [0], dataLabels: { format: '
{y}' + '%
' }, tooltip: { valueSuffix: ' %' } }] })); var chartRAM = Highcharts.chart('container-mem', Highcharts.merge(gaugeOptions, { yAxis: { min: 0, max: init_vals.mem.total, title: { text: '' } }, series: [{ name: 'MEMORY', data: [0], dataLabels: { format: '
{y:.1f}
' + 'MB
' }, tooltip: { valueSuffix: ' MB' } }] })); var chartCache = Highcharts.chart('container-cache', Highcharts.merge(gaugeOptions, { yAxis: { min: 0, max: init_vals.mem.total, title: { text: '' } }, series: [{ name: 'CACHE', data: [0], dataLabels: { format: '
{y:.1f}
' + 'MB
' }, tooltip: { valueSuffix: ' MB' } }] })); var chartRAM_real = Highcharts.chart('container-mem-real', Highcharts.merge(gaugeOptions, { yAxis: { min: 0, max: init_vals.mem.total, title: { text: '' } }, series: [{ name: 'REAL MEMORY', data: [0], dataLabels: { format: '
{y:.1f}
' + 'MB
' }, tooltip: { valueSuffix: ' MB' } }] })); var chartSWAP = Highcharts.chart('container-swap', Highcharts.merge(gaugeOptions, { yAxis: { min: 0, max: init_vals.mem.swap.total, title: { text: '' } }, series: [{ name: 'SWAP', data: [0], dataLabels: { format: '
{y:.1f}
' + 'MB
' }, tooltip: { valueSuffix: ' MB' } }] })); var chartDisk = Highcharts.chart('container-disk', Highcharts.merge(gaugeOptions, { yAxis: { min: 0, max: init_vals.disk.total, title: { text: '' } }, series: [{ name: 'DISK', data: [0], dataLabels: { format: '
{y:.1f}
' + 'GB
' }, tooltip: { valueSuffix: ' GB' } }] })); var chartNetInterfaces = new Array(); var net_In = new Array(); var net_Out = new Array(); for(i=0;i 5) { newVal = point.y - inc; } point.update(newVal); */ } if(window.dashboard_old != null) { //console.log(window.dashboard_old.net.count); if(window.dashboard_old.net.count > 0) { for(i=0;i=30){ chartNetInterfaces[i].series[0].addPoint(parseInt(window.dashboard.net.interfaces[i].total_in) - parseInt(window.dashboard_old.net.interfaces[i].total_in), true, true); } else{ chartNetInterfaces[i].series[0].addPoint(parseInt(window.dashboard.net.interfaces[i].total_in) - parseInt(window.dashboard_old.net.interfaces[i].total_in)); } if(chartNetInterfaces[i].series[1].data.length >=30){ chartNetInterfaces[i].series[1].addPoint(parseInt(window.dashboard.net.interfaces[i].total_out) - parseInt(window.dashboard_old.net.interfaces[i].total_out), true, true); } else{ chartNetInterfaces[i].series[1].addPoint(parseInt(window.dashboard.net.interfaces[i].total_out) - parseInt(window.dashboard_old.net.interfaces[i].total_out)); } } } idle_diff = parseInt(window.dashboard.cpu.stat.idle) - parseInt(window.dashboard_old.cpu.stat.idle); used_total = parseInt(window.dashboard.cpu.stat.idle) + parseInt(window.dashboard.cpu.stat.user) + parseInt(window.dashboard.cpu.stat.sys) + parseInt(window.dashboard.cpu.stat.nice) + parseInt(window.dashboard.cpu.stat.iowait) + parseInt(window.dashboard.cpu.stat.irq) + parseInt(window.dashboard.cpu.stat.softirq) - parseInt(window.dashboard_old.cpu.stat.idle) - parseInt(window.dashboard_old.cpu.stat.user) - parseInt(window.dashboard_old.cpu.stat.sys) - parseInt(window.dashboard_old.cpu.stat.nice) - parseInt(window.dashboard_old.cpu.stat.iowait) - parseInt(window.dashboard_old.cpu.stat.irq) - parseInt(window.dashboard_old.cpu.stat.softirq); if (chartCPU) { point = chartCPU.series[0].points[0]; point.update(Math.round((1.0 - (idle_diff / used_total)) * 100 * Math.pow(10,1))/Math.pow(10,1)); } $("#cpu-stat-idl").text(Math.round(((parseInt(window.dashboard.cpu.stat.idle) - parseInt(window.dashboard_old.cpu.stat.idle)) / used_total) * 100 * Math.pow(10,1))/Math.pow(10,1)); $("#cpu-stat-use").text(Math.round(((parseInt(window.dashboard.cpu.stat.user) - parseInt(window.dashboard_old.cpu.stat.user)) / used_total) * 100 * Math.pow(10,1))/Math.pow(10,1)); $("#cpu-stat-sys").text(Math.round(((parseInt(window.dashboard.cpu.stat.sys) - parseInt(window.dashboard_old.cpu.stat.sys)) / used_total) * 100 * Math.pow(10,1))/Math.pow(10,1)); $("#cpu-stat-nic").text(Math.round(((parseInt(window.dashboard.cpu.stat.nice) - parseInt(window.dashboard_old.cpu.stat.nice)) / used_total) * 100 * Math.pow(10,1))/Math.pow(10,1)); $("#cpu-stat-iow").text(Math.round(((parseInt(window.dashboard.cpu.stat.iowait) - parseInt(window.dashboard_old.cpu.stat.iowait)) / used_total) * 100 * Math.pow(10,1))/Math.pow(10,1)); $("#cpu-stat-irq").text(Math.round(((parseInt(window.dashboard.cpu.stat.irq) - parseInt(window.dashboard_old.cpu.stat.irq)) / used_total) * 100 * Math.pow(10,1))/Math.pow(10,1)); $("#cpu-stat-sirq").text(Math.round(((parseInt(window.dashboard.cpu.stat.softirq) - parseInt(window.dashboard_old.cpu.stat.softirq)) / used_total) * 100 * Math.pow(10,1))/Math.pow(10,1)); //} } } }, 1000); }); function bytesRound(number, round) { if (number<0){ var last=0+"B"; }else if (number<1024){ //var last=Math.round(number*Math.pow(10,round))/Math.pow(10,round)+"B"; var last=number+"B"; }else if (number<1048576){ number=number/1024; var last=Math.round(number*Math.pow(10,round))/Math.pow(10,round)+"K"; }else if (number<1048576000){ number=number/1048576; var last=Math.round(number*Math.pow(10,round))/Math.pow(10,round)+"M"; }else{ number=number/1048576000; var last=Math.round(number*Math.pow(10,round))/Math.pow(10,round)+"G"; } return last; } Date.prototype.format = function(format) { var date = { "M+": this.getMonth() + 1, "d+": this.getDate(), "h+": this.getHours(), "m+": this.getMinutes(), "s+": this.getSeconds(), "q+": Math.floor((this.getMonth() + 3) / 3), "S+": this.getMilliseconds() }; if (/(y+)/i.test(format)) { format = format.replace(RegExp.$1, (this.getFullYear() + '').substr(4 - RegExp.$1.length)); } for (var k in date) { if (new RegExp("(" + k + ")").test(format)) { format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? date[k] : ("00" + date[k]).substr(("" + date[k]).length)); } } return format; } function uptimeFormat(str){ var uptime = ""; var min = parseInt(str) / 60; var hours = min / 60; var days = Math.floor(hours / 24); var hours = Math.floor(hours - (days * 24)); min = Math.floor(min - (days * 60 * 24) - (hours * 60)); if (days !== 0){ if(days == 1){ uptime = days+" day "; } else{ uptime = days+" days "; } } if (hours !== 0){ uptime = uptime+hours+":"; } return uptime=uptime+min; }