基于Log4j的日志写入方法、装置及计算机可读存储介质制造方法及图纸

技术编号:17406581 阅读:63 留言:0更新日期:2018-03-07 04:34
本发明专利技术公开了一种基于Log4j的日志写入方法、装置及计算机可读存储介质,通过从Log4j的缓存区中获取需要写入到目标存储位置的待写入日志,在预设时间周期达时,将当前获取到的待写入日志写入到目标存储位置;也即只要在预设的时间周期到达时,即可将当前需要写入到目标存储位置的待写入日志进行写入;本发明专利技术还公开了一种基于Log4j的装置及计算机可读存储介质,以实施上述方案,解决了现有的日志写入策略中,在当前需要写入的日志数据量较小时,不能及时写入到指定文件,导致用户无法及时获取到该日志的问题,同时不会发生每收到一条日志输出事件就输出一条日志内容的这种高并发情况,因此也降低了对终端数据写入的高性能要求。

Log writing method, device and computer readable storage medium based on Log4j

The invention discloses a method and apparatus for writing and computer readable storage medium based on Log4j log, by acquiring the need to write to the log to be written to the target storage location from the buffer of the Log4j, in a preset period of time up, the current access to the log to be written to the target memory location; that as long as the arrival in a preset period of time, can be written to the current need to be written to the log object storage location for writing; the invention also discloses a device and a computer readable storage medium based on Log4j, to implement the scheme, solve the existing log write strategy, in the current log data need to be written in the smaller amount not timely, write to the specified file, causing the user can not timely access to the log of the problem does not occur at the same time, each received a log output. It outputs this high concurrency of a log content, thus reducing the high performance requirements for terminal data writing.

【技术实现步骤摘要】
基于Log4j的日志写入方法、装置及计算机可读存储介质
本专利技术涉及计算机
,更具体地说,涉及一种基于Log4j的日志写入方法、装置及计算机可读存储介质。
技术介绍
为了便于开发维护以及测试处理,通常相关大型系统或应用都具有日志记录功能,以对相关应用的行为进行记录。而基于Java语言开发的应用中,一种比较流行的日志记录框架Log4j(LogforJava)已成为大型应用中必不可少的一部分,Log4j可以很方便的帮助我们在程序的任何位置输出所要打印的信息,便于我们对系统在调试阶段和正式运行阶段对问题的分析和定位。目前,Log4j可以通过开启Log4j缓冲区策略实现日志写入,通过设置相应的缓冲区阈值,当检测到待写入的日志数据量达到缓冲区阈值时,再将这些待写入的日志一次性写入到指定文件中,但是在实际使用过程中,将存在如下问题,给使用带来了较大影响:开启Log4j缓冲区策略以对相应的日志进行输出写入,在实际使用过程中,若仅仅依靠设置的该缓冲区阈值来控制日志的写入,很有可能存在由于用户要求写入的日志的数据量没有达到该缓冲区阈值,该日志始终无法有效写入到指定文件的问题,或者需要用户等待的时间较长,从而造成业务上的数据暂时性丢失的问题,导致用户无法及时获取到该日志,影响用户使用体验。
技术实现思路
本专利技术要解决的技术问题在于:现有的日志写入策略可能存在对终端性能要求较高,或者可能存在日志数据暂时性丢失,使用户无法及时获取到相应日志,从而影响用户使用体验的问题。针对该技术问题,本专利技术提供一种基于Log4j的日志写入方法、装置及计算机可读存储介质。为解决上述技术问题,本专利技术提供一种基于Log4j的日志写入方法,所述基于Log4j的日志写入方法包括:从所述Log4j的缓存区中获取需要写入到目标存储位置的待写入日志;在预设时间周期到达时,将当前获取到的所述待写入日志写入到所述目标存储位置。可选的,在所述将当前获取到的所述待写入日志写入到所述目标存储位置的步骤之前,还包括:判定获取到的所述待写入日志的数据量大于0。可选的,在所述预设时间周期达到之前,还包括:判断当前获取到的所述待写入日志的数据量是否达到预设数据量门限,如是,直接将所述待写入日志写入到所述目标存储位置。可选的,在所述预设时间周期达到之前,还包括:判断是否接收到日志输出指令,如是,直接将当前获取的所述待写入日志写入到所述目标存储位置。可选的,所述预设数据量门限是根据所述预设时间周期内从所述Log4j的缓存区中获取到的待写入日志的平均数据量进行设置的。可选的,所述预设时间周期是根据使用所述待写入日志的相关业务所允许的业务数据时延进行设置的。可选的,在所述将当前获取的所述待写入日志写入到所述目标存储位置的步骤之后,还包括:将当前计时时间清零,以重新开始计时。可选的,所述目标存储位置包括本地磁盘、数据库、服务器中的至少一种。进一步地,本专利技术还提供了一种基于Log4j的装置,所述装置包括处理器、存储器及通信总线;所述通信总线用于实现处理器和存储器之间的连接通信;所述处理器用于执行存储器中存储的一个或者多个程序,以上述任一项所述的基于Log4j的日志写入方法的步骤。进一步地,本专利技术还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述任一项所述的基于Log4j的日志写入方法的步骤。有益效果本专利技术提供一种基于Log4j的日志写入方法、终端及计算机可读存储介质,针对现有的日志写入策略可能存在对终端性能要求较高,或者可能存在日志数据暂时性丢失,使用户无法及时获取到相应日志,从而影响用户使用体验的问题;通过从Log4j的缓存区中获取需要写入到目标存储位置的待写入日志,在预设时间周期达时,将当前获取到的待写入日志写入到目标存储位置;也即只要在预设的时间周期到达时,即可将当前需要写入到目标存储位置的待写入日志进行写入,并不存在长时间无法写入到目标存储位置的问题,解决了现有的日志写入策略中,在当前需要写入的日志数据量较小时,不能及时写入到指定文件,导致用户无法基极获取到该日志的问题,实现了对相关待写入日志的及时写入,同时不会发生每收到一条日志输出事件就输出一条日志内容的这种高并发情况,因此也降低了对终端数据写入的高性能要求。附图说明下面将结合附图及实施例对本专利技术作进一步说明,附图中:图1为实现本专利技术各个实施例一个可选的移动终端的硬件结构示意图;图2为如图1所示的移动终端的无线通信系统示意图;图3为本专利技术第一实施例提供的一种基于Log4j的日志写入方法流程示意图;图4为本专利技术第一实施例提供的计时监测示意图;图5为本专利技术第二实施例提供的一种基于Log4j的日志写入方法流程示意图;图6为本专利技术第三实施例提供的基于Log4j的装置结构示意图。具体实施方式应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。在后续的描述中,使用用于表示元件的诸如“模块”、“部件”或“单元”的后缀仅为了有利于本专利技术的说明,其本身没有特定的意义。因此,“模块”、“部件”或“单元”可以混合地使用。终端可以以各种形式来实施。例如,本专利技术中描述的终端可以包括诸如手机、平板电脑、笔记本电脑、掌上电脑、个人数字助理(PersonalDigitalAssistant,PDA)、便捷式媒体播放器(PortableMediaPlayer,PMP)、导航装置、可穿戴设备、智能手环、计步器等移动终端,以及诸如数字TV、台式计算机等固定终端。后续描述中将以移动终端为例进行说明,本领域技术人员将理解的是,除了特别用于移动目的的元件之外,根据本专利技术的实施方式的构造也能够应用于固定类型的终端。请参阅图1,其为实现本专利技术各个实施例的一种移动终端的硬件结构示意图,该移动终端100可以包括:RF(RadioFrequency,射频)单元101、WiFi模块102、音频输出单元103、A/V(音频/视频)输入单元104、传感器105、显示单元106、用户输入单元107、接口单元108、存储器109、处理器110、以及电源111等部件。本领域技术人员可以理解,图1中示出的移动终端结构并不构成对移动终端的限定,移动终端可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。下面结合图1对移动终端的各个部件进行具体的介绍:射频单元101可用于收发信息或通话过程中,信号的接收和发送,具体的,将基站的下行信息接收后,给处理器110处理;另外,将上行的数据发送给基站。通常,射频单元101包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等。此外,射频单元101还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于GSM(GlobalSystemofMobilecommunication,全球移动通讯系统)、GPRS(GeneralPacketRadioService,通用分组无线服务)、CDMA2000(CodeDivisionMultipleAccess2000,码分多址2000)、WCDMA(WidebandCodeDivisionMultipleAccess,宽带码分多址本文档来自技高网...
基于Log4j的日志写入方法、装置及计算机可读存储介质

【技术保护点】
一种基于Log4j的日志写入方法,其特征在于,所述基于Log4j的日志写入方法包括:从所述Log4j的缓存区中获取需要写入到目标存储位置的待写入日志;在预设时间周期到达时,将当前获取到的所述待写入日志写入到所述目标存储位置。

【技术特征摘要】
1.一种基于Log4j的日志写入方法,其特征在于,所述基于Log4j的日志写入方法包括:从所述Log4j的缓存区中获取需要写入到目标存储位置的待写入日志;在预设时间周期到达时,将当前获取到的所述待写入日志写入到所述目标存储位置。2.如权利要求1所述的基于Log4j的日志写入方法,其特征在于,在所述将当前获取到的所述待写入日志写入到所述目标存储位置的步骤之前,还包括:判定获取到的所述待写入日志的数据量大于0。3.如权利要求2所述的基于Log4j的日志写入方法,其特征在于,在所述预设时间周期达到之前,还包括:判断当前获取到的所述待写入日志的数据量是否达到预设数据量门限,如是,直接将所述待写入日志写入到所述目标存储位置。4.如权利要求2所述的基于Log4j的日志写入方法,其特征在于,在所述预设时间周期达到之前,还包括:判断是否接收到日志输出指令,如是,直接将当前获取的所述待写入日志写入到所述目标存储位置。5.如权利要求3所述的基于Log4j的日志写入方法,其特征在于,所述预设数据量门限是根据所述预设时间周期内从所述Log4j的缓存区中获取到的待写入日...

【专利技术属性】
技术研发人员:高炳秋
申请(专利权)人:努比亚技术有限公司
类型:发明
国别省市:广东,44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1