Logger用法
- logger的输出有两种方式:
①log.log(Level.INFO,"message")
②log.info("mesage")
其他级别的输出与此类似。 - 获得com.sample.LoggerSample这个类的logger对象。
可设置其Level,这样在LoggerSample运行时会根据在LoggerSample中预先定义好的Level级别来输出log。 - 设置logger输出级别
各级别按降序排列如下:
SEVERE(最高值)
WARNING
INFO
CONFIG
FINE
FINER
FINEST(最低值)
此外,还有一个级别 OFF,可用来关闭日志记录,使用级别 ALL 启用所有消息的日志记录。
如设置的Level级别比预定义的输出级别高,则Level较低处的log就不会输出。 - 可以给logger添加Handler来进行不同形式的输出:
①FileHandler:输出到文件
②ConsoleHandler:输出到控制台
③SocketHandler:输出到网络
public class loggerTest {
/** 存放的文件夹 **/
private static String file_name = "反馈日志";
/**
* 得到要记录的日志的路径及文件名称
* @return
*/
private static String getLogName() {
StringBuffer logPath = new StringBuffer();
logPath.append(System.getProperty("user.home")); //用户的主目录
logPath.append("\\"+file_name);
File file = new File(logPath.toString());
if (!file.exists())
file.mkdir();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
logPath.append("\\"+sdf.format(new Date())+".log");
return logPath.toString();
}
/**
* 配置Logger对象输出日志文件路径
* @param logger
* @param level 在日志文件中输出level级别以上的信息
* @throws SecurityException
* @throws IOException
*/
public static void setLogingProperties(Logger logger, Level level) {
FileHandler fh;
try {
fh = new FileHandler(getLogName(), true);
logger.addHandler(fh);// 日志输出文件
// logger.setLevel(level);
fh.setFormatter(new SimpleFormatter());// 输出格式
// logger.addHandler(new ConsoleHandler());//输出到控制台(默认都会输出到控制台 通过logger.setUseParentHandlers(false)关掉)
} catch (SecurityException e) {
logger.log(Level.SEVERE, "安全性错误", e);
} catch (IOException e) {
logger.log(Level.SEVERE, "读取文件日志错误", e);
}
}
public static void setLogingProperties(Logger logger) throws SecurityException, IOException {
setLogingProperties(logger,Level.ALL);
}
public static void main(String[] args) {
Logger logger = Logger.getLogger("log.text");
try {
loggerTest.setLogingProperties(logger);
// logger.setUseParentHandlers(false); //不输出到控制台(放在输出语句之前)
logger.log(Level.INFO,"aaaaa");
logger.setLevel(Level.WARNING); //设置日志级别 设置级别以下的不显示( logger默认的级别是INFO)
logger.log(Level.WARNING, "ccccc");
logger.info("bbbbb");
} catch (SecurityException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}
输出结果:
十一月 , :: 下午 test.loggerTest main
信息: aaaaa
十一月 , :: 下午 test.loggerTest main
警告: ccccc
相应文件夹也会有对应文件
Logger用法的更多相关文章
- org.apache.log4j.Logger用法
在应用程序中添加日志记录总的来说基于三个目的 :监视代码中变量的变化情况,周期性的记录到文件中供其他应用进行统计分析工作:跟踪代码运行时轨迹,作为日后审计的依据:担当集成开发环境中的调试器的作用,向文 ...
- python中的日志,logger用法
python中自带logger模块,实现方法有两种,一般使用第二种,更灵活 方法一: import logging # 通过logging.basicConfig完成 logging.basicCon ...
- java中错误日志的用法
1.maven包:将下面的maven加入到pom.xml <!-- https://mvnrepository.com/artifact/log4j/log4j --><depend ...
- 【python】Logging模块
1.日志记录级别 logging.debug<logging.info<logging.warning<logging.error<logging.critical 关键是最高 ...
- org.apache.log4j.Logger详解
org.apache.log4j.Logger 详解 1. 概述 1.1. 背景 在应用程序中添加日志记录总的来说基于三个目的 :监视代码中变量的变化情况,周期性的记录到文件中供其他应用进行统计分析工 ...
- 分享公司Basecode的用法
主题 公司在basecode的用法上是比较有新意的,所以准备记录分享下公司的用法. 说明 basecode公司的一个主要用途就是用于一些基础的代码表,参数表的前台操作.这些表有很多,用spring d ...
- slf4j log4j logback关系详解和相关用法
slf4j log4j logback关系详解和相关用法 写java也有一段时间了,一直都有用slf4j log4j输出日志的习惯.但是始终都是抱着"拿来主义"的态度,复制粘贴下配 ...
- NSLogger 简单用法总结
NSLogger 支持在同一个本地网络下,移动 App产生的日志,通过 Bonjour 网络传送到电脑上查看日志信息. 1.具体用法: 在移动App项目里,添加3个文件: LoggerCommon.h ...
- java中log4j用法详细讲解和一些小总结
0.Log4j的用法详解 首先,在项目中的classes 中新建立一个log4j.properties文件即可: 在实际编程时,要使Log4j真正在系统中运行事先还要对配置文件进行定义.定义步骤就是对 ...
随机推荐
- visual studio cl -d1reportSingleClassLayout查看内存f分布
C:\Users\Administrator\Desktop\cppsrc>cl -d1reportSingleClassLayoutTeacher virtual.cpp 用于 x86 的 M ...
- A1027 Colors in Mars (20)(20 分)
A1027 Colors in Mars (20)(20 分) People in Mars represent the colors in their computers in a similar ...
- Gym - 101981D Country Meow(模拟退火)
题意 三维空间有\(n\)个点,找到另外一个点,离所有点的最大距离最小.求这个距离. 题解 \(1\).最小球覆盖,要找的点为球心. \(2\).模拟退火. 还是补一下模拟退火的介绍吧. 模拟退火有一 ...
- HDU1301 Jungle Roads
Jungle Roads The Head Elder of the tropical island of Lagrishan has a problem. A burst of foreign ai ...
- 笔记-python-standard library-8.1 data types-datetime
笔记-python-standard library-8.1 data types-datetime 1. Datatimes 本章节内容为日期和时间处理类和方法. 1.1. date ...
- 菜鸟学Linux - Linux文件属性
在Linux中,文件的属性是一个很重要的概念,用户或者用户组对一个文件所拥有的权限,都可以从文件的属性得知. 我们可以通过ls -al命令,列出某个文件夹下面的所有文件(包括以.开头的隐藏文件).下面 ...
- CA证书申请、认证原理
(一) 证书的申请 密钥文件的格式用OpenSSL生成的就只有PEM和DER两种格式,PEM的是将密钥用base64编码表示出来的,直接打开你能看到一串的英文字母,DER格式是二进制的密钥文件,直接打 ...
- uoj206 [APIO2016]最大差分
ref #include "gap.h" #include <iostream> #include <cstdio> using namespace std ...
- 图文教程:为认证考试搭建Hyper-V家庭实验室
[TechTarget中国原创] 在过去20年里,我已经帮助成千上万人准备他们的IT认证考试.虽然有很多方法通过技术来获得经验,组建一个Hyper-V家庭实验室是个利用不同应用程序来获得经验的廉价并有 ...
- Wordpress 文章添加副标题
后台编辑区添加自定义副标题字段 /** * Add Subtitle in all post */ function article_subtitle( $post ) { if ( ! in_arr ...