各位好,俺以前从没搞过分布式的系统,但是俺现在遇到一个涉及到分布式系统,web应用服务器部署在三台不同的物理主机上。在一般的单服务器项目中,我们用个log4j日志框架就完成日志的记录了。但是在分布式应用中,还要考虑各个系统之间日志同步的问题,有没有什么日志框架可以解决整个问题?
网上搜了一圈,发现一个叫“分布式日志收集系统”的名词,按着这个名词搜到了scribe、chukwa 、kafka 等几个技术,资料不太多,不太理解,不知道是不是本人需要的东西。
请做过这个的朋友指点一下,感激不尽。
网上搜了一圈,发现一个叫“分布式日志收集系统”的名词,按着这个名词搜到了scribe、chukwa 、kafka 等几个技术,资料不太多,不太理解,不知道是不是本人需要的东西。
请做过这个的朋友指点一下,感激不尽。
解决方案
20
日志不需要同步,分布式节点本人写本人的日志。
有几种方案做解析:
1. 每天把当天的日志增量拿到分析服务器上,内网批量同步的效率很高,几百G都不在话下。要留档要解析都可以。
2. 假如要实时持久,就写日志的时候写进消息队列,由分析服务器异步从消息队列里读(kafka就是这么个东西)
有几种方案做解析:
1. 每天把当天的日志增量拿到分析服务器上,内网批量同步的效率很高,几百G都不在话下。要留档要解析都可以。
2. 假如要实时持久,就写日志的时候写进消息队列,由分析服务器异步从消息队列里读(kafka就是这么个东西)
5
一般本机的日志用来排错,本人上面说的是日志的归档管理和日志数据的大规模分析用的。
你假如只是要debug排错的话,就别搞这么复杂的东西了,老老实实去本机上找吧
5
定一个
假如有有上百台机器的集群呢?也是一个一个找?
假如有有上百台机器的集群呢?也是一个一个找?
15
目前没有在项目中针对分布式系统的统一日志控制。
假如仅仅是错误日志的监控,可以在log4j中配置有error则发送邮件。
假如仅仅是错误日志的监控,可以在log4j中配置有error则发送邮件。
5
目前没有在项目中针对分布式系统的统一日志控制。
假如仅仅是错误日志的监控,可以在log4j中配置有error则发送邮件。系统要求是这样的,记录日志主要有两个方面,一个是记录用户的操作行为,这个要记录的数据库中,假如记录到日志文件上,本人感觉不便于统计分析。另外一个主要是记录错误日志,错误日志发邮件是个不错的方法,谢谢你的回答。
另外本人看很多人都推崇logback,这个是log4j的作者搞的另外一个日志框架,据说性能各方面比log4j要好很多,具体没用过,回去研究一下。
记录用户的行为可以加切面,监测操作。