[发明专利]日志文件的保存方法和装置有效
申请号: | 201510812631.8 | 申请日: | 2015-11-20 |
公开(公告)号: | CN106776617B | 公开(公告)日: | 2020-11-06 |
发明(设计)人: | 汤卫群 | 申请(专利权)人: | 北京国双科技有限公司 |
主分类号: | G06F16/27 | 分类号: | G06F16/27 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 韩建伟;张永明 |
地址: | 100083 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 日志 文件 保存 方法 装置 | ||
本申请公开了一种日志文件的保存方法和装置。其中,该方法包括:获取服务器记录的日志文件;在分布式数据库中创建目标文件,其中,目标文件用于存储日志文件;获取服务器与分布式数据库之间的数据传输资源;以及利用数据传输资源,将日志文件保存至分布式数据库的目标文件中。本申请解决了无法快速高效地保存服务器的日志文件的技术问题。
技术领域
本申请涉及数据处理领域,具体而言,涉及一种日志文件的保存方法和装置。
背景技术
Java web应用中有一个非常出名的应用服务器-tomcat,java web应用可以跑在tomcat里对外提供服务,每个用户访问该tomcat的日志是非常有价值的,有必要将这些日志记录并保存起来。Tomcat已经提供了两种方式保存这些访问日志,一种是基于文件的log方式AccessLogValve,另外一种是tomcat7.0版本提供的JDBC AccessLogValve。
如果使用基于文件的log方式AccessLogValve保存日志,需要将原始日志文件进行转化,而且这些日志文件都是写在本地的,会受到磁盘容量大小的限制。
为了避免受到磁盘容量大小的限制这个问题,可以使用基于JDBC方式的JDBCAccessLogValve保存日志,但是该方式具有以下缺点:(1)JDBC AccessLogValve中的JDBC的连接不是从连接池拿的,建立连接时消耗资源,(2)JDBC AccessLogValve没有采用批量插入,(3)JDBC AccessLogValve采用了同步插入,(4)在数据量大的时候,对数据库做分库分表比较麻烦,导致无法快速高效地保存服务器的日志文件。
针对上述的问题,目前尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种日志文件的保存方法和装置,以至少解决无法快速高效地保存服务器的日志文件的技术问题。
根据本申请实施例的一个方面,提供了一种日志文件的保存方法,包括:获取服务器记录的日志文件;在分布式数据库中创建目标文件,其中,所述目标文件用于存储所述日志文件;获取所述服务器与所述分布式数据库之间的数据传输资源;以及利用所述数据传输资源,将所述日志文件保存至所述分布式数据库的所述目标文件中。
进一步地,在利用所述数据传输资源,将所述日志文件保存至所述分布式数据库的所述目标文件中之前,所述方法还包括:将所述日志文件存储至所述服务器的缓冲区;判断所述缓冲区的缓冲量是否达到预设值;利用所述数据传输资源,将所述日志文件保存至所述分布式数据库的所述目标文件中包括:在判断出所述缓冲区的缓冲量达到所述预设值的情况下,通过所述数据传输资源,将存储在所述缓冲区中的所述日志文件保存至所述分布式数据库的所述目标文件中。
进一步地,在获取所述服务器与所述分布式数据库之间的数据传输资源之前,所述方法还包括:建立所述服务器与所述分布式数据库之间的连接池,其中,所述连接池中包含多个连接,所述数据传输资源为所述连接;在判断出所述缓冲区的缓冲量达到所述预设值的情况下,通过所述数据传输资源,将存储在所述缓冲区中的所述日志文件保存至所述分布式数据库的所述目标文件中包括:在判断出所述缓冲区的缓冲量达到所述预设值的情况下,从所述连接池中获取多个目标连接,其中,所述目标连接是所述连接池中的空闲连接;利用所述多个目标连接,将所述日志文件保存至所述分布式数据库的所述目标文件中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京国双科技有限公司,未经北京国双科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510812631.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:合并对称实体组的方法及装置
- 下一篇:票务数据查询及票务推荐的方法及装置