java 一个日志记录异常信息的小工具

package com.crm.mess.util;

/**
 *
 * @author liangrui
 * @2015/1/12
 *
 */
public class ExceptionsLog {

	public synchronized static String logClzInfo(Exception e) {
		StringBuffer sb = new StringBuffer();
		sb.append(e.getClass() + " " + e.getMessage() + "\n");
		StackTraceElement[] stackTraceElement = e.getStackTrace();
		for (StackTraceElement traceElement : stackTraceElement) {
			sb.append("\tat " + traceElement + "\n");
		}
		return sb.toString();
	}

}
package org.pass;

public class GetClz {
	public static void main(String[] args) {
		c();

	}

	public static void c() {
		try {
			int c = 10 / 0;
		} catch (Exception e) {
			String estr = ExceptionsLog.logClzInfo(e);
			System.out.println("estr" + ":" + estr);
			e.printStackTrace();
		}
	}

}

/*output:
 *
 * java.lang.ArithmeticException: / by zero
	at org.pass.GetClz.c(GetClz.java:13)
	at org.pass.GetClz.main(GetClz.java:5)
estr:class java.lang.ArithmeticException / by zero
	at org.pass.GetClz.c(GetClz.java:13)
	at org.pass.GetClz.main(GetClz.java:5)
 * */
时间: 2024-10-29 22:04:56

java 一个日志记录异常信息的小工具的相关文章

Atitit mysql 存储过程捕获所有异常,以及日志记录异常信息

1.1. 异常的处理模式exit  continue undo模式 1 1.2. 捕获所有异常使用        DECLARE continue HANDLER FOR   sqlexception 1 1.3. 捕获特定异常使用HANDLER FOR  errorcode 2 1.4. 记录异常到日志表,获取异常代码和异常信息 2 1.5. 抛出自定义异常 3 2. 程序语言中捕获sql自定义抛出的异常 3 2.1. 代码 3 3. 集合的循环loop while repeat模式 4 3.

第三节:使用Log4net和过滤器记录异常信息,返回异常给前端

上次面试,遇到,在项目中如何处理业务异常和代码异常,使用txt记录异常信息后,如何直接区分出异常的类型,异常怎么分类处理,希望大家能帮我提出宝贵的意见,完善处理异常, 统一返回参数 public class HeaderResult { public HeaderResult() { // ReSharper disable once VirtualMemberCallInConstructor IsSucceed = false; } public virtual bool IsSucceed

一个批量修改AD信息的小脚本

今天接到一个任务,一个子公司100来个USER的账号,更换了新的电话号码,另顺便需要在AD里面体现出 各USER的职位. 好吧,100多个人,如果手动来改,量也很大,首先想到的是用脚本来修改,刚好想到了powershell. 首先,准备一个CSV文件,把USER按如下格式排练好,各值之间用逗号隔开,之后命名test.csv文件 samaccountname,telephonenumber,title user1,1234567,engineer user2,2345678,sales ...,.

tomcat的webappclassloader中一个奇怪的异常信息

如果一个应用抛出大量的Class not found信息,一般你会怀疑包冲突.可是tomcat的webappclassloader却有这样的问题: 如果一个应用发布出现问题, webappclassloader的started属性被设为false.然后其它线程如果继续使用webappclassloader进行class load,则大量的Class not found异常 被抛出: 1391       public Class loadClass(String name, boolean re

Log4Net在MVC下的配置以及运用线程队列记录异常信息

Log4Net是用来记录日志的,可以将程序运行过程中的信息输出到一些地方(文件.数据库.EventLog等),日志就是程序的黑匣子,可以通过日志查看系统的运行过程,从而发现系统的问题.日志的作用:将运行过程的步骤.成功失败记录下来,将关键性的数据记录下来分析系统问题所在.Log4J.对于网站来讲,不能把异常信息显示给用户,异常信息只能记录到日志,出了问题把日志文件发给开发人员,就能知道问题所在. 配置Log4Net环境 (1)新建一个WebApplication (2)添加对log4net.dl

介绍一个日志记录函数

框架的好处之一是有完整的日志记录系统,但都只是针对框架本身的,比如记录数据库调用信息,记录表单值和框架方法之间的参数和返回值等.但是如果项目之间涉及到跨平台,这个日志系统就显得微乎其微了.比如我之前参加的一个项目,主要是使用PHP来编写前段,包含几乎全部的业务逻辑,但是不需要操作数据库,因为操作数据库的所有事情都交给Java语言去实现了.而我们PHP组编写代码的其实只有6个人,但是给我们提供数据库操作的Java组就有30 多个人,按道理应该很容易将这个项目做出来.也只有经历过才觉得这之间的痛苦,

分享一个很早之前写的小工具DtSpyPlus

几年前写的一个获取windows窗体基本信息和屏幕取色的小工具 ,一直在用. 下载地址 http://files.cnblogs.com/dint/SpyPlus.zip

三天教会大家做一个社保管理系统中的核销小工具

我想通过这个小工具,和大家一起从零搭架子,一起编写码,一起探讨一种编码风格,一种架构,一种编程的思想体系,嗯,有了思想体系,则大巧不工! 体验地址是http://tool.hrinto.cn/用户名和密码都是tengfei12345开源地址是https://github.com/Langbencom/HeXiao 下面截图几张 咱们言归正传. 先从搭架子开始 架构没有银弹,但有套路.我认为要吃透三层架构,其他复杂的也是基于现实业务场景由此改编而来.万变不离其宗. 创业三年了,开发的项目很多,就这

Log4net 日志记录配置信息

<log4net> 8 <!--配置日志的级别,低于此级别的就不写到日志里面去 9 OFF.FATAL.ERROR, WARN, INFO, DEBUG, ALL 10 --> 11 <root> 12 <level value="DEBUG" /> 13 <appender-ref ref="LogFileAppender" /> 14 <appender-ref ref="Console