Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/460.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在node.js中捕获控制台输出而不编辑服务器代码_Javascript_Linux_Node.js_Shell_Console - Fatal编程技术网

Javascript 在node.js中捕获控制台输出而不编辑服务器代码

Javascript 在node.js中捕获控制台输出而不编辑服务器代码,javascript,linux,node.js,shell,console,Javascript,Linux,Node.js,Shell,Console,第一个问题!我试图捕获node.js服务器的所有console.log()输出。假设我在linux机器上,我无法编辑服务器的代码(项目负责人的请求)。但是,我可以更改启动服务器的方式(节点--debug server.js),并且可以附加shell脚本。我的目的是通过管道将控制台输出传输到另一个socket.io服务器 我认为唯一明显的解决方案是要么编写一个linux命令,将服务器的输出传输到某个地方,要么node.js有一个棘手的调试方法来输出信息 最终,我希望能够运行服务器并将控制台输出通过

第一个问题!我试图捕获node.js服务器的所有console.log()输出。假设我在linux机器上,我无法编辑服务器的代码(项目负责人的请求)。但是,我可以更改启动服务器的方式(节点--debug server.js),并且可以附加shell脚本。我的目的是通过管道将控制台输出传输到另一个socket.io服务器

我认为唯一明显的解决方案是要么编写一个linux命令,将服务器的输出传输到某个地方,要么node.js有一个棘手的调试方法来输出信息

最终,我希望能够运行服务器并将控制台输出通过管道传输到API测试服务器。这样,测试人员就可以通过流式传输看到服务器的输出与来自API端点的响应JSON对象相关


谢谢,我希望听到您的解决方案…

通过IRC回答,如果有人感兴趣:

<shesek> patrickm, can't you just pipe the output to another script?
<shesek> node server.js | node send-logs-to-somewhere.js
<shesek> patrickm, in send-logs-to-somewhere.js, you can just read from process.stdin
<patrickm> :)
<patrickm> thats easy
patrickm,难道你不能直接将输出传输到另一个脚本吗? node server.js | node send-logs-to-somewhere.js patrickm,在send-logs-to-somewhere.js中,您可以直接从process.stdin读取 :) 那很容易
太棒了,我不知道这是可能的<代码>将日志发送到某处。js只是一直在监听输入?是的,它工作得很好。我打开一个socket.io连接,打开stdin,让魔法发生。