log4j

Spring Boot引入日志框架log4f

一曲冷凌霜 提交于 2020-04-21 05:06:31
一 引入POM <!-- 在创建Spring Boot工程时,我们引入了spring-boot-starter,其中包含了spring-boot-starter-logging, 该依赖内容就是Spring Boot默认的日志框架Logback,所以我们在引入log4j之前,需要先排除该包的依赖, 再引入log4j的依赖 --> <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.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>1.7.21</version> </dependency> <dependency> <groupId>org.slf4j<

第三方工具系列--Lombok常用注解

核能气质少年 提交于 2020-04-21 03:18:57
原创作品,可以转载,但是请标注出处地址: https://www.cnblogs.com/V1haoge/p/9329798.html Lombok注解解析: @NonNull   使用在方法的参数或者构造器的参数上,用于生成null验证。   Lombok可以识别任何第三方工具的字段上标注的@NonNull名称的注解,并在使用@Data、@AllArgsContruct进行生成方法和构造器时进行null判断。   而Lombok的@NonNull注解使用在参数之上,仅仅作用到你自定义的方法和构造器之上。   null判断会采用: 1 if (param == null ) 2 throw new NullPointerException("param is marked @NonNull but is null");   的形式插入,并且会在你方法的开头和构造器的this,super之类的调用之后插入。 @Cleanup   使用在资源之前,用于表示资源可以被完美自动释放(在代码的执行路径超出资源范围之前)。   将该注解标注在表示资源的变量之上,比如:@Cleanup InputStream in = new FileInputStream("some/file");   这样一来,在资源范围结束的位置会自动调用in.close()方法进行资源释放。这个调用会在try..

Java编码辅助工具:Lombok —— 避免重复臃肿的代码,提高效率

这一生的挚爱 提交于 2020-04-20 14:40:18
在项目开发过程中,经常会涉及到一些调整很少但又必不可少的环节,比如实体类的Getter/Setter方法,ToString方法等。这时可以使用Lombok来避免这种重复的操作,减少非核心代码的臃肿,提高编码效率。 如何在IntelliJ IDEA中引入Lombok 安装Lombok 插件(否则在调用setter/getter方法时IDE会提示报错): File -> Settings -> Plugins 搜索Lombok Plugin完成安装。 pom.xml中引入lombok依赖( 其中<scope>provided</scope>表示只在编译、测试阶段依赖该jar,运行阶段不依赖(如运行容器中已包含了该jar,则置为provided避免jar冲突),默认<scope>compile</scope>则表示在编译、测试、运行阶段都依赖 ): <dependency> <groupId>org.projectlombok</groupId> <artifactId>lombok</artifactId> <version>1.16.20</version> <scope>provided</scope> </dependency>    Lombok注解用途 (参考:https://blog.csdn.net/vbirdbest/article/details/79495398)

SpringBoot第十三篇:日志处理

余生长醉 提交于 2020-04-19 06:17:20
作者:追梦1819 原文: https://www.cnblogs.com/yanfei1819/p/10973583.html 版权声明:本文为博主原创文章,转载请附上博文链接! <br> ## 引言   日志是软件系统的“基础设施”,它可以帮助我们了解系统的运行轨迹,查找系统的运行异常等。很多人都没有引起对日志的重视。 下面我们先来设定几个实际项目项目的场景: 1、xxx物流云系统,公司在给货车司机打款的时候,司机没收到账款。司机在线等,没收到账款,就不继续跑了; 2、xxx商城小程序,给用户进行退款的时候,用户没有收到钱,然后要举报公司。。。; 3、线上系统挂了,待找原因,待上线等。   这些都属于很严重的生产事故了,直接影响公司的运营。然而,这些问题的解决,通常在要日志中查找原因(当然,日志的作用不限于此),然后解决。   我们见过最多的日志相关的代码莫过于 System.out.println(""); , log4j 这两种了。下面我们来说说 SpringBoot 中日志框架的使用。 <br> ## 日志框架介绍 目前市面上的日志框架有: JUL、JCL、Jboss-logging、logback、log4j、log4j2、slf4j.... log4j   log4j 是 Apache 的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台

springboot结合日志门面SLF4j和日志实现Logback的使用

左心房为你撑大大i 提交于 2020-04-19 06:03:29
一、此处主要介绍在springboot工程下如何使用 logback + slf4j 进行日志记录。 logback主要包含三个组成部分:Loggers(日志记录器)、Appenders(输出目的在)、Layouts(日志输出格式) slf4j :如jdbc一样,定义了一套接口,是一个日志门面,可实现多个日志系统间快速切换(通过修改配置文件) logback : 和log4j是同一作者,是log4j的升级版,效果可想而知. logback 主要分为三个模块,分别是:   logback-core:提供基础功能,是其他两个模块的基础   logback-classic : log4j的升级,实现了self4j api   logback-access:用于与sevlet容器进行集成、提供网络访问日志的功能 二、初级日志门面SLF4j和日志实现Logback的使用 第一步使用springboot框架建立maven工程: 第二步在springboot框架的Maven工程中导入依赖: <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> 第三步在test/java/com/imooc

🔥SpringBoot图文教程2—日志的使用「logback」「log4j」

☆樱花仙子☆ 提交于 2020-04-18 08:44:28
有天上飞的概念,就要有落地的实现 概念+代码实现是本文的特点,教程将涵盖完整的图文教程,代码案例 文章结尾配套自测面试题,学完技术自我测试更扎实 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例都敲一遍 大哥大姐新年好,点赞转发不要少 SpringBoot 图文系列教程技术大纲 简单说明,教程分为基础篇,进阶篇和高级篇 基础篇,本章力求简单快速的掌握基本的SpringBoot使用,并应用到项目中 进阶篇,学会SpringBoot更多的常见用法以及底层原理 高级篇,着重介绍SpringBoot的与各大场景的整合使用 环境要求 开发工具 IDEA 版本不限 maven3.x jdk1.8 本教程采用SpringBoot 2.0.3.RELEASE SpringBoot 图文教程系列文章目录 SpringBoot图文教程1「概念+案例 思维导图」「基础篇上」 前言 又名:为啥要有日志 文章内容概要 掌握日志的基本概念和作用 掌握SpringBoot中日志的使用 了解SpringBoot中日志的相关原理 今天的故事从一艘船说起,泰坦尼克号,昨天重温了一下这部经典影片。 不过,作为钢铁直男程序员的我,要分享的并不是 You jump,I jump ,而是 咋沉的?原因咋发现的? 咋沉的?海市蜃楼碰到冰山了。 我咋知道的?通过航海日志 。咳咳 是科学家通过航海日志搞定的

Kafka监控与JMX

醉酒当歌 提交于 2020-04-17 17:51:38
JMX JMX(Java Management Extensions,即Java管理扩展)是一个为应用程序、设备、系统等植入管理功能的框架。JMX可以跨越一系列异构操作系统平台、系统体系结构和网络传输协议,灵活的开发无缝集成的系统、网络和服务管理应用。 通俗地讲,有了它就可以监控Java程序的基本信息和运行情况。 Kafka开启JMX的配置 Windows【修改kafka-server-start.bat文件,在设置堆内存后面加上JMX端口】 @echo off rem Licensed to the Apache Software Foundation (ASF) under one or more rem contributor license agreements. See the NOTICE file distributed with rem this work for additional information regarding copyright ownership. rem The ASF licenses this file to You under the Apache License, Version 2.0 rem (the "License"); you may not use this file except in compliance with

Centos7使用Docker启动elasticsearch服务秒退

亡梦爱人 提交于 2020-04-15 13:26:01
【推荐阅读】微服务还能火多久?>>> 首先查看docker启动日志 docker logs -f 容器id    查看报错信息 OpenJDK 64-Bit Server VM warning: Option UseConcMarkSweepGC was deprecated in version 9.0 and will likely be removed in a future release. [2019-11-24T11:17:55,311][WARN ][o.e.c.l.LogConfigurator ] [unknown] Some logging configurations have %marker but don't have %node_name. We will automatically add %node_name to the pattern to ease the migration for users who customize log4j2.properties but will stop this behavior in 7.0. You should manually replace `%node_name` with `[%node_name]%marker ` in these locations: /usr/share

集成 Spring + Spring MVC + MyBatis 搭建单体应用

痞子三分冷 提交于 2020-04-14 09:03:04
【今日推荐】:为什么一到面试就懵逼!>>> 这里使用 Maven 项目管理工具构建项目 初始化项目 打开 Intellij IDEA,点击 Create New Project 选择 Maven 构建项目 选择 JDK 版本 勾选项目模板 选择 maven-archetype-webapp 模板(Java Web 项目) 填写项目在 Maven 仓库中的坐标(在 Maven 仓库中根据这个坐标才能找到该项目),具体命名规则根据公司决定 选择 Maven 安装路径(此处不阐述 Maven 安装教程 的详细步骤) 选择 Maven 配置文件路径 选择 Maven 本地仓库路径 填写项目名 选择工作目录(不建议存放 C 盘) 整合 Spring、Spring MVC、Mybatis 在 src > main 目录下分别新建 java 源码目录 和 resource 配置文件目录 java 目录下创建源码的基本目录结构(该目录结构仅供参考,建议改为模块化结构) webapp 目录下创建 static 目录,用于存放静态资源文件(css, js, img...) webapp > WEB-INF 目录下创建 view 目录,用于存放页面(jsp, html...) 完整的 pom.xml 如下: <?xml version="1.0" encoding="UTF-8"?> <project

Log4j1,Logback以及Log4j2性能测试对比

我与影子孤独终老i 提交于 2020-04-12 15:37:39
环境 jdk:1.7.0_79 cpu:i5-4570@3.20GHz 4核 eclipse:3.7 操作系统:win7 准备 1.log4j:1.7.21 <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-log4j12</artifactId> <version>1.7.21</version> </dependency> log4j.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"> <log4j:configuration xmlns:log4j='http://jakarta.apache.org/log4j/'> <appender name="myConsole" class="org.apache.log4j.ConsoleAppender"> <layout class="org.apache.log4j.PatternLayout"> <param name="ConversionPattern" value="[%d{dd HH:mm:ss,SSS\} %-5p] [%t] %c{2\} - %m%n" /> </layout> <!--过滤器设置输出的级别