diff --git a/o2web/source/x_component_LogViewer/$Main/default/css.wcss b/o2web/source/x_component_LogViewer/$Main/default/css.wcss index 778a2a1af58601fe51276a5b056ca11ad6527db9..99d5eef457087521d0fceb3b942c758ecef825de 100644 --- a/o2web/source/x_component_LogViewer/$Main/default/css.wcss +++ b/o2web/source/x_component_LogViewer/$Main/default/css.wcss @@ -1,11 +1,11 @@ { - "contentNode": { - "height": "100%", - "width": "100%", - "background-color": "#CCC" - }, + "contentNode": { + "height": "100%", + "width": "100%", + "background-color": "#CCC" + }, - "toolbarButton":{ + "toolbarButton":{ "height": "32px", "line-height": "32px", "margin": "3px 10px 3px 3px", @@ -13,8 +13,8 @@ "border": "1px solid #CCC", "background-color": "#CCC", "cursor": "pointer" - }, - "toolbarButton_over": { + }, + "toolbarButton_over": { "border-top": "1px solid #f7f7f7", "border-left": "1px solid #f7f7f7", "border-right": "1px solid #999", @@ -57,6 +57,7 @@ "screenNode": { "overflow": "hidden", "background-color": "#333", + "width": "100%", "color": "#FFF" }, "bottomNode": { diff --git a/o2web/source/x_component_LogViewer/Main.js b/o2web/source/x_component_LogViewer/Main.js index 7813507f399c42c672f5758f2c4b4dbbca401ac2..edb986fce0f822bbbdfea985d116d316cd5f6eb0 100644 --- a/o2web/source/x_component_LogViewer/Main.js +++ b/o2web/source/x_component_LogViewer/Main.js @@ -13,6 +13,8 @@ MWF.xApplication.LogViewer.Main = new Class({ onQueryLoad: function(){ this.lp = MWF.xApplication.LogViewer.LP; this.tagId = o2.uuid(); + + }, loadApplication: function(callback){ if (!this.options.isRefresh){ @@ -47,6 +49,8 @@ MWF.xApplication.LogViewer.Main = new Class({ this.method = "listPromptErrorLog"; this.count = 20; this.currentId = "(0)"; + + //定时器 }, loadToolbar: function(){ @@ -86,25 +90,39 @@ MWF.xApplication.LogViewer.Main = new Class({ // this.showTypeLog("warn"); // }.bind(this)); - var clearBtn = new Element("button",{"text":"clear","style":"margin:10px"}).inject(this.toolbarNode); - clearBtn.addEvent("click",function () { + this.clearBtn = new Element("button",{"text":"clear","style":"margin:10px;float:right"}).inject(this.toolbarNode); + this.clearBtn.addEvent("click",function () { this.screenInforAreaNode.empty(); this.tagId = o2.uuid(); }.bind(this)); - var loadBtn = new Element("button",{"text":"load","style":"margin:10px"}).inject(this.toolbarNode); - loadBtn.addEvent("click",function () { + this.stopBtn = new Element("button",{"text":"stop","style":"margin:10px;float:right"}).inject(this.toolbarNode); + this.startBtn = new Element("button",{"text":"start","style":"margin:10px;display:none;;float:right"}).inject(this.toolbarNode); + + this.stopBtn.addEvent("click",function () { + + this.startBtn.show(); + this.stopBtn.hide(); if(this.method==="listSystemLog"){ - this.actions[this.method](this.tagId, function(json){ - this.showSystemLog(json.data); - this.screenInforAreaNode.scrollTop = this.screenInforAreaNode.scrollHeight; - }.bind(this)); + $clear(this.timeDo); + this.timeDo = null; }else { this.initLog(); this.loadLog(); } }.bind(this)); + + this.startBtn.addEvent("click",function () { + this.startBtn.hide(); + this.stopBtn.show(); + this.initLog(); + this.loadLog(); + }.bind(this)); }, showTypeLog: function(status){ + + $clear(this.timeDo); + this.timeDo = null; + if (this.status!==status){ switch (this.status){ case "prompt": @@ -165,6 +183,9 @@ MWF.xApplication.LogViewer.Main = new Class({ }, loadLog: function(){ + + + this.date = this.dateSelect.options[this.dateSelect.selectedIndex].value; switch (this.status){ case "prompt": @@ -186,6 +207,10 @@ MWF.xApplication.LogViewer.Main = new Class({ this.actions[this.method](this.tagId, function(json){ this.showSystemLog(json.data); }.bind(this)); + + //添加定时器 + this.timeDo = this.tiemShowSystemLog.periodical(2000,this); + }else{ if (this.date==="all"){ this.actions[this.method](this.currentId, this.count, function(json){ @@ -200,10 +225,54 @@ MWF.xApplication.LogViewer.Main = new Class({ } }, showSystemLog : function(data){ - if(!data.valueList) return; - data.valueList.each(function (log) { + + data.each(function (log) { var node = new Element("div", {"styles": this.css.logItemNode}).inject(this.screenInforAreaNode); - node.set("text",log); + + if(log.logLevel){ + var lineLog = log.lineLog; + var logTime = log.logTime.split("#")[0]; + lineLog = lineLog.replace(logTime,""); + lineLog = lineLog.replace(log.logLevel,""); + var typeNode = new Element("div",{ + "html" : log.logLevel, + "title" : log.node, + "style" : "float:left;margin:0 10px;width:50px;font-weight:500;" + }).inject(node); + + var color = "#FF0000"; + switch (log.logLevel) { + + case "INFO" : + color = "#5a86ff"; + break; + case "PRINT" : + color = "#ffd192"; + break; + case "DEBUG" : + color = "#d7ff3d"; + break; + default : + + } + typeNode.setStyle("color",color); + + var timeNode = new Element("div",{ + "html" : logTime, + "style" : "float:left;margin:0 10px;width:180px;color:#6BC5FC" + }).inject(node); + } + var contentNode = new Element("div",{ + "text" : log.lineLog, + "style" : "margin-left:270px" + }).inject(node); + }.bind(this)); + + }, + tiemShowSystemLog : function(){ + this.actions[this.method](this.tagId, function(json){ + this.showSystemLog(json.data); + this.screenInforAreaNode.scrollTop = this.screenInforAreaNode.scrollHeight; }.bind(this)); }, showLog: function(data){