Seaslog可以进行便捷、规范的log记录,高效的海量log分析,可配置、多途径的log预警等。
seaslog的介绍,官方文档已经讲得很清楚了,不赘述,这里主要说说php日志相关的和seaslog要注意的地方。
日志的记录和分析,大改有三个步骤:日志记录、日志收集、日志分析。
日志记录
一般可分为数据库和文件。数据库又分为mysql这种sql数据库和mongo为代表的nosql数据库。
关于采用哪一种方式记录日志,一直有很多争论,其实具体还是看需求,如果你的日志需要即时分析,需要大量的复杂查询就用数据库,否则就用文件。实际场景中,可能用文件的多一点,而且不会抢占用户的资源,浪费网络层和数据库IO层的资源。
seaslog使用中的几个小问题
- logger创建目录时要注意目录创建权限问题。
- 关于buffer_size的解释,官方文档有点模糊,容易造成混淆,其实是每次请求结束都会写一次log,同一次请求中,如果log次数(buffer_size)大于100也会写一次log,如果log次数小于100,则写入内存,直到次数大于等于100或者请求结束再写log,这样可以有效的减少文件IO提高性能。
- seaslog的content和message在当前版本中进行了合并,所以可以自定义日志格式,比如加上ip、用户名等。