CN101661424B - 一种自适应日志文件高效输出处理方法 - Google Patents
一种自适应日志文件高效输出处理方法 Download PDFInfo
- 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
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,则此次输出日志时的平均日志输出时延为:
所述的步骤4)中的动态调整日志输出大小门限的具体调整方法如下:
令当前未写到日志文件中的日志分别为L1、L2、......、Ln,日志Li(1≤i≤n)的生成时间为Ti,其中T1<T2<......<Tn,日志Li的大小为Mi,当前的日志输出大小门限为H,具体调整策略满足以下规则:
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条日志一起输出到了日志文件中。此次输出日志时的平均日志输出时延为
第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,则此次输出日志时的平均日志输出时延为:
4.根据权利要求1所述的自适应日志文件高效输出处理方法,其特征在于,所述的步骤4)中的动态调整日志输出大小门限的具体调整方法如下:
令当前未写到日志文件中的日志分别为L1、L2、......、Ln,日志Li(1≤i≤n)的生成时间为Ti,其中T1<T2<......<Tn,日志Li的大小为Mi,当前的日志输出大小门限为H,具体调整策略满足以下规则:
b)根据公式(1)计算平均日志输出时延DA,假设上次输出日志的平均日志输出时延为DL,当未输出的日志大小没有增加时,将日志输出大小门限调整为H-Δ;否则若DA>DL,则将日志输出大小门限调整为H+Δ,若DA<DL,将日志输出大小门限调整为H-Δ。
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)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102799514B (zh) * | 2011-05-24 | 2017-02-15 | 中兴通讯股份有限公司 | 一种日志记录管理方法和系统 |
Citations (3)
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 | 索尼株式会社 | 电子设备以及日志输出方法 |
-
2009
- 2009-09-01 CN CN2009101949709A patent/CN101661424B/zh active Active
Patent Citations (3)
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 |