mirror of https://github.com/portainer/portainer
logs page: slow on huge logs - 'show last lines' option
parent
ccd27f203d
commit
aead1fcc29
|
@ -4,6 +4,7 @@ function($scope, $routeParams, $location, $anchorScroll, ContainerLogs, Containe
|
||||||
$scope.stdout = '';
|
$scope.stdout = '';
|
||||||
$scope.stderr = '';
|
$scope.stderr = '';
|
||||||
$scope.showTimestamps = false;
|
$scope.showTimestamps = false;
|
||||||
|
$scope.tailLines = 2000;
|
||||||
|
|
||||||
ViewSpinner.spin();
|
ViewSpinner.spin();
|
||||||
Container.get({id: $routeParams.id}, function(d) {
|
Container.get({id: $routeParams.id}, function(d) {
|
||||||
|
@ -19,7 +20,13 @@ function($scope, $routeParams, $location, $anchorScroll, ContainerLogs, Containe
|
||||||
});
|
});
|
||||||
|
|
||||||
function getLogs() {
|
function getLogs() {
|
||||||
ContainerLogs.get($routeParams.id, {stdout: 1, stderr: 0, timestamps: $scope.showTimestamps}, function(data, status, headers, config) {
|
console.log($scope.tailLines);
|
||||||
|
ContainerLogs.get($routeParams.id, {
|
||||||
|
stdout: 1,
|
||||||
|
stderr: 0,
|
||||||
|
timestamps: $scope.showTimestamps,
|
||||||
|
tail: $scope.tailLines
|
||||||
|
}, function(data, status, headers, config) {
|
||||||
// Replace carriage returns twith newlines to clean up output
|
// Replace carriage returns twith newlines to clean up output
|
||||||
$scope.stdout = data.replace(/[\r]/g, '\n');
|
$scope.stdout = data.replace(/[\r]/g, '\n');
|
||||||
});
|
});
|
||||||
|
@ -45,4 +52,8 @@ function($scope, $routeParams, $location, $anchorScroll, ContainerLogs, Containe
|
||||||
$scope.toggleTimestamps = function() {
|
$scope.toggleTimestamps = function() {
|
||||||
getLogs();
|
getLogs();
|
||||||
};
|
};
|
||||||
|
|
||||||
|
$scope.toggleTail = function() {
|
||||||
|
getLogs();
|
||||||
|
};
|
||||||
}]);
|
}]);
|
||||||
|
|
|
@ -6,8 +6,16 @@
|
||||||
<button class="btn btn-warning" ng-click="scrollTo('stderr')">stderr</button>
|
<button class="btn btn-warning" ng-click="scrollTo('stderr')">stderr</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="pull-right">
|
<div class="pull-right">
|
||||||
<input id="timestampToggle" type="checkbox" ng-model="showTimestamps"
|
<span style="padding-right: 10px">
|
||||||
ng-change="toggleTimestamps()"/> <label for="timestampToggle">Display Timestamps</label>
|
<label for="tailLines">Show last</label>
|
||||||
|
<input id="tailLines" type="text" size="1" maxlength="4"
|
||||||
|
ng-model="tailLines" ng-keypress="($event.which === 13)? toggleTail() : 0"/>
|
||||||
|
<label for="tailLines">lines</label>
|
||||||
|
</span>
|
||||||
|
<span>
|
||||||
|
<input id="timestampToggle" type="checkbox" ng-model="showTimestamps"
|
||||||
|
ng-change="toggleTimestamps()"/> <label for="timestampToggle">Display Timestamps</label>
|
||||||
|
</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue