一种通过配置项控制日志输出等级的方法

文档序号:9667402阅读:513来源:国知局
一种通过配置项控制日志输出等级的方法
【技术领域】
[0001 ]本发明涉及软件日志输出技术领域,特别是一种通过配置项控制日志输出等级的 方法。
【背景技术】
[0002] Web应用对于日志的打印一般分开各种的等级,debug,info,error,warn。并且对于 不同的功能模块,也会有不同的日志文件记录。在应用运行过程中,因为日志记录,会产生 很多问题:
[0003] -是日志记录等级较低,会产生大量的日志,造成硬盘空间紧缺,甚至爆满,导致 应用无法正常运行;
[0004] 二是应用在生产环境或者开发环境中,需要输出不同等级的日志时,要修改大量 的配置项,效率低下。

【发明内容】

[0005] 本发明解决的技术问题在于提供一种通过配置项控制日志输出等级的方法,以满 足不同的环境而需要输出不同的日志的需求,方便阅读,节省空间。
[0006] 本发明解决上述技术问题的技术方案是:
[0007] 所述的方法包括如下步骤:
[0008] 步骤1:web应用使用log4j记录日志;
[0009] 步骤2:创建带有系统变量的适用于log4j的xml配置文件;
[0010] 步骤3:创建应用的配置文件并添加日志配置项;
[0011]步骤4:web应用增加监听器;
[0012] 步骤5:监听器中添加获取应用配置文件的模块;
[0013] 步骤6:监听器中添加生成系统变量的模块;
[0014]步骤7:添加日志记录初始化的模块;
[0015] 步骤8:启动web应用,监听器初始化配置项;
[0016] 步骤9:结束。
[0017]所述的步骤1是将应用项目导入l〇g4j相关jar。
[0018] 所述的xml配置文件系统变量使用${变量名}的格式来表示;配置项可以写在任意 文本文件或其他方便程序读取的文件中。
[0019] 获取应用配置文件模块自动获取特定路径中的文件中对应key的值存放在内存 中;然后获取内存中对应key的值,判断获取的值是否符合约定的规则,若不符合,则根据默 认的规则加载日志记录模块,若符合,根据得到的值分析对应的日志等级,获取对应的日志 记录模块进行加载。
[0020] 所述的日志记录初始化模块根据传入值分析对应的记录等级,赋值日志记录对应 的最低等级,最高等级;日志输出会输出大于等于最低等级,小于等于最高等级的日志到步 骤2中设置的特定路径文件中。
[0021 ]本发明通过配置文件配置日志等级,使用监听器去读取配置文件并对l〇g4j进行 初始化。可以通过一个配置项达到多个模块多个日志文件都能控制日志输出等级。能方便 的减少日志输出,也能根据需要快速切换不同的日志记录模式。在软件开发阶段,修改配置 项,放宽日志输出等级,可以查看软件运行中所有的日志打印信息,有利于定位缺陷。软件 在生产环境时,设置较高的日志输出等级,只输出运行中错误的信息,减少日志量,有利于 软件长时间运行,减少运维人员的维护工作量。
【附图说明】
[0022]下面结合附图对本发明进一步说明:
[0023]图1为本发明方法流程图;
【具体实施方式】
[0024]见图1所示,本发明的方法按照以下方式具体实施。
[0025]先使用log4j来记录日志,并配置好log4j日志等级配置项为变量:
[0026]
)
[0027] 这里定义日志等级变量log4j·gcloud_debug.min和log4j·gcloud_debug.max;
[0028] Web应用中添加监听器,监听器代码如下
[0029] /*:氺
[0030]

[0034]根据获取到key的值不同,加载不同的系统变量初始化。 [0035]生成系统变量模块
[0036]
[0037]
[0038]把生成的日志等级加载到系统变量中,用于日志初始化。
【主权项】
1. 一种通过配置项控制日志输出等级的方法,其特征在于:所述的方法包括如下步骤: 步骤1 :web应用使用log4j记录日志; 步骤2:创建带有系统变量的适用于log4j的xml配置文件; 步骤3:创建应用的配置文件并添加日志配置项; 步骤4:web应用增加监听器; 步骤5:监听器中添加获取应用配置文件的模块; 步骤6:监听器中添加生成系统变量的模块; 步骤7:添加日志记录初始化的模块; 步骤8:启动web应用,监听器初始化配置项; 步骤9:结束。2. 根据权利要求1所述的通过配置项控制日志输出等级的方法,其特征在于:所述的步 骤1是将应用项目导入l〇g4j相关jar。3. 根据权利要求1所述的通过配置项控制日志输出等级的方法,其特征在于:所述的 xml配置文件系统变量使用${变量名}的格式来表示;配置项可以写在任意文本文件或其他 方便程序读取的文件中。4. 根据权利要求2所述的通过配置项控制日志输出等级的方法,其特征在于:所述的 xml配置文件系统变量使用${变量名}的格式来表示;配置项可以写在任意文本文件或其他 方便程序读取的文件中。5. 根据权利要求1至4任一项所述的通过配置项控制日志输出等级的方法,其特征在 于:获取应用配置文件模块自动获取特定路径中的文件中对应key的值存放在内存中;然后 获取内存中对应key的值,判断获取的值是否符合约定的规则,若不符合,则根据默认的规 则加载日志记录模块,若符合,根据得到的值分析对应的日志等级,获取对应的日志记录模 块进行加载。6. 根据权利要求1至4任一项所述的通过配置项控制日志输出等级的方法,其特征在 于:所述的日志记录初始化模块根据传入值分析对应的记录等级,赋值日志记录对应的最 低等级,最高等级;日志输出会输出大于等于最低等级,小于等于最高等级的日志到步骤2 中设置的特定路径文件中。7. 根据权利要求5所述的通过配置项控制日志输出等级的方法,其特征在于:所述的日 志记录初始化模块根据传入值分析对应的记录等级,赋值日志记录对应的最低等级,最高 等级;日志输出会输出大于等于最低等级,小于等于最高等级的日志到步骤2中设置的特定 路径文件中。
【专利摘要】本发明涉及软件日志输出技术领域,特别是一种通过配置项控制日志输出等级的方法。本发明首先需要应用使用log4j记录日志,使用带有变量如${变量名}形式的log4j的配置文件。构造监听器,读取应用的配置文件对应配置项,根据业务事先定好的规则,若配置项不符合规则,则按照默认的流程来初始化系统变量;若符合规则,则根据配置项调用对应的系统变量的模块进行初始化,生成日志输出的最低等级和最高等级,log4j依据系统变量启动日志记录。web应用启动的时候监听器开始工作,通过修改配置文件对应的配置项的值,控制日志的输出等级,日志正常工作时输出对应等级的日志到特定路径的日志文件中。本发明解决了为web应用在运行过程中产生的日志输出量的问题,可以用于web应用的日志输出控制。
【IPC分类】G06F17/30
【公开号】CN105426453
【申请号】CN201510768139
【发明人】钟健波, 杨松, 季统凯
【申请人】国云科技股份有限公司
【公开日】2016年3月23日
【申请日】2015年11月10日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1