diff --git a/app/server-health/controllers/log-controller.js b/app/server-health/controllers/log-controller.js
index 59ebd01..eb4ea26 100644
--- a/app/server-health/controllers/log-controller.js
+++ b/app/server-health/controllers/log-controller.js
@@ -9,7 +9,6 @@
 
 window.angular && (function (angular) {
     'use strict';
-    var logData = [], originalData = {};
     angular
         .module('app.serverHealth')
         .controller('logController', [
@@ -41,8 +40,6 @@
 
                 $scope.loadLogs = function(){
                     APIUtils.getLogs(function(data, originalData){
-                        logData = data;
-                        originalData = originalData;
                         $scope.logs = data;
                         $scope.originalData = originalData;
                     });
@@ -81,7 +78,6 @@
                 $scope.filterBySearchTerms = function(log){
                     if(!$scope.searchItems.length) return true; 
 
-                    var flag = false;
                     for(var i = 0, length = $scope.searchItems.length; i < length; i++){
                         if(log.search_text.indexOf($scope.searchItems[i].toLowerCase()) == -1) return false;
                     }
diff --git a/app/server-health/controllers/sensors-controller.js b/app/server-health/controllers/sensors-controller.js
index cf10541..307a451 100644
--- a/app/server-health/controllers/sensors-controller.js
+++ b/app/server-health/controllers/sensors-controller.js
@@ -9,7 +9,7 @@
 
 window.angular && (function (angular) {
     'use strict';
-    var sensorData = [], originalData = {};
+    var sensorData = [];
     angular
         .module('app.overview')
         .controller('sensorsController', [
diff --git a/app/server-health/controllers/sensors-overview-controller.js b/app/server-health/controllers/sensors-overview-controller.js
index 1e53829..213a4e3 100644
--- a/app/server-health/controllers/sensors-overview-controller.js
+++ b/app/server-health/controllers/sensors-overview-controller.js
@@ -9,7 +9,6 @@
 
 window.angular && (function (angular) {
     'use strict';
-    var sensorData = [], originalData = {};
     angular
         .module('app.overview')
         .controller('sensorsOverviewController', [
@@ -109,11 +108,9 @@
 
                 $scope.loadSensorData = function(){
                     APIUtils.getAllSensorStatus(function(data, originalData){
-                        sensorData = data;
-                        originalData = originalData;
                         $scope.data = data;
                         $scope.originalData = originalData;
-                        dataService.sensorData = sensorData;
+                        dataService.sensorData = data;
                         $scope.export_data = JSON.stringify(originalData);
                     });
                 };
