如何在服务器控制台上打印前端日志消息?

如何在服务器控制台上打印前端日志消息?

问题描述:

有没有办法从前端将日志消息打印到服务器控制台?如何在服务器控制台上打印前端日志消息?

例如,如果我的GUI HTML页面正在JBOSS服务器上运行。我想将日志写入服务器控制台,即在JBOSS服务器上生成的“SERVER.log”文件。 (就像Sysout()打印简单的调试消息一样)。

+1

你是什么意思的“服务器控制台”? – hindmost 2015-03-31 09:25:56

+0

'console.log = function(message){$ .post(“/ api/logs”,{message:message}}' – TryingToImprove 2015-03-31 09:26:37

您可以覆盖默认的console.log API或使用其他方法;

var logHandler = { 
    send: function(args) { 
     $.post("URL", { 
      messages: arguments 
     }); 
    } 
} 

window.defaultConsoleLog = console.log; 

console.log = function() { 
    logHandler.send(arguments) 

    defaultConsoleLog.call(this, arguments); 
} 

未测试代码

建议没有覆盖浏览器的默认行为,而是有一个 “代理”

var logger = function() { 
    logHandler.send(arguments); 

    console.log.call(this, arguments) 
} 

然后用logger("Test")代替console.log("Test")

你能更清楚吗ar在“服务器控制台”部分和您的具体要求?

如果你只需要捕获服务器上的活动,我建议你看看log4javascript。

http://log4javascript.org/docs/index.html

+0

这应该是一个评论,而不是回答 – hindmost 2015-03-31 09:39:53

+0

有没有办法打印日志消息到服务器前台控制台? 例如,如果我的GUI HTML页面在JBOSS服务器上运行,我想写日志到服务器控制台,即在JBOSS服务器上生成的“SERVER.log”文件(就像Sysout )用于打印简单的调试消息。) – 2015-03-31 10:56:39