socket.io
似乎有一个基本合理的日志记录系统的所有内部。我如何自己获取该日志记录对象,以便可以在适当的级别生成我自己的日志消息?它让我感到疑惑,即我的console.log()
消息在socket.io
消息旁边没有被加时间戳,不加水平和丑陋。我已经在socket.io
代码中做了一堆探索,并且我现在对节点的了解还不够,无法理解对象层次结构是如何知道如何从我的代码中获取所需对象的。长期来看,我可能会想要一个更强大的日志系统模块(能够记录文件,自动旋转,基于每个模块管理级别,自定义日志级别等)。 Winston看起来很合理,但是我也可以使用socket.io
来使用它吗?将所有东西都放在一个地方很好。如何插入socket.io的内置日志记录系统来生成我自己的消息?
7
A
回答
8
在使用socket.io,我是能够插入到现有的记录器模块,像这样:
var express = require('express'),
app = module.exports = express.createServer(), //just creating 'app' for io
io = require('socket.io').listen(app),
logger = io.log, // access the existing logger setup in socket.io
util = require('util');
logger.info(util.format("Express server listening on port %d in %s mode", 8003, app.settings.env));
io.configure('production', function(){
io.set('log level', 1);
}
3
您是否使用Connect的记录器中间件进行了研究?看起来有人已经为您想要的socket.IO-connect创建了一个库。我使用类似的东西在我Express程序:
var connect = require('connect');
module.exports = connect.createServer(
connect.logger({ format: ':response-time :method :url' }),
connect.static(__dirname + '/public)
);
相关问题
- 1. Linux系统日志可以记录非英文消息吗?
- 2. 是否可以将.ASPXAUTH用于我自己的日志记录系统?
- 3. 如何创建自己的日志记录配置的Openfire的插件
- 4. 将系统日志消息转换为mysql插入语句
- 5. 我会如何编写自己的日志记录级别
- 6. 如何在我的程序中创建日志记录系统?
- 7. 如何从我的噶删除HeadlessChrome日志消息记录
- 8. 保存来自另一个模型(我自己的日志系统)的数据
- 9. 如何消除来自特定罐子的日志记录
- 10. 我如何将系统日志消息转换为列
- 11. 错误的格式化日志消息;日志记录已写入日志
- 12. 基于消息内容的系统日志目的地
- 13. 如何在Python中将日志记录配置到系统日志?
- 14. 从我自己的C++程序剥离caffe的日志消息
- 15. 系统日志在日志轮转后停止日志记录
- 16. 日志消息来自何处
- 17. 系统日志中的多行日志记录
- 18. 用于生成系统日志消息的C语言标准接口
- 19. WCF日志记录和统计信息
- 20. 如何配置Tomcat以通过系统日志记录所有内容?
- 21. 时间日志记录系统
- 22. Android文件系统日志记录
- 23. 来自日志子系统的UTF-8不支持消息,Fuse ESB 4.4
- 24. Grails 2.0为自己的类设置日志记录
- 25. Spring SOAP消息参数日志记录
- 26. Rails日志记录消息test.log?
- 27. 消息和彩信日志记录
- 28. wcf rest服务消息日志记录
- 29. 转发Apache日志作为系统日志消息
- 30. 实现WCF消息的自定义日志记录客户端
这是有希望的!我将在明天仔细研究它,看看它是否强制socket-io通过连接中间件路由它的日志消息。我的回退策略是将套接字日志设置为0,并与Winston一起完成我自己的日志记录。我会失去一些低级别的访问权限,但是如果我在套接字级别遇到问题,我会遇到更大的问题,无论如何都需要进行更加精细的调试。 – drewww