系统产生的日志自动加入Log数据表中,其中有一个服务线程专门推送这些日志的,有时候日志记录是连续重复的。
请问怎么弄,记录重复的5分钟推送一次否则太快了。
------解决思路----------------------
加上判断,只发送变动的。
------解决思路----------------------
怎么会重复日志呢?用的哪种日志dll?
entlib?log4?nlog?还是自己实现的?
------解决思路----------------------
记录下最后的行数,然后只记录新的。
------解决思路----------------------
记录重复的5分钟推送一次是否太快了 这取决与你日志生成的速度
10分钟产生1条日志和1秒钟产生100条日志,能做相同处理吗?
------解决思路----------------------
每条日志加上唯一标识(不知道你所谓的重复日志是什么),如果客户端同样的日志能指定唯一key,那么入库时就可以判断是否已经存在,如果客户端不能,那就得你去比对是否有同样内容的存在,如果存在并且已经发送,那么这条标记为已发送
------解决思路----------------------
给日志加个GUID作为唯一标志。
------解决思路----------------------
给日志加标识.去重复. 进行判断.
------解决思路----------------------
啥叫记录重复的5分钟一次? 不重复的就一直发的意思么?
如果是这样,你就记录上一次发送的记录信息,下次发送时对比,一样就不发
------解决思路----------------------
相同的疑问
------解决思路----------------------

做一个Log Cache 先把所有的数据都放这个Cache里,放之前判断是否有重复,重复的不放
然后每5分种去读取这个Cache 并写入DB里后清空这个Cache。