/**
  * Returns the integer value of the log record's level to be used by the CLR Bridge log function.
  */
 private int getLevel(final Level recordLevel) {
   if (recordLevel.equals(Level.OFF)) {
     return 0;
   } else if (recordLevel.equals(Level.SEVERE)) {
     return 1;
   } else if (recordLevel.equals(Level.WARNING)) {
     return 2;
   } else if (recordLevel.equals(Level.ALL)) {
     return 4;
   } else {
     return 3;
   }
 }
 private int logValue(Level l) {
   if (l.equals(Level.FINEST)) {
     return 0;
   } else if (l.equals(Level.FINE)) {
     return 1;
   } else if (l.equals(Level.INFO)) {
     return 2;
   } else if (l.equals(Level.WARNING)) {
     return 3;
   } else if (l.equals(Level.SEVERE)) {
     return 4;
   }
   return -1;
 }
示例#3
0
 /**
  * Recuperare le informazioni sull'errore.
  *
  * @param c Classe il cui oggetto ha rilevato un problema
  * @param exception Eccezione sollevata
  * @param level Livello di gravità del problema
  */
 @Override
 public void processError(final Class c, final Throwable exception, final Level level) {
   logger = Logger.getLogger(c.getName());
   handler.setFormatter(formatter);
   logger.addHandler(handler);
   logger.log(level, exception.getMessage(), exception);
   if (!level.equals(ErrorHandlerInt.NO_MESSAGE)) {
     showErrorMessage(getMessage(c.getName()), level);
   }
 }
示例#4
0
 public boolean isLevelEnabled(final Level level) {
   if (level.equals(Level.FINER) || level.equals(Level.FINE) || level.equals(Level.FINEST))
     return debug;
   else if (level.equals(Level.INFO)) return info;
   else if (level.equals(Level.WARNING)) return warn;
   else if (level.equals(Level.SEVERE)) return error;
   return false;
 }
示例#5
0
  /** Retrieves the LogRecord from our Queue and store them in the file */
  public void log() {

    LogRecord record;

    try {
      record = pendingRecords.take();
    } catch (InterruptedException e) {
      return;
    }
    Level level = record.getLevel();
    long millisec = record.getMillis();
    int l;
    String slLvl;

    if (level.equals(Level.SEVERE)) {
      l = Syslog.CRIT;
      slLvl = "CRIT";
    } else if (level.equals(Level.WARNING)) {
      l = Syslog.WARNING;
      slLvl = "WARNING";
    } else if (level.equals(Level.INFO)) {
      l = Syslog.INFO;
      slLvl = "INFO";
    } else {
      l = Syslog.DEBUG;
      slLvl = "DEBUG";
    }

    // format the message
    String msg;
    SimpleDateFormat formatter = new SimpleDateFormat("MMM dd HH:mm:ss");
    msg = formatter.format(millisec);
    msg = msg + " [ " + slLvl + " glassfish ] " + record.getMessage();

    // send message
    sysLogger.log(Syslog.DAEMON, Syslog.WARNING, msg);
  }
示例#6
0
  private void initLogger() {
    ConsoleHandler consoleHandler = null;

    Logger rootLogger = LogManager.getLogManager().getLogger("");
    Handler[] handlers = rootLogger.getHandlers();
    for (Handler handler : handlers) {
      if (handler instanceof ConsoleHandler) {
        consoleHandler = (ConsoleHandler) handler;
        rootLogger.removeHandler(handler);
      }
    }

    logger = Logger.getLogger(contextId);
    logger.setLevel(logLevel);
    if (!logLevel.equals(Level.OFF)) {
      LogFormatter formatter = new LogFormatter();
      if (consoleLog) {
        if (consoleHandler == null) {
          consoleHandler = new ConsoleHandler();
        }
        consoleHandler.setFormatter(formatter);
        consoleHandler.setLevel(logLevel);
        logger.addHandler(consoleHandler);
      }
      String userHomePath = getProperty("user.home", ".");
      File logDir = new File(userHomePath, '.' + contextId + "/log");
      logDir.mkdirs();
      String logFilePattern = new File(logDir, contextId + "-%g.log").getPath();
      try {
        FileHandler fileHandler = new FileHandler(logFilePattern);
        fileHandler.setFormatter(formatter);
        fileHandler.setLevel(logLevel);
        logger.addHandler(fileHandler);
      } catch (IOException e) {
        System.err.println("Error: Failed to create log file: " + logFilePattern);
      }
    }
  }
示例#7
0
  public Level setLevel(final String iLevel, final Class<? extends Handler> iHandler) {
    final Level level =
        iLevel != null ? Level.parse(iLevel.toUpperCase(Locale.ENGLISH)) : Level.INFO;

    if (level.intValue() < minimumLevel.intValue()) {
      // UPDATE MINIMUM LEVEL
      minimumLevel = level;

      if (level.equals(Level.FINER) || level.equals(Level.FINE) || level.equals(Level.FINEST))
        debug = info = warn = error = true;
      else if (level.equals(Level.INFO)) {
        info = warn = error = true;
        debug = false;
      } else if (level.equals(Level.WARNING)) {
        warn = error = true;
        debug = info = false;
      } else if (level.equals(Level.SEVERE)) {
        error = true;
        debug = info = warn = false;
      }
    }

    Logger log = Logger.getLogger(DEFAULT_LOG);
    while (log != null) {
      log.setLevel(level);

      for (Handler h : log.getHandlers()) {
        if (h.getClass().isAssignableFrom(iHandler)) {
          h.setLevel(level);
          break;
        }
      }

      log = log.getParent();
    }

    return level;
  }
示例#8
0
 private String buildlogString(Level level, String message) {
   return InvTweaksConst.INGAME_LOG_PREFIX
       + ((level.equals(Level.SEVERE)) ? "[ERROR] " : "")
       + message;
 }