$(function() {
|
|
// trigger fail, end
|
if ( !(triggerCode == 200 || handleCode != 0) ) {
|
$('#logConsoleRunning').hide();
|
$('#logConsole').append('<span style="color: red;">'+ I18n.joblog_rolling_log_triggerfail +'</span>');
|
return;
|
}
|
|
// pull log
|
var fromLineNum = 1; // [from, to], start as 1
|
var pullFailCount = 0;
|
function pullLog() {
|
// pullFailCount, max=20
|
if (pullFailCount++ > 20) {
|
logRunStop('<span style="color: red;">'+ I18n.joblog_rolling_log_failoften +'</span>');
|
return;
|
}
|
|
// load
|
console.log("pullLog, fromLineNum:" + fromLineNum);
|
|
$.ajax({
|
type : 'POST',
|
async: false, // sync, make log ordered
|
url : base_url + '/joblog/logDetailCat',
|
data : {
|
"executorAddress":executorAddress,
|
"triggerTime":triggerTime,
|
"logId":logId,
|
"fromLineNum":fromLineNum
|
},
|
dataType : "json",
|
success : function(data){
|
|
if (data.code == 200) {
|
if (!data.content) {
|
console.log('pullLog fail');
|
return;
|
}
|
if (fromLineNum != data.content.fromLineNum) {
|
console.log('pullLog fromLineNum not match');
|
return;
|
}
|
if (fromLineNum > data.content.toLineNum ) {
|
console.log('pullLog already line-end');
|
|
// valid end
|
if (data.content.end) {
|
logRunStop('<br><span style="color: green;">[Rolling Log Finish]</span>');
|
return;
|
}
|
|
return;
|
}
|
|
// append content
|
fromLineNum = data.content.toLineNum + 1;
|
$('#logConsole').append(data.content.logContent);
|
pullFailCount = 0;
|
|
// scroll to bottom
|
scrollTo(0, document.body.scrollHeight); // $('#logConsolePre').scrollTop( document.body.scrollHeight + 300 );
|
|
} else {
|
console.log('pullLog fail:'+data.msg);
|
}
|
}
|
});
|
}
|
|
// pull first page
|
pullLog();
|
|
// handler already callback, end
|
if (handleCode > 0) {
|
logRunStop('<br><span style="color: green;">[Load Log Finish]</span>');
|
return;
|
}
|
|
// round until end
|
var logRun = setInterval(function () {
|
pullLog()
|
}, 3000);
|
function logRunStop(content){
|
$('#logConsoleRunning').hide();
|
logRun = window.clearInterval(logRun);
|
$('#logConsole').append(content);
|
}
|
|
});
|