日志通用类

/**
  * 跟踪日志,trace.xml记录
  * @param className 类
  * @param methodName 方法
  * @param msg  消息
  */

public static void trace(String className,String methodName,String msg){                Logger traceLogger = PafaCoreContexton.getInstance().getTracer();           traceLogger.log(ActionContext.getCurrentUmId(), Level.INFO ,className,   methodName, msg);

}

/**
     * 记录error日志
     *
     * @param className -
     *            抛出异常的类名
     * @param methodName -
     *            抛出异常的方法名
     * @param t -
     *            抛出的异常
     */
    public static void logError(String className, String methodName, Throwable t) {
        PafaApplicationContext coreContext = PafaCoreContexton.getInstance();
        Logger errorLogger = coreContext.getErrorLogger();
        errorLogger.log(ActionContext.getCurrentUmId(), Level.SEVERE, className, methodName, "", t, "");
    }

/**
  * Description: 获取异常堆栈信息  
  * @param throwable
  * @return 
  */
 public static String getStackTrace(Throwable throwable) {
  
  if (throwable == null){
   return "";
  }
  
  String rtn = throwable.getStackTrace().toString();
  
  Writer writer = null;
  PrintWriter printWriter = null;
  try {
   writer = new StringWriter();
   printWriter = new PrintWriter(writer);
   
   throwable.printStackTrace(printWriter);
   
   printWriter.flush();
   writer.flush();
   
   rtn = writer.toString();
   
  } catch (IOException e) {
   LoggerUtil.logError("com.paic.egis.sales.common.util.LoggerUtil", "getStackTrace", e);
   
  } catch (Exception ex) {
   LoggerUtil.logError("com.paic.egis.sales.common.util.LoggerUtil", "getStackTrace", ex);
   
  }finally{
   
   if(printWriter != null){
    printWriter.close();
   }
   try {
    if(writer != null){
     writer.close();
    }
   } catch (IOException e) {
    LoggerUtil.logError("com.paic.egis.sales.common.util.LoggerUtil", "getStackTrace", e);
   }
   
  }
  
  return rtn;
 }

@SuppressWarnings({ "rawtypes", "unchecked" })
 private static Map fecthParamFromRequest(HttpServletRequest request){
  Map paramMap = new HashMap();
  try{
   synchronized(request){
  
   Enumeration  paramEnum = request.getParameterNames();
   while(paramEnum.hasMoreElements()){
    String paramName = (String)paramEnum.nextElement();
    String messageContent = request.getParameter(paramName);
    paramMap.put(paramName,messageContent);
   }
  }
  }catch(Exception e){
   
  }
  return paramMap;
 }

时间: 2024-10-07 08:56:03

日志通用类的相关文章

C#---数据库访问通用类、Access数据库操作类、mysql类 .[转]

原文链接 //C# 数据库访问通用类 (ADO.NET)using System;using System.Collections.Generic;using System.Text;using System.Data;using System.Data.SqlClient;using System.Configuration; namespace XXX{    /// <summary>    /// 针对SQL Server数据库操作的通用类           /// </sum

jQuery Ajax封装通用类 (linjq)

jQuery Ajax封装通用类 (linjq) $(function(){ /** * ajax封装 * url 发送请求的地址 * data 发送到服务器的数据,数组存储,如:{"date": new Date().getTime(), "state": 1} * async 默认值: true.默认设置下,所有请求均为异步请求.如果需要发送同步请求,请将此选项设置为 false. * 注意,同步请求将锁住浏览器,用户其它操作必须等待请求完成才可以执行. * t

Android开发调试日志工具类[支持保存到SD卡]

直接上代码: package com.example.callstatus; import java.io.File; import java.io.FileWriter; import java.io.IOException; import java.io.PrintWriter; import java.io.StringWriter; import java.net.UnknownHostException; import java.text.SimpleDateFormat; impor

poi导出excel通用类

一.关键的通用类public class PoiExportUtils {    private static HSSFWorkbook workBook; public PoiExportUtils(){        workBook = new HSSFWorkbook();    }        /**     * 创建sheet     * @param sheetName     * @param workBook     * @return     */    public st

PHP curl get post通用类

<?php /** * @author:xiaojiang * curl 通用方法 ..get /post 传送数据 */ class process{ const GET = 0; const POST = 1; public $url; public $ch = null; private $type = 1; public function __construct( $url , $type = self::POST){ $this->url = $url; $this->ch =

DataTable转换为List&lt;Model&gt;的通用类

在开发中,把查询结果以DataTable返回很方便,但是在检索数据时又很麻烦,没有模型类型检索方便. 所以很多人都是按照以下方式做的: // 获得查询结果DataTable dt = DbHelper.ExecuteDataTable(...);// 把DataTable转换为IList<UserInfo>IList<UserInfo> users = ConvertToUserInfo(dt); 问题:如果此系统有几十上百个模型,那不是每个模型中都要写个把DataTable转换为

MVC AJAX导出Excel通用类

通用类: public enum DataTypeEnum { Int = 0, Float = 1, Double = 2, String = 3, DateTime = 4, Date = 5 } public class ExportFieldInfo { /// <summary> /// 字段名,用于反射获取值 /// </summary> public string FieldName { get; set; } /// <summary> /// 中文名,

Memcached通用类(基于enyim.com Memcached Client)

一.如果用官方提供的方法,在web.config里面配置好了各个参数和服务器IP.如下图: <?xml version="1.0"?> <configuration> <configSections> <sectionGroup name="enyim.com"> <section name="memcached" type="Enyim.Caching.Configuration.

【个人使用.Net类库】(2)Log日志记录类

开发接口程序时,要保证程序稳定运行就要时刻监控接口程序发送和接收的数据,这就需要一个日志记录的类将需要的信息记录在日志文件中,便于自己维护接口程序.(Web系统也是如此,只是对应的日志实现比这个要复杂一点). 刚开始考虑的比较少,没有加入控制日志文件数量的功能.运行了一段时间,文件夹内的Log文件如下所示: 如果是这样,那运行一年不就三百多个日志文件了,想一想这太可怕了.通过查找资料,发现.Net中的FileInfo存有文件的信息(包括名称,创建时间,文件大小等),那就自己定义一个文件比较器实现