Enhance logging with timestamps and filtering.

This commit is contained in:
Andy Phillipson 2017-07-14 15:21:15 -04:00
commit b7cfd86f22
No known key found for this signature in database
GPG key ID: D813A67D567D6C88
14 changed files with 257 additions and 13 deletions

View file

@ -3,17 +3,51 @@
angular.module('copayApp.controllers').controller('preferencesLogs',
function($scope, historicLog, platformInfo) {
var logLevels = historicLog.getLevels();
var logFilterWeight = historicLog.getDefaultLevel().weight;
// Log level slider setup.
var logLevelSliderInitialValue = logFilterWeight;
var logLevelSliderCeil = logFilterWeight;
var logLevelSliderStepsArray = [];
for (var i = 0; i < logLevels.length; i++) {
logLevelSliderStepsArray.push({value: logLevels[i].weight, legend: logLevels[i].label});
}
$scope.logOptionsTitle = 'Filter log';
$scope.logOptions = {
logLevelSlider: {
value: logLevelSliderInitialValue,
opts: {
floor: 0,
ceil: logLevelSliderCeil,
step: 1,
hideLimitLabels: true,
hidePointerLabels: true,
showTicks: true,
showTicksValues: false,
showSelectionBar: true,
stepsArray: logLevelSliderStepsArray,
onEnd: function(sliderId, modelValue, highValue, pointerType) {
$scope.filteredLogs = historicLog.get(modelValue);
}
}
}
};
$scope.$on("$ionicView.beforeEnter", function(event, data) {
$scope.isCordova = platformInfo.isCordova;
});
$scope.$on("$ionicView.enter", function(event, data) {
$scope.logs = historicLog.get();
$scope.allLogs = historicLog.get();
$scope.filteredLogs = historicLog.get(logFilterWeight);
$scope.prepare = function() {
var log = 'Copay Session Logs\n Be careful, this could contain sensitive private data\n\n';
log += '\n\n';
log += $scope.logs.map(function(v) {
log += $scope.allLogs.map(function(v) {
return v.msg;
}).join('\n');
@ -35,5 +69,8 @@ angular.module('copayApp.controllers').controller('preferencesLogs',
);
};
$scope.showOptionsMenu = function() {
$scope.showOptions = true;
};
});
});