`
DT1
  • 浏览: 66470 次
  • 性别: Icon_minigender_1
  • 来自: 福州
社区版块
存档分类
最新评论

如何规划Logger的输出日志级别(待补充)

    博客分类:
  • Java
阅读更多
欢迎大家补充相关日志级别的输出规范与远景,谢谢。
一个项目的开展需要各种各样的规范,特别是对于刚入门的开发人员,更是需要许多规范对其的开发工作进行指导与保证.

最近就遇到了有关日志输出级别的规范的问题,开发人员需要明确什么时候使用哪个级别进行日志输出

目前关于debug与error的使用倒是非常分明,一个调试时没有出错用,一个是出错的时候使用.但是,什么消息是放在debug中进行输出,什么样的信息可能需要使用info.而什么样的错误信息使用error,而什么样的错误信息使用warn.

现在在此整理一部分:

ERROR
在拦截异常而不直接将该异常往外抛出时(不直接往外指对异常进行了改造或封装),需要使用error输出异常信息.而如果直接将异常往外抛,则不要使用error进行异常输出,由外部/调用方负责处理.

WARN
在运行过程时,如果遇到一些异常的数据或行为,而该异常或行为不直接影响系统的运行(直接影响:指该数据或行为出错,则应用无法正确运行,非直接影响:指数据或行为虽然有误,但应用可正确运行,不会由此产生错误数据),那么使用WARN进行错误提示.

范例场景:
非关键配置数据:在系统有默认配置的情况下导入新的配置时出错,则系统将使用旧的配置,此时使用warn进行错误提示,但允许应用继续运行.
logger.warn("非找到指定配置文件xxxx,将使用默认配置");


INFO
INFO是提示信息的意思,对于有部分日志,允许应用系统运行和维护人员在系统运行时进行查看的,可使用此级别进行输出.相对于DEBUG,INFO日志更针对的是上线后看到应用系统后台的人员,而不是开发人员所想看的程序运行时的细粗度信息

范例场景:
logger.info("应用系统开始输入数据");
logger.info("应用系统正在进行初始化");


DEBUG
DEBUG主要针对开发人员,比如检查输入参数值,根据系统底层运行状态.

范例场景:
logger.debug("输入参数,部门ID:{}", deptId);
logger.debug("删除指定用户角色配置信息,userId:{}, userRoleId:{}", new Object[]{userId, userRoleId});


分享到:
评论

相关推荐

    java swing用Logger输出错误日志.docx

    java swing用Logger输出错误日志

    labview操作logger,日志记录

    labview操作logger,日志记录

    logger记录日志

    logger记录日志logger记录日志logger记录日志logger记录日志

    Logger日志文件查看

    .log文件查看, 日志文件查看 log工具,可以查看日志文件

    logger日志

    日志记录器(Logger)是日志处理的核心组件。log4j具有5种正常级别(Level)。...比如在这里定义了INFO级别,则应用程序中所有DEBUG级别的日志信息将不被打印出来,也是说大于等于的级别的日志才输出。

    Python中logger日志模块详解

    logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级、日志保存路径、日志文件回滚等;相比print,具备如下优点: 可以通过设置不同的日志等级,在release版本中只输出重要信息,而...

    C# Logger C# 的日志工具

    C# Logger 是按照 Apache 的 log4j 项目设计的。它是一个日志工具,可以用来将事件如调试、信息、警告和错误信息写到 Windows 事件日志中。

    Android-logger日志打印工具

    logger 日志打印工具

    Logger开源log日志jar包

    Orhan Obut 大神分享的一开源项目Logger输出日志,非常好用,该开源库能够把: 线程的信息 类的信息 方法的信息 格式打印json、xml等 点击链接跳转到源码打印处 此外还可根据自己需求进行定制化,并且还可日志输出...

    fastify框架的logger日志工具

    fastify框架的logger日志工具

    monitor —— logger 日志监控

    支持自开发,扩展还可用于其他数据采集,在此不一一描述,有意向者自取,logger支持如下: 支持跨平台 windows/linux 支持配置热更新 支持socket断线重连重传 支持内存共享 支持日志文本分类存储 支持日志自动存储...

    C++通用日志系统Logger

    本日志模块的主旨是提供一个基于Qt框架,简单易用、可拓展性好、支持多种输出目标和格式的底层日志库,方便上层调用。模块设计过程中参考了Log4j等软件,并结合C++特性,具有高度可拓展、使用灵活、高性能等优点。

    log4j自定义日志文件名及日志输出格式

    根据项目需要,要求日志文件名及输出的日志内容头为特殊的格式,因此重写了log4j的一些方法,如要求的格式和项目不同,可根据示例参考进行再次的修改

    python logger TimedRotatingFile 日志轮转的demo

    日志轮转的demo # # 第一步,创建一个logger # logger = logging.getLogger() # logger.setLevel(logging.INFO) # Log等级总开关 # # 第二步,创建一个handler,用于写入日志文件 # rq = time.strftime('%Y%m%d...

    JSLogger日志记录组件

    NULL 博文链接:https://angrycoder.iteye.com/blog/940213

    深信服日志分析管理系统SIP-Logger白皮书

    深信服日志分析管理系统SIP-Logger白皮书

    Logger-只有51kb的精简logger4j

    实现了logger4j的java控制台输出日志信息和文件输出日志信息, 可用于对存储空间要求严格的地方。 上传的位源码

    优雅的控制台日志Logger.zip

    优雅的控制台日志Logger.zip,高度可配置的日志工具

    微服务请求日志统一处理方案

    问题:在微服务中如何对请求日志统一输出? 新建日志组件,日志组件对请求进行拦截处理,输出请求入参、出参。其他各微服务引用日志组件,对日志统一输出 日志组件如下: 工具类 1、新建TimeCostEnum 请求耗时类,...

    深入浅析golang zap 日志库使用(含文件切割、分级别存储和全局使用等)

    1、不同级别的日志输出到不同的日志文件中。 2、日志文件按照文件大小或日期进行切割存储,以避免单一日志文件过大。 3、日志使用简单方便,一次定义全局使用。 建议使用使用Uber-go的Zap Logger,大神李文周大博客...

Global site tag (gtag.js) - Google Analytics