文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

备忘录三:Spring Boot+Druid+log4j2

2023-06-02 16:33

关注

一:pom.xml配置:去掉Spring boot 默认的spring-boot-starter-logging,引入spring-boot-starter-log4j2

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><exclusions><exclusion><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-logging</artifactId></exclusion></exclusions></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-log4j2</artifactId></dependency>

二:应用配置application.yaml

# logginglogging:  config: classpath:log4j2.xml

三:log42j.xml配置

<?xml version="1.0" encoding="UTF-8"?><Configuration status="OFF"><Properties><property name="LOG_HOME">D:/logs</property></Properties><Appenders><Console name="console" target="SYSTEM_OUT" immediateFlush="true"><ThresholdFilter level="debug" onMatch="ACCEPT"onMismatch="DENY" /><PatternLayout pattern="[%-5p] [%d{yyyy-MM-dd HH:mm:ss SSS}] %c - %m%n" /></Console><RollingRandomAccessFile name="infoLog"immediateFlush="true" fileName="${LOG_HOME}/infoService.log"filePattern="${LOG_HOME}/infoService.log.%d{yyyy-MM-dd}.log.gz"><PatternLayout><pattern>[%-5p] [%d{yyyy-MM-dd HH:mm:ss SSS}] %c - %m%n</pattern></PatternLayout><Policies><TimeBasedTriggeringPolicy interval="1"modulate="true" /></Policies><DefaultRolloverStrategy><Delete basePath="${LOG_HOM}" maxDepth="1"><IfFileName glob="infoService*.gz" /><IfLastModified age="7d" /></Delete></DefaultRolloverStrategy><ThresholdFilter level="info" onMatch="ACCEPT"onMismatch="DENY" /></RollingRandomAccessFile><RollingRandomAccessFile name="errorLog"immediateFlush="true" fileName="${LOG_HOME}/errorService.log"filePattern="${LOG_HOME}/errorService.log.%d{yyyy-MM-dd}.log.gz"><PatternLayout><pattern>[%-5p] [%d{yyyy-MM-dd HH:mm:ss SSS}] %c - %m%n</pattern></PatternLayout><Policies><TimeBasedTriggeringPolicy interval="1"modulate="true" /></Policies><DefaultRolloverStrategy><Delete basePath="${LOG_HOM}" maxDepth="1"><IfFileName glob="errorService*.gz" /><IfLastModified age="7d" /></Delete></DefaultRolloverStrategy><ThresholdFilter level="error" onMatch="ACCEPT"onMismatch="DENY" /></RollingRandomAccessFile><RollingRandomAccessFile name="fatalLog"immediateFlush="true" fileName="${LOG_HOME}/fatalService.log"filePattern="${LOG_HOME}/fatalService.log.%d{yyyy-MM-dd}.log.gz"><PatternLayout><pattern>[%-5p] [%d{yyyy-MM-dd HH:mm:ss SSS}] %c - %m%n</pattern></PatternLayout><Policies><TimeBasedTriggeringPolicy interval="1"modulate="true" /></Policies><DefaultRolloverStrategy><Delete basePath="${LOG_HOM}" maxDepth="1"><IfFileName glob="fatalService*.gz" /><IfLastModified age="7d" /></Delete></DefaultRolloverStrategy><ThresholdFilter level="fatal" onMatch="ACCEPT"onMismatch="DENY" /></RollingRandomAccessFile><RollingRandomAccessFile name="druidSqlLog"immediateFlush="true" fileName="${LOG_HOME}/druidSql.log"filePattern="${LOG_HOME}/druidSql.log.%d{yyyy-MM-dd}.log.gz"><PatternLayout><pattern>[%-5p] [%d{yyyy-MM-dd HH:mm:ss SSS}] %c - %m%n</pattern></PatternLayout><Policies><TimeBasedTriggeringPolicy interval="1"modulate="true" /></Policies><DefaultRolloverStrategy><Delete basePath="${LOG_HOM}" maxDepth="1"><IfFileName glob="druidSql*.gz" /><IfLastModified age="7d" /></Delete></DefaultRolloverStrategy></RollingRandomAccessFile></Appenders><Loggers><!-- 根logger的设置 --><root level="info"><appender-ref ref="console" /><appender-ref ref="infoLog" /><appender-ref ref="errorLog" /><appender-ref ref="fatalLog" /></root><logger name="druid.sql.Statement" level="debug" additivity="false"><appender-ref ref="druidSqlLog" /></logger><logger name="druid.sql.ResultSet" level="debug" additivity="false"><appender-ref ref="druidSqlLog" /></logger></Loggers></Configuration>

四:Druid配置

mysql,druidspring:  datasource:    type: com.alibaba.druid.pool.DruidDataSource    driverClassName: com.mysql.jdbc.Driver    url: jdbc:mysql://localhost:3306/upin_charge?allowMultiQueries=true&useUnicode=true&characterEncoding=UTF-8    username: username:     password: password:     druid:      # 连接池的配置信息      initial-size: 10      max-active: 100      min-idle: 10      max-wait: 60000      # 打开PSCache,并且指定每个连接上PSCache的大小       pool-prepared-statements: true       max-pool-prepared-statement-per-connection-size: 20      # 配置间隔多久才进行一次检测,检测需要关闭的空闲连接,单位是毫秒      time-between-eviction-runs-millis: 60000      # 配置一个连接池中最小生存的时间,单位是毫秒      min-evictable-idle-time-millis: 300000      validation-query: SELECT 1 FROM DUAL      test-while-idle: true      test-on-borrow: false      test-on-return: false      #配置DruidStatViewServlet      stat-view-servlet:        enabled: true        url-pattern: /druid/*        #login-username: admin        #login-password: admin#      # 配置监控统计拦截的filters,去掉后,监控界面sql无法统计,'wall'用于防火墙      filters: stat,wall,log4j2      filter:        stat:          log-slow-sql: true          slow-sql-millis: 1000          merge-sql: true        wall:          config:            multi-statement-allow: true        log4j2:            enabled: true            result-set-log-enabled: true            statement-executable-sql-log-enable: true            statement-create-after-log-enabled: false            statement-close-after-log-enabled: false            result-set-open-after-log-enabled: false            result-set-close-after-log-enabled: false

五:日志文件查看

备忘录三:Spring Boot+Druid+log4j2

[DEBUG] [2019-08-06 16:58:20 570] druid.sql.Statement - {conn-10010, pstmt-20000} created. SELECT  push_id,uuid,user_id,user_name,msg_type,msg_object,msg_title,msg_content,status,read_status,read_date,receive_date,receive_user_id,create_date  FROM upin_msg.msg_push_info  WHERE  status='01'[DEBUG] [2019-08-06 16:58:20 577] druid.sql.Statement - {conn-10010, pstmt-20000} Parameters : [][DEBUG] [2019-08-06 16:58:20 577] druid.sql.Statement - {conn-10010, pstmt-20000} Types : [][DEBUG] [2019-08-06 16:58:20 595] druid.sql.Statement - {conn-10010, pstmt-20000} executed. SELECT  push_id,uuid,user_id,user_name,msg_type,msg_object,msg_title,msg_content,status,read_status,read_date,receive_date,receive_user_id,create_date  FROM upin_msg.msg_push_info  WHERE  status='01'[DEBUG] [2019-08-06 16:58:20 595] druid.sql.Statement - {conn-10010, pstmt-20000} executed. 19.4173 millis. SELECT  push_id,uuid,user_id,user_name,msg_type,msg_object,msg_title,msg_content,status,read_status,read_date,receive_date,receive_user_id,create_date  FROM upin_msg.msg_push_info  WHERE  status='01'[DEBUG] [2019-08-06 16:58:20 601] druid.sql.ResultSet - {conn-10010, pstmt-20000, rs-50000} Result: [2, null, 1, test, 01, test, null, test, 01, 00, null, null, null, 2019-08-05 13:41:12.0][DEBUG] [2019-08-06 16:58:20 603] druid.sql.ResultSet - {conn-10010, pstmt-20000, rs-50000} Result: [3, null, 1, test, 01, test, null, test, 01, 00, null, null, null, 2019-08-05 13:52:05.0][DEBUG] [2019-08-06 16:58:20 603] druid.sql.ResultSet - {conn-10010, pstmt-20000, rs-50000} Result: [4, null, 1, test, 01, test, null, test, 01, 00, null, null, null, 2019-08-05 13:53:50.0][DEBUG] [2019-08-06 16:58:20 603] druid.sql.ResultSet - {conn-10010, pstmt-20000, rs-50000} Result: [5, null, 1, test, 01, test, null, test, 01, 00, null, null, null, 2019-08-06 10:41:10.0][DEBUG] [2019-08-06 16:58:20 604] druid.sql.ResultSet - {conn-10010, pstmt-20000, rs-50000} Result: [6, null, 1, test, 01, test, null, test, 01, 00, null, null, null, 2019-08-06 13:49:58.0][DEBUG] [2019-08-06 16:58:20 605] druid.sql.Statement - {conn-10010, pstmt-20000} clearParameters. [DEBUG] [2019-08-06 16:58:20 608] druid.sql.Statement - {conn-10010, pstmt-20000} Parameters : [][DEBUG] [2019-08-06 16:58:20 608] druid.sql.Statement - {conn-10010, pstmt-20000} Types : []
阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯