java 日志文件打印
java中的日志打印
java中的日志打印:
日志工具类:
log4j.properties解释:
1 1.输出级别的种类
2 ERROR、WARN、INFO、DEBUG
3 ERROR 为严重错误 主要是程序的错误
4 WARN 为一般警告,比如session丢失
5 INFO 为一般要显示的信息,比如登录登出
6 DEBUG 为程序的调试信息
7 2.配置日志信息输出目的地
8 配置格式
9 log4j.appender.appenderName = fully.qualified.name.of.appender.class
10 例如
11 1.log4j.appender.appenderName =org.apache.log4j.ConsoleAppender(控制台)
12 2.log4j.appender.appenderName =org.apache.log4j.FileAppender(文件)
13 3.log4j.appender.appenderName =org.apache.log4j.DailyRollingFileAppender(每天产生一个日志文件)
14 4.log4j.appender.appenderName =org.apache.log4j.RollingFileAppender(文件大小到达指定尺寸的时候产生一个新的文件)
15 5.log4j.appender.appenderName =org.apache.log4j.WriterAppender(将日志信息以流格式发送到任意指定的地方)
16 3.配置日志信息的格式
17 配置格式
18 log4j.appender.appenderName.layout = fully.qualified.name.of.layout.class
19 例如
20 1.log4j.appender.appenderName.layout = org.apache.log4j.HTMLLayout(以HTML表格形式布局),
21 2.log4j.appender.appenderName.layout = org.apache.log4j.PatternLayout(可以灵活地指定布局模式),
22 3.log4j.appender.appenderName.layout = org.apache.log4j.SimpleLayout(包含日志信息的级别和信息字符串),
23 4.log4j.appender.appenderName.layout = org.apache.log4j.TTCCLayout(包含日志产生的时间、线程、类别等等信息)
24 4.控制台和文件选项
25 a.控制台配置ConsoleAppender
26 Threshold=DEBUG:指定日志消息的输出最低层次。
27 ImmediateFlush=true:默认值是true,意谓着所有的消息都会被立即输出。
28 Target=System.err:默认情况下是:System.out,指定输出控制台
29 b.文件配置 FileAppender
30 Threshold=DEBUF:指定日志消息的输出最低层次。
31 ImmediateFlush=true:默认值是true,意谓着所有的消息都会被立即输出。
32 File=mylog.txt:指定消息输出到mylog.txt文件。
33 Append=false:默认值是true,即将消息增加到指定文件中,false指将消息覆盖指定的文件内容。
34 b.文件配置RollingFileAppender
35 Threshold=DEBUG:指定日志消息的输出最低层次。
36 ImmediateFlush=true:默认值是true,意谓着所有的消息都会被立即输出。
37 File=mylog.txt:指定消息输出到mylog.txt文件。
38 Append=false:默认值是true,即将消息增加到指定文件中,false指将消息覆盖指定的文件内容。
39 MaxFileSize=100KB: 后缀可以是KB, MB 或者是 GB. 在日志文件到达该大小时,将会自动滚动,即将原来的内容移到mylog.log.1文件。
40 MaxBackupIndex=2:指定可以产生的滚动文件的最大数。
41 c.输出格式配置PatternLayout
42 log4j.appender.A1.layout.ConversionPattern=%-4r %-5p %d{yyyy-MM-dd HH:mm:ssS} %c %m%n
43 5.日志信息格式中几个符号所代表的含义:
44 [%p][%t][%d{yyyy-MM-dd HH\:mm\:ss}][%C][%L] - %m%n
45 [INFO][http-apr-8080-exec-7][2017-08-30 16:45:34][com.day36.springMVC.common.aop.TestAop][30] - --------log-------------
46 -X号: X信息输出时左对齐;
47 %p: 输出日志信息优先级,即DEBUG,INFO,WARN,ERROR,FATAL,
48 %d: 输出日志时间点的日期或时间,默认格式为ISO8601,也可以在其后指定格式,比如:%d{yyy MMM dd HH:mm:ss,SSS},输出类似:2002年10月18日 22:10:28,921
49 %r: 输出自应用启动到输出该log信息耗费的毫秒数
50 %c: 输出日志信息所属的类目,通常就是所在类的全名
51 %t: 输出产生该日志事件的线程名
52 %l: 输出日志事件的发生位置,相当于%C.%M(%F:%L)的组合,包括类目名、发生的线程,以及在代码中的行数。举例:Testlog4.main (TestLog4.java:10)
53 %x: 输出和当前线程相关联的NDC(嵌套诊断环境),尤其用到像java servlets这样的多客户多线程的应用中。
54 %%: 输出一个"%"字符
55 %F: 输出日志消息产生时所在的文件名称
56 %L: 输出代码中的行号
57 %m: 输出代码中指定的消息,产生的日志具体信息
58 %n: 输出一个回车换行符,Windows平台为"/r/n",Unix平台为"/n"输出日志信息换行
59 可以在%与模式字符之间加上修饰符来控制其最小宽度、最大宽度、和文本的对齐方式。
60 如:
61
62 1) %20c:指定输出category的名称,最小的宽度是20,如果category的名称小于20的话,默认的情况下右对齐。
63
64 2) %-20c:指定输出category的名称,最小的宽度是20,如果category的名称小于20的话,"-"号指定左对齐。
65
66 3) %.30c:指定输出category的名称,最大的宽度是30,如果category的名称大于30的话,就会将左边多出的字符截掉,但小于30的话也不会有空格。
67
68 4) %20.30c:如果category的名称小于20就补空格,并且右对齐,如果其名称长于30字符,就从左边较远输出的字符截掉。
mysql的SQL语句输出:
java 日志文件打印的更多相关文章
- [翻译]Java日志终极指南
本文由 ImportNew - Wing 翻译自 loggly.欢迎加入翻译小组.转载请见文末要求. Java日志基础 Java使用了一种自定义的.可扩展的方法来输出日志.虽然Java通过java.u ...
- Java日志框架:SLF4J,Common-Logging,Log4J,Logback说明
Log4j Apache的一个开放源代码项目,通过使用Log4j,我们可以控制日志信息输送的目的地是控制台.文件.GUI组件.甚至是套接口服务 器.NT的事件记录器.UNIX Syslog守护进程等 ...
- Java日志规范
前言 一个在生产环境里运行的程序如果没有日志是很让维护者提心吊胆的,有太多杂乱又无意义的日志也是令人伤神.程序出现问题时候,从日志里如果发现不了问题可能的原因是很令人受挫的.本文想讨论的是如何在Jav ...
- Java日志系统及框架分析
最近在考虑将容器(Tomcat)内的应用日志统一成slf4j + logback,主要目的有: 快速定位应用日志输出路径,方便日志的采集: 能动态调整日志的级别,方便线上问题定位: 方便在容器层面做扩 ...
- Java日志系统框架的设计与实现
推荐一篇好的文章介绍java日志系统框架的设计的文章:http://soft.chinabyte.com/database/438/11321938.shtml 文章内容总结: 日志系统对跟踪调试.程 ...
- Java学习笔记(十九)——Java 日志记录 AND log4j
[前面的话] 学习的进度应该稍微在快一点. Java日志到了必须学习怎么使用的时候了,因为在项目中要进行使用.基础性文章,选择性阅读. [结构] java日志对调试,记录运行,问题定位都起到了很重要的 ...
- Java程序员最常用的8个Java日志框架
转自:http://www.codeceo.com/article/8-java-log-framework.html 作为一名Java程序员,我们开发了很多Java应用程序,包括桌面应用.WEB应用 ...
- Java 日志管理最佳实践
转:http://blog.jobbole.com/51155/ 日志记录是应用程序运行中必不可少的一部分.具有良好格式和完备信息的日志记录可以在程序出现问题时帮助开发人员迅速地定位错误的根源.对于开 ...
- Java日志管理方法(转载)
原文地址:http://www.cnblogs.com/leocook/p/log_java.html java开发中常见的几种日志管理方案有以下4种: 1. Commons-logging + lo ...
随机推荐
- BigDecimal与Long、int之间的相互转换
//bigDecimal 转换成 Long类型 public static Long bigDecimalToLong(BigDecimal b){ BigDecimal c = new BigDec ...
- 2.4 使用 xpath 对xml 进行解析
public class Demo1 { /** * XPath提取XML文档数据 * xpath很强大 用来提取xml文档数据非常方便 * @throws Exception */ public s ...
- Java虚拟机(JVM)知多少
本文大量参考:https://www.cnblogs.com/lfs2640666960/p/9297176.html 概述 JVM是JRE的一部分.它是一个虚构出来的计算机,是通过在实际的计算机上仿 ...
- Django学习:连接Mysql数据库
开发环境: Windows 10 Python 3.7.4 Django 2.2.6 Mysql 8.0.17 承接上一节:https://www.cnblogs.com/daydayupup/p/1 ...
- 关于pycharm database查看db.sqlites文件提示:Driver class 'org.sqlite.JDBC' not found
系统重新安装后,启动pycharm存在各种问题,其中一个问题就是在Pycharm中的database里面不能查看sqlite数据库了: 经过一番查找终于找到了问题: 首先问题 是提示这样一个报错: 解 ...
- List去重比较
import java.util.ArrayList; import java.util.HashSet; import java.util.LinkedHashSet; import java.ut ...
- MyBatis-11-一对多处理
11.一对多处理 比如:一个老师拥有多个学生! 对于老师而言,就是一对多的关系! 环境搭建 环境搭建,和刚才一样 实体类 @Data public class Teacher { private in ...
- Redis主从复制(读写分离)(四)
Redis主从复制(读写分离) 克隆三台linux虚拟机 9.1.1.克隆虚拟机 9.1.2.生成新的mack地址 9.1.3.主从复制配置 redis主从复制 概述 1.redis的复制功能 ...
- [唐胡璐]QTP技巧 - QTP菜单项消失
有时候QTP的菜单栏的下拉菜单为空。 解决方法:在菜单栏点击右键,选择“Customize”,在Customize窗口的ToolBarTab页,点击“Restore All”后即可。
- ACM-ICPC 2017 沈阳赛区现场赛 M. Wandering Robots && HDU 6229(思维+期望)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6229 参考题解:https://blog.csdn.net/lifelikes/article/det ...