网站建设排版页面所有网站302跳转百度
web/
2025/10/7 20:32:27/
文章来源:
网站建设排版页面,所有网站302跳转百度,google 网站突然一条收录也没有,外贸网站建设和网站推广要怎么做日志记录在整个java工程开发中占着很重要的比重#xff0c;因为很多问题的排查需要通过日志分析才能确认。在SpringBoot中我用得最多的就是log4j这个日志框架。接下来我们具体配置log4j. log4j定义了8个级别的log#xff08;除去OFF和ALL#xff0c;可以说分为6个级别#… 日志记录在整个java工程开发中占着很重要的比重因为很多问题的排查需要通过日志分析才能确认。在SpringBoot中我用得最多的就是log4j这个日志框架。接下来我们具体配置log4j. log4j定义了8个级别的log除去OFF和ALL可以说分为6个级别优先级从高到低依次为OFF、FATAL、ERROR、WARN、INFO、DEBUG、TRACE、 ALL logger.fatal(fatal); // 严重错误一般会造成系统崩溃和终止运行logger.error(error); // 错误信息但不会影响系统运行logger.warn(warn); // 警告信息可能会发生问题logger.info(info); // 程序运行信息数据库的连接、网络、IO操作等logger.debug(debug); // 调试信息一般在开发阶段使用记录程序的变量、参数等logger.trace(trace); // 追踪信息记录程序的所有流程信息1.添加POM依赖 !-- log4j的日志服务 --dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-log4j/artifactIdversion1.3.8.RELEASE/version/dependency2.增加log4j.properties日志配置文件
在工程的resources文件夹增加log4j.properties具体配置文件如下:
### set log levels - for more verbose logging change info to debug ###
#展示log4j的各种配置
log4j.rootLoggerstdout,File
log4j.appender.logfile.encodingUTF-8#打印到控制台的日志
### Console DEBUG
log4j.logger.stdoutDEBUG
log4j.appender.stdoutorg.apache.log4j.ConsoleAppender
log4j.appender.stdout.Appendtrue
log4j.appender.stdout.MaxFileSize20MB
log4j.appender.stdout.MaxBackupIndex10
log4j.appender.stdout.layoutorg.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern%-d{yyyy-MM-dd HH:mm:ss}-[ %p ] %c - %m%n#普通文件保存日志
### File
log4j.appender.File.Threshold ERROR
log4j.appender.File org.apache.log4j.DailyRollingFileAppender
log4j.appender.File.layout org.apache.log4j.PatternLayout
log4j.appender.File.layout.ConversionPattern %d{yyyy-MM-dd HH:mm:ss}:%p - %m%n
log4j.appender.File.FileE:/console.log
log4j.appender.File.DatePattern.yyyy-MM-dd#自己定义的日志这里我们是用作记录用户访问的日志
#这里的日志是按天滚动后缀名是年月日
###Access log
log4j.logger.accessInfoINFO,R1
log4j.appender.R1 org.apache.log4j.DailyRollingFileAppender
log4j.appender.R1.layout org.apache.log4j.PatternLayout
log4j.appender.R1.EncodingUTF-8
log4j.appender.R1.layout.ConversionPattern %d{yyyy-MM-dd HH:mm:ss}:%p %t %c - %m%n
log4j.appender.R1.FileE:/access.log
log4j.appender.R1.DatePattern.yyyy-MM-dd#自己定义的日志这里我们是用作记录用户阅读的日志
#这里的日志是按天滚动后缀名是年月日
#user read record log
log4j.logger.userReadINFO,R2
log4j.appender.R2 org.apache.log4j.DailyRollingFileAppender
log4j.appender.R2.layout org.apache.log4j.PatternLayout
log4j.appender.R2.EncodingUTF-8
log4j.appender.R2.layout.ConversionPattern %d{yyyy-MM-dd HH:mm:ss}:%p %t %c - %m%n
log4j.appender.R2.FileE:/user_read.log
log4j.appender.R2.DatePattern.yyyy-MM-dd#INFO
#关闭某些日志的输出
log4j.logger.com.zaxxer.hikariOFF
log4j.logger.org.apache.http.impl.conn.PoolingHttpClientConnectionManagerOFF
log4j.logger.org.thymeleaf.TemplateEngine.CONFIGOFF
log4j.logger.org.springframework.boot.autoconfigure.logging.ConditionEvaluationReportLoggingListenerOFF
log4j.logger.io.lettuceOFF
这里总共输出了4块日志 一个是stdout的标准控制台输出。
一个是普通文件保存日志基本是所有的日志都会输出在这里所以它的日志级别定义的非常高定义成ERROR级别这样普通的DEBUG,INFO这样的日志都不会输出到这里只有ERROR级别的才会输出。
一个是accessInfo日志这是用户自定义的一个日志用于记录用户的访问日志
一个是userRead日志这是用户自定义的一个日志用于记录用户的阅读记录日志
接下里在代码里面我们增加用户自定义日志的使用技巧我们定义一个接口常量这样用户在记录自己特有的日志信息时就可以直接用常量接口来调用
package com.example.firstweb.util;import org.apache.log4j.Logger;public interface Constants {public static final Logger LOG_ACCESS_INFO Logger.getLogger(accessInfo);public static final Logger LOG_USER_READ Logger.getLogger(userRead);}
然后我们在Controller里面使用这些接口常量来记录日志
package com.example.firstweb.controller;import com.example.firstweb.model.po.WelcomePo;
import com.example.firstweb.model.vo.WelcomeVo;
import com.example.firstweb.service.WelcomeService;
import com.example.firstweb.util.Constants;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;import org.apache.log4j.Logger;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.servlet.ModelAndView;Controller
Api(value welcome controller, tags 欢迎界面)
public class Welcome {Autowiredprivate WelcomeService welcomeService;private static final Logger log Logger.getLogger(Welcome.class);GetMapping(/welcomeindex)ApiOperation(欢迎首页的方法1)public ModelAndView welcomeIndex(){ModelAndView view new ModelAndView(welcomeindex);WelcomePo wpo welcomeService.getWelcomInfo();WelcomeVo wvo new WelcomeVo();BeanUtils.copyProperties(wpo, wvo);view.addObject(welcomedata, wvo);//默认控制台输出日志log.info(default log info );//输出访问日志Constants.LOG_ACCESS_INFO.info(welcome index accesss);//输出用户阅读日志Constants.LOG_USER_READ.info(first user access log );return view;}GetMapping(/welcomeindex2)ApiOperation(欢迎首页的方法2)public void welcomeIndex2(ApiParam(定制欢迎词) String test){}
}
然后启动程序用浏览器访问http://localhost:8088/welcomeindex然后我们在本地磁盘就可以看到三个日志文件分别是access.log,console.log,user_read.log 源代码可以在这里直接获得链接: https://pan.baidu.com/s/161WLSttV-nz5Fbmpf6_VVw 提取码: rgrf
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/88673.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!