Package com.ketayao.ketacustom.log

Examples of com.ketayao.ketacustom.log.Log


    }
   
    final HandlerMethod handlerMethod = (HandlerMethod)handler;
    Method method = handlerMethod.getMethod();
   
    final Log log = method.getAnnotation(Log.class);
    if (log != null) {
      // 得到LogMessageObject
      final LogMessageObject logMessageObject = LogUitls.getArgs();
      // 另起线程异步操作
      new Thread(new Runnable() {
       
        @Override
        public void run() {
          try {
            LogLevel lastLogLevel = logAPI.getRootLogLevel();
           
            // 先对自定义包等级做判断
            Map<String, LogLevel> customLogLevel = logAPI.getCustomLogLevel();
            if (!customLogLevel.isEmpty()) {
              Class<?> clazz = handlerMethod.getBean().getClass();
              String packageName = clazz.getPackage().getName();
             
              Set<String> keys = customLogLevel.keySet();
              for (String key : keys) {
                if (packageName.startsWith(key)) {
                  lastLogLevel = customLogLevel.get(key);
                  break;
                }
              }
            }
           
            LogMessageObject defaultLogMessageObject = logMessageObject;
            if (defaultLogMessageObject == null) {
              defaultLogMessageObject = LogMessageObject.newWrite();
            }
           
            if (defaultLogMessageObject.isWritten()) { // 判断是否写入log
              // 覆盖,直接写入日志
              if (log.override()) {
                logAPI.log(log.message(), defaultLogMessageObject.getObjects(), log.level());
              } else {
                // 不覆盖,参考方法的日志等级是否大于等于最终的日志等级
                if (!log.override() && log.level().compareTo(lastLogLevel) >= 0 ) {
                  logAPI.log(log.message(), defaultLogMessageObject.getObjects(), log.level());
                }
              }
            }           
          } catch (Exception e) {
            LOGGER.error(Exceptions.getStackTraceAsString(e));
View Full Code Here

TOP

Related Classes of com.ketayao.ketacustom.log.Log

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.