收集异常日志
概述:
程序开发中,经常需要对后台运行出现的异常情况进行记录,将数据输出到一个文件中。
下面提供一个异常收集日志的案例,代码如下:
public static void main(String[] args) throws FileNotFoundException {
try {
String str = null;
str.length();
}catch (Exception e){
//创建日期对象
Date date = new Date();
//创建PrintWriter字符输出流
PrintWriter pw = new PrintWriter("D:\\临时文件夹\\测试\\新建文件夹\\log.txt");
//创建用于格式化日期的SimpleDateFormat对象
SimpleDateFormat sdf = new SimpleDateFormat("yyyy年MM月dd日HH时mm分");
//对当前日期进行格式化
String dateStr = sdf.format(date);
//将日志输出到PrintWriter流中
e.printStackTrace(pw);
//将日期输出到PrintWriter流中
pw.println(dateStr);
//字符流需要刷新管道
pw.flush();
//关闭流
pw.close();
}
}
下面提供一个进阶版的日志收集方案,将会以异常发生的时间作为文件名,将异常日志输入到文件中,代码如下:
public static void main(String[] args) throws FileNotFoundException {
try {
String str = null;
str.length();
}catch (Exception e){
StringBuffer sb = new StringBuffer("D:\\临时文件夹\\测试\\新建文件夹\\");
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH点mm分");
String dateStr = sdf.format(new Date());
sb.append(dateStr).append(".txt");
System.out.println(sb);
PrintWriter pw = new PrintWriter(sb.toString());
e.printStackTrace(pw);
pw.close();
}
}