我正在使用node.js socket.io Winston(logger)编写游戏服务器,我的服务器因为这个异常而每天都死掉:
Error: write EIO at errnoException (net.js:901:11) at Object.afterWrite (net.js:718:19)@H_301_4@我怀疑它可能是我使用Winston的方式.我有server.js和room.js类,我要求Winston使用这个语句:var winston = require(‘winston’);并在server.js我注册文件记录:@H_301_5@
winston.add(winston.transports.File,{ filename: 'server.log' }); winston.handleExceptions(new winston.transports.File({ filename: 'errors.log' }))@H_301_4@在room.js中,我只需调用winston.info()方法.@H_301_5@ @H_301_4@可能是因为很多房间实例还是什么?@H_301_5@
解决方法
防止APP崩溃
@H_301_4@:您可以使用此模块Node.js domain exception handler来防止应用程序崩溃你可以在域块中编写你的代码,它永远不会再崩溃.但是要小心,你必须先解决你的问题@H_301_5@