65 lines
No EOL
2 KiB
JavaScript
65 lines
No EOL
2 KiB
JavaScript
angular.module("robware").controller('status', ["$scope", "statusService", "$interval", function($scope, statusService, $interval) {
|
|
$scope.chartData=[];
|
|
var chartDataId=0;
|
|
|
|
function reloadUptime() {
|
|
statusService.getUptime().then(function(data) {
|
|
$scope.uptime = data;
|
|
$scope.haveUptime = true;
|
|
});
|
|
}
|
|
$scope.haveUptime = false;
|
|
$scope.uptime = {};
|
|
reloadUptime();
|
|
$interval(reloadUptime, 60000);
|
|
|
|
function reloadSystemInfo() {
|
|
statusService.getSystemInfo().then(function(data) {
|
|
if ($scope.chartData.length>=50)
|
|
$scope.chartData.shift();
|
|
$scope.chartData=$scope.chartData.concat([{id: chartDataId, CPU: data.load[0]*100, Mem: data.memUsage, Temp: data.cpuTemp}]);
|
|
chartDataId++;
|
|
$scope.load = data.load;
|
|
$scope.cpuTemp = data.cpuTemp;
|
|
$scope.memory = {
|
|
free: data.memFree,
|
|
used: data.memUsage,
|
|
total: data.memTotal
|
|
};
|
|
$scope.haveSystemInfo = true;
|
|
});
|
|
}
|
|
$scope.haveSystemInfo = false;
|
|
$scope.load = {};
|
|
$scope.loadHistory = [];
|
|
$scope.cpuTemp = 0;
|
|
$scope.systemInfoRefreshInterval = 5;
|
|
var systemRefresh = $interval(reloadSystemInfo, $scope.systemInfoRefreshInterval * 1000);
|
|
reloadSystemInfo();
|
|
$scope.changeSystemInfoRefreshInterval = function(amount) {
|
|
$scope.systemInfoRefreshInterval += amount;
|
|
if ($scope.systemInfoRefreshInterval < 1)
|
|
return;
|
|
$interval.cancel(systemRefresh);
|
|
systemRefresh = $interval(reloadSystemInfo, $scope.systemInfoRefreshInterval * 1000);
|
|
};
|
|
|
|
function reloadProcesses() {
|
|
statusService.getProcesses().then(function(data) {
|
|
$scope.processes = data;
|
|
$scope.haveProcesses = true;
|
|
});
|
|
}
|
|
$scope.haveProcesses = false;
|
|
$scope.processses = {};
|
|
$scope.processRefreshInterval = 10;
|
|
var processRefesh = $interval(reloadProcesses, $scope.processRefreshInterval * 1000);
|
|
reloadProcesses();
|
|
$scope.changeProcesRefreshInterval = function(amount) {
|
|
$scope.processRefreshInterval += amount;
|
|
if ($scope.processRefreshInterval < 1)
|
|
return;
|
|
$interval.cancel(processRefesh);
|
|
processRefesh = $interval(reloadProcesses, $scope.processRefreshInterval * 1000);
|
|
};
|
|
}]); |