前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >JavaWeb中的日志输出处理

JavaWeb中的日志输出处理

作者头像
全栈工程师修炼指南
发布2022-09-29 14:55:56
2930
发布2022-09-29 14:55:56
举报

[TOC]

slf4j 类

描述:Slf4j 类是一个简单打印日志的工具,任何一个日志类库。但是不是一个日志的实现而是一个抽象层,允许在后台使用任何一个日志类库。

Slf4j特点:

1.使得日志独立于任何一个特定的日志实现,意味着不需要管理多个日志配置或者多个日志类库,因为提供了统一的记录日志的接口,对不同日志系统的具体实现进行了抽象化,只要按照其提供的方法记录即可,最终日志的格式、记录级别、输出方式等通过绑定具体的日志系统来实现。

2.补充了log4j没有支持的输出打印方式,SLF4J支持{}作为占位符,等价于C语言中的%s,而不必再进行字符串的拼接节省字符串的内存消耗。

3.因为 String 字符串的拼接会使用 StringBuilder 的 append()方式,有一定的性能损耗。使用占位符仅是替换动作,可以有效提升性能

4.使用指定类初始化日志对象,在日志输出的时候可以打印出日志信息所在类

5.每个Logger都被了一个日志级别(log level),用来控制日志信息的输出。

代码语言:javascript
复制
#日志级别从高到低分为:
A:off         最高等级,用于关闭所有日志记录。
B:fatal       指出每个严重的错误事件将会导致应用程序的退出。
C:error       指出虽然发生错误事件,但仍然不影响系统的继续运行。
D:warm        表明会出现潜在的错误情形。
E:info        一般和在粗粒度级别上,强调应用程序的运行全程。
F:debug       一般用于细粒度级别上,对调试应用程序非常有帮助。
G:all         最低等级,用于打开所有日志记录。

LoggerFactory类说明:

  • getLogger()-获取日志对象
  • getILoggerFactory()-获取真实的日志工厂
  • performInitialization()-初始化日志操作
  • singleImplementationSanityCheck()-特定类存在判断
  • bind()-绑定获取真实的日志处理类

基础使用实例:

代码语言:javascript
复制
//1.导入 slf4j 日志包
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

//2.获取 slf4j 日志对象
//LoggerFactory.getLogger 可以在IDE控制台打印日志,便于开发一般加在最上面:
private final static Logger logger = LoggerFactory.getLogger(xxxController.class); //使用指定类初始化日志对象

//3.利用对象方法输出 slf4j 日志
logger.debug("Processing trade with id: {} and symbol: {}", id, symbol);
logger.info("支付开始-学校id{},用户openId{},支付订单号{},总金额{},订单号List{}",schoolId, openId, zfddh, total, orderNumList);
logger.error(throwable.getMessage(), throwable); //打印异常信息 throws Throwable,一般是将捕捉到的Exception对象作为日志记录的最后一个参数

//4.控制台输出示例:
2019-06-24 18:45:49.348  INFO 7308 --- [bio-8080-exec-8] c.x.p.m.v.controller.VoteController      : missing parameter
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-11-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • slf4j 类
相关产品与服务
日志服务
日志服务(Cloud Log Service,CLS)是腾讯云提供的一站式日志服务平台,提供了从日志采集、日志存储到日志检索,图表分析、监控告警、日志投递等多项服务,协助用户通过日志来解决业务运维、服务监控、日志审计等场景问题。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档