Node.js随机抛出EIOexception

我正在使用node.js + socket.io + Winston(logger)写一个游戏服务器,而且我的服务器每天都会死,因为这个例外:

Error: write EIO at errnoException (net.js:901:11) at Object.afterWrite (net.js:718:19) 

我怀疑这可能是我使用温斯顿的方式。 我有server.jsroom.js类,我需要温斯顿这个声明: var winston = require('winston'); 并在server.js我注册文件logging:

 winston.add(winston.transports.File, { filename: 'server.log' }); winston.handleExceptions(new winston.transports.File({ filename: 'errors.log' })) 

room.js我只需调用winston.info()方法即可。

难道是因为有很多room事情吗?

防止应用程序崩溃

:你可以通过使用这个模块来防止你的应用程序崩溃Node.js域的exception处理程序,你可以写你的代码域块内,它永远不会再崩溃。但要小心,你必须先解决你的问题