CN101661424B - 一种自适应日志文件高效输出处理方法 - Google Patents

一种自适应日志文件高效输出处理方法 Download PDF

Info

Publication number
CN101661424B
CN101661424B CN2009101949709A CN200910194970A CN101661424B CN 101661424 B CN101661424 B CN 101661424B CN 2009101949709 A CN2009101949709 A CN 2009101949709A CN 200910194970 A CN200910194970 A CN 200910194970A CN 101661424 B CN101661424 B CN 101661424B
Authority
CN
China
Prior art keywords
daily record
output
time delay
big
log
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2009101949709A
Other languages
English (en)
Other versions
CN101661424A (zh
Inventor
郝黎明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Casco Signal Ltd
Original Assignee
Casco Signal Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Casco Signal Ltd filed Critical Casco Signal Ltd
Priority to CN2009101949709A priority Critical patent/CN101661424B/zh
Publication of CN101661424A publication Critical patent/CN101661424A/zh
Application granted granted Critical
Publication of CN101661424B publication Critical patent/CN101661424B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明涉及一种自适应日志文件高效输出处理方法,该方法包括以下步骤:1)定义日志输出时延;2)定义平均日志输出时延;3)初始化日志输出大小门限,令日志输出大小门限H=0;4)动态调整日志输出大小门限,根据平均日志输出时延和未输出的日志大小动态调整日志输出大小门限,以减少平均日志输出时延;5)输出日志文件。与现有技术相比,本发明具有以下优点:有效地解决了频繁打开和关闭文件引起输出效率变低的问题。

Description

一种自适应日志文件高效输出处理方法
技术领域
本发明涉及一种日志输出方法,尤其涉及一种自适应日志文件高效输出处理方法。
背景技术
在软件系统中,需要日志功能来记录软件系统运行过程中所发生的事件。目前的一些日志模块有Log4cpp、Log4j、Log4cxx等,这些模块提供了统一的日志输入接口,可以将日志文件输出到本地文件中。
日志输出到文件中时首先打开日志文件,然后将日志写入文件,最后关闭日志文件。若单位时间内输出的日志数量较多,则打开和关闭日志文件操作就占用较多的资源,尤其是在日志文件较大时,会影响日志文件写入的效率。
发明内容
本发明的目的就是为了克服上述现有技术存在的缺陷,提供一种自适应日志文件高效输出处理方法。
本发明的目的可以通过以下技术方案来实现:
一种自适应日志文件高效输出处理方法,其特征在于,该方法包括以下步骤:
1)定义日志输出时延;
2)定义平均日志输出时延;
3)初始化日志输出大小门限,令日志输出大小门限H=0;
4)动态调整日志输出大小门限,根据平均日志输出时延和未输出的日志大小动态调整日志输出大小门限,以减少平均日志输出时延;
5)输出日志文件。
所述的步骤1)中的定义日志输出时延具体方法如下:
若日志L的生成时间为TA,将该日志输出到日志文件中的时间为TB,则日志L的输出时延为TB-TA
所述的步骤2)中的定义平均日志输出时延具体方法如下:
在打开日志文件之后关闭日志文件之前,假设总共将n条日志L1、L2、……、Ln输出到日志文件中,日志Li(1≤i≤n)的生成时间为Ti,输出到日志文件的时间为TC,则此次输出日志时的平均日志输出时延为:
D A = 1 n Σ i = 1 n ( T C - T i ) - - - ( 1 )
所述的步骤4)中的动态调整日志输出大小门限的具体调整方法如下:
令当前未写到日志文件中的日志分别为L1、L2、......、Ln,日志Li(1≤i≤n)的生成时间为Ti,其中T1<T2<......<Tn,日志Li的大小为Mi,当前的日志输出大小门限为H,具体调整策略满足以下规则:
a)若则同时输出L1、L2、......、Ln到日志文件中,若
Figure GSB00000531155700023
则选择k条日志L1、L2、......、Lk,使其满足
Figure GSB00000531155700024
Figure GSB00000531155700025
同时输出L1、L2、......、Lk到日志文件中;
b)根据公式(1)计算平均日志输出时延DA,假设上次输出日志的平均日志输出时延为DL,当未输出的日志大小没有增加时,将日志输出大小门限调整为H-Δ;否则若DA>DL,则将日志输出大小门限调整为H+Δ,若DA<DL,将日志输出大小门限调整为H-Δ。
与现有技术相比,本发明具有以下优点:
1、具有创新性,该方法在软件系统的日志功能方面尚属首创。
2、通过调整日志输出大小门限,使得平均日志输出时延达到最小,有效地解决了频繁打开和关闭文件引起输出效率变低问题。
附图说明
图1是本发明一种自适应日志文件高效输出处理方法的流程图。
具体实施方式
以下结合具体实施例对本发明做进一步说明。
实施例
如图1所示,一种自适应日志文件高效输出处理方法,具体步骤如下:
第1步,定义日志输出时延。假设日志L的生成时间为2009年7月6日12点0分0秒,将该日志输出到文件中的时间为2009年7月6日12点0分30秒,该条日志的输出时延为30秒;
第2步,定义平均日志输出时延。在打开日志文件之后关闭日志文件之前,假设总共输出了2条日志,这2条日志的生成时间分别为2009年7月6日12点0分的0秒、10秒,在2009年7月6日12点50秒时将这2条日志一起输出到了日志文件中。此次输出日志时的平均日志输出时延为
Figure GSB00000531155700031
第3步,初始化日志输出大小门限。令日志输出大小门限H为0;
第4步,动态调整日志输出大小门限。令当前未写到日志文件中的日志分别为L1和L2,其输出时间为2009年7月6日12点0分的0秒和10秒,每条日志的大小分别为1k和2k。
若当前的日志输出大小门限H=1,则只输出L1;若H=4,则同时输出L1和L2。假设输出的时刻为2009年7月6日12点50秒。H=1时的平均日志输出时延为50秒,H=4时的平均日志输出时延为45秒。
假设Δ=1,当未输出的日志大小没有增加时,日志输出大小门限变为0;否则若上次输出的平均时延为20秒,则日志输出大小门限变为2;若上次输出的平均时延为100秒,否则日志输出大小门限变为0。
第5步,输出日志文件。将日志输出到日志文件中。

Claims (4)

1.一种自适应日志文件高效输出处理方法,其特征在于,该方法包括以下步骤:
1)定义日志输出时延;
2)定义平均日志输出时延;
3)初始化日志输出大小门限,令日志输出大小门限H=0;
4)动态调整日志输出大小门限,根据平均日志输出时延和未输出的日志大小动态调整日志输出大小门限,以减少平均日志输出时延;
5)输出日志文件。
2.根据权利要求1所述的自适应日志文件高效输出处理方法,其特征在于,所述的步骤1)中的定义日志输出时延具体方法如下:
若日志L的生成时间为TA,将该日志输出到日志文件中的时间为TB,则日志L的输出时延为TB-TA
3.根据权利要求1所述的自适应日志文件高效输出处理方法,其特征在于,所述的步骤2)中的定义平均日志输出时延具体方法如下:
在打开日志文件之后关闭日志文件之前,假设总共将n条日志L1、L2、……、Ln输出到日志文件中,日志Li(1≤i≤n)的生成时间为Ti,输出到日志文件的时间为TC,则此次输出日志时的平均日志输出时延为:
D A = 1 n Σ i = 1 n ( T C - T i ) - - - ( 1 )
4.根据权利要求1所述的自适应日志文件高效输出处理方法,其特征在于,所述的步骤4)中的动态调整日志输出大小门限的具体调整方法如下:
令当前未写到日志文件中的日志分别为L1、L2、......、Ln,日志Li(1≤i≤n)的生成时间为Ti,其中T1<T2<......<Tn,日志Li的大小为Mi,当前的日志输出大小门限为H,具体调整策略满足以下规则:
a)若
Figure FSB00000531155600012
则同时输出L1、L2、......、Ln到日志文件中,若
Figure FSB00000531155600013
则选择k条日志L1、L2、......、Lk,使其满足
Figure FSB00000531155600014
Figure FSB00000531155600015
同时输出L1、L2、......、Lk到日志文件中;
b)根据公式(1)计算平均日志输出时延DA,假设上次输出日志的平均日志输出时延为DL,当未输出的日志大小没有增加时,将日志输出大小门限调整为H-Δ;否则若DA>DL,则将日志输出大小门限调整为H+Δ,若DA<DL,将日志输出大小门限调整为H-Δ。
CN2009101949709A 2009-09-01 2009-09-01 一种自适应日志文件高效输出处理方法 Active CN101661424B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009101949709A CN101661424B (zh) 2009-09-01 2009-09-01 一种自适应日志文件高效输出处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009101949709A CN101661424B (zh) 2009-09-01 2009-09-01 一种自适应日志文件高效输出处理方法

Publications (2)

Publication Number Publication Date
CN101661424A CN101661424A (zh) 2010-03-03
CN101661424B true CN101661424B (zh) 2011-09-14

Family

ID=41789468

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009101949709A Active CN101661424B (zh) 2009-09-01 2009-09-01 一种自适应日志文件高效输出处理方法

Country Status (1)

Country Link
CN (1) CN101661424B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102799514B (zh) * 2011-05-24 2017-02-15 中兴通讯股份有限公司 一种日志记录管理方法和系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1604035A (zh) * 2003-09-30 2005-04-06 联想(北京)有限公司 一种日志分析系统及基于该系统的分析方法
CN1967499A (zh) * 2006-04-24 2007-05-23 华为技术有限公司 日志信息输出系统及输出方法
CN101060453A (zh) * 2006-04-20 2007-10-24 索尼株式会社 电子设备以及日志输出方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1604035A (zh) * 2003-09-30 2005-04-06 联想(北京)有限公司 一种日志分析系统及基于该系统的分析方法
CN101060453A (zh) * 2006-04-20 2007-10-24 索尼株式会社 电子设备以及日志输出方法
CN1967499A (zh) * 2006-04-24 2007-05-23 华为技术有限公司 日志信息输出系统及输出方法

Also Published As

Publication number Publication date
CN101661424A (zh) 2010-03-03

Similar Documents

Publication Publication Date Title
CN101571744A (zh) 应用于计算机系统中的功率控制装置以及功率控制方法
CN106970835B (zh) 固定优先级资源受限系统层次能耗优化方法
CN204926065U (zh) Cpu系统深度休眠模式下的故障自恢复装置
CN100376006C (zh) 具有数据选通脉冲电路的半导体内存装置
CN101799321A (zh) 智能振动监测系统
CN101645031A (zh) 一种动态按时间输出日志文件的方法
CN101727423A (zh) 可重配置fpga上可抢占硬件多任务系统及其实现方法
CN101661424B (zh) 一种自适应日志文件高效输出处理方法
WO2010000554A4 (en) Read data flow control in a cascade interconnect memory system
CN105045391A (zh) 智能手表手势输入方法及智能手表
CN107506286A (zh) Cpu和内存块的自动上下线方法和系统
CN201489522U (zh) 一种自适应日志文件输出处理系统
TW200743960A (en) External device and operating method applied thereto
CN202794918U (zh) 一种智能增压供水控制系统
CN204270158U (zh) 基于模糊控制算法的矿井瓦斯抽采流量控制器
CN101527555A (zh) 取样电路及取样方法
CN116229945A (zh) 一种基于参数共享的两阶段语音唤醒方法
CN106294200B (zh) 一种操作系统页面淘汰算法
CN206741258U (zh) 一种基于ZigBee技术的电磁阀无线控制系统
CN203800047U (zh) 一种芯片中添加电容的分布结构
CN202995411U (zh) Plc控制系统
CN215768834U (zh) 一种直流高压输电线路故障诊断系统
CN104202259B (zh) 一种服务器动态资源重构的sas传输性能加速方法
CN101430551B (zh) 微束等离子弧焊dsp控制的集成接口逻辑布图方法
CN113031507B (zh) 基于opc ua的现场总线中心服务器高效传输方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant