Merge pull request #146 from movableink/buffer-websocket-log-output
logline output buffers rather than updating on every ws message
This commit is contained in:
commit
4689d53305
1 changed files with 30 additions and 7 deletions
|
@ -133,12 +133,35 @@
|
|||
outputWS.onopen = function () { console.log('output websocket open'); };
|
||||
outputWS.onerror = function (e) { console.log('websocket error: ' + e); };
|
||||
outputWS.onclose = function (e) { window.location.reload(); };
|
||||
|
||||
window.requestAnimationFrame = window.requestAnimationFrame ||
|
||||
window.webkitRequestAnimationFrame ||
|
||||
function(callback, element) {
|
||||
return window.setTimeout(function() {
|
||||
callback(+new Date());
|
||||
}, 1000 / 60);
|
||||
};
|
||||
|
||||
var lineBuffer = "";
|
||||
|
||||
outputWS.onmessage = function (e) {
|
||||
outputBox.innerHTML += formatLine(e.data);
|
||||
lineBuffer += formatLine(e.data);
|
||||
};
|
||||
|
||||
function updateScreen() {
|
||||
if(lineBuffer.length > 0) {
|
||||
outputBox.innerHTML += lineBuffer;
|
||||
lineBuffer = '';
|
||||
|
||||
if (window.autofollow) {
|
||||
window.scrollTo(0, document.body.scrollHeight);
|
||||
}
|
||||
};
|
||||
}
|
||||
requestAnimationFrame(updateScreen);
|
||||
}
|
||||
|
||||
requestAnimationFrame(updateScreen);
|
||||
|
||||
{{ else }}
|
||||
$.get("/{{ .Repo.Slug }}/commit/{{ .Commit.Hash }}/build/{{ .Build.Slug }}/out.txt", function( data ) {
|
||||
$( "#stdout" ).html(formatLine(data));
|
||||
|
|
Loading…
Reference in a new issue