1. logger的输出有两种方式:
    ①log.log(Level.INFO,"message")
    ②log.info("mesage")
    其他级别的输出与此类似。
  2. 获得com.sample.LoggerSample这个类的logger对象。
    可设置其Level,这样在LoggerSample运行时会根据在LoggerSample中预先定义好的Level级别来输出log。
  3. 设置logger输出级别

    各级别按降序排列如下:
    SEVERE(最高值)
    WARNING
    INFO
    CONFIG
    FINE
    FINER
    FINEST(最低值)
    此外,还有一个级别 OFF,可用来关闭日志记录,使用级别 ALL 启用所有消息的日志记录。
    如设置的Level级别比预定义的输出级别高,则Level较低处的log就不会输出。

  4. 可以给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

相应文件夹也会有对应文件

最新文章

  1. 微博开放平台开发(一)获取access_token
  2. linux命令学习使用记录
  3. Java——jar命令
  4. NGUI实现Sprite裁切成圆形或者椭圆形(不完美)
  5. 通过Anuglar Material串串学客户端开发 - javascript编译和gulpfile.js
  6. Sixth scrum meeting - 2015/10/31
  7. C语言遇到的错误和解决方案~~~持续更新,记录成长的过程
  8. hdu 5310 Souvenir (水)
  9. Django中的Form
  10. javascript 数组 排除null, undefined, 和不存在的元素
  11. libgdx如何调用android平台内容
  12. 简析服务端通过geotools导入SHP至PG的方法
  13. charles License
  14. P1279 字串距离
  15. (转)使用 CJSON 在C语言中进行 JSON 的创建和解析的实例讲解
  16. java容器HashMap原理
  17. POI中setDefaultColumnWidth方法不起作用的原因
  18. URAL - 1003:Parity (带权并查集&2-sat)
  19. exec函数簇
  20. 《时间序列分析——基于R》王燕,读书笔记

热门文章

  1. tcl之基本语法—1
  2. JZOJ 5838. 旅游路线 最大子段和
  3. Java流(Stream)、文件(File)和IO
  4. GoF23种设计模式之创建型模式之抽象工厂模式
  5. Leetcode 700. 二叉搜索树中的搜索
  6. 3 View - 错误视图函数
  7. Retrofit 入门和提高
  8. RF、GBDT、XGBOOST常见面试算法整理
  9. 设计模式之第9章-原型模式(Java实现)
  10. lucene.NET详细使用与优化详解