我正在寻找一个灵活的事件记录平台来存储Django的预定义(用户名,IP地址)和非预定义(可以根据任何代码片段的需要生成)事件.我目前正在使用日志文件执行其中一些操作,但它最终需要各种分析脚本并最终在数据库中结束,因此我正在考虑将其立即放入诸如MongoDB或Redis之类的nosql存储中.
这个想法是能够轻松地查询,例如,用户最常来自哪个IP地址,用户是否曾执行某些操作,查找特定事件的结果等.
有什么东西已经做到了吗?
如果没有,我在想这个:
“event”是附加到请求对象的字典.中间件填写各种部分(用户名,ip,sql时间),代码根据需要填写其余部分.
在请求被提供之后,请求后挂钩将事件放入mongodb / redis,规范化各个字段(例如,递增用户名:ip地址计数器)并按原样丢弃其余字段.
智慧的话/指向代码的一些/所有这些将是值得赞赏的.
解决方法:
mongodb-log项目可以用作您想要做的事情的基础.