zoukankan      html  css  js  c++  java
  • 日志通用类

     /**
      * 跟踪日志,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;
     }

  • 相关阅读:
    C#实现注册码
    多表链接 Left join
    Repeater 一行显示两列数据
    Repeater一行显示数据库中多行表记录
    HP QC(Quality Center)在Windows 7 IE8 IE9下不能工作解决方案
    Android应用换肤总结
    Lua 第一个应用程序 Hello World
    JNI 技术与 Android 应用
    NSAutoreleasePool' is unavailable: not avail
    1-2基础控件
  • 原文地址:https://www.cnblogs.com/songyunxinQQ529616136/p/6053877.html
Copyright © 2011-2022 走看看