我目前能想到的方法:
awk分析日志+条件求和,更新数据库。
但当日志体积庞大时,效率会受到影响。
有没有更简洁的方式?
欢迎试用我们的http_accounting模块,在nginx官网的第三方模块列表里有哟~
说一下我们的方案,流量1.9kw
1. 前台通过 <img src=”/tj.html”/>方式记录传输日志
2. ningx
单独记录 tj.html
的访问日志
3. syslog
定时 1分钟分割一次
4. cronjob
定时1
分钟 处理分析分割好的日志
现在我们采用的是1分钟更新一次mysql
数据库,正在打算将当天的数据存储方式放到redis上,而将历史记录放到mongodb
上
只要定时做好日志切割,每次处理的文件不会很大。
然后自己写个小程序来统计,效率比较高。
如果有比较灵活的查询需求,还可以把日志信息记录到数据库里头去,根据时间和必要的字段建立好索引,用SQL直接查询就好了。
正文完