Example #1
0
  private void setupLogging() throws IOException {
    System.out.println("Setting up logging...");
    Level level = LogHelper.getLogLevel(m_testData.getLogLevel());
    if (level == null) {
      System.err.println("No such log level and will use Level.INFO instead");
      level = Level.INFO;
    }
    fh = new FileHandler(m_testData.getLogFile(), false);
    // have to change the log level of the handler to let log come out as designed
    fh.setLevel(level);

    // change the formatter from default xml to simple text
    fh.setFormatter(new SimpleFormatter());
    theLogger.setLevel(level);
    theLogger.addHandler(fh);

    // close the Console handler so that we only need log in file
    Handler[] handlers = Logger.getLogger("").getHandlers();
    for (Handler handler : handlers) {
      if (handler instanceof ConsoleHandler) {
        handler.setLevel(Level.OFF);
        break;
      }
    }
  }
Example #2
0
  public DebugLog(String l, String f) {
    super(l, null);

    try {
      handler = new FileHandler(f, true);
      addHandler(handler);
      setLevel(Level.ALL);
      handler.setFormatter(formatter);
    } catch (Exception e) {
      System.out.println("Error creating logger '" + l + "': ");
      e.printStackTrace();
    }
  }
Example #3
0
 private static void configLogging() {
   // Logger globalLogger = Logger.getLogger(Logger.GLOBAL_LOGGER_NAME);
   Logger globalLogger = Logger.getLogger("");
   try {
     for (Handler h : globalLogger.getHandlers()) globalLogger.removeHandler(h);
     FileHandler fh = new FileHandler("schedule-creation-log.txt");
     fh.setFormatter(new CleanFormatter());
     globalLogger.addHandler(fh);
     globalLogger.setLevel(Level.ALL);
   } catch (IOException ioe) {
     ioe.printStackTrace();
   }
 }
Example #4
0
 /**
  * startLogger initializes and returns a file at logLoc with the results of logging at level
  * logLevel.
  *
  * @param logLoc location of the output log file- a string
  * @param logLevel logging level (is parsed by level.parse())
  * @return Logger object to log to.
  */
 public Logger startLogger(String logLoc, String logLevel) {
   try {
     fh = new FileHandler(logLoc); // sets output log file at logLoc
   } catch (SecurityException e) {
     e.printStackTrace();
     System.err.println("SecurityException establishing logger. Exiting...\n");
     System.exit(1);
   } catch (IOException e) {
     e.printStackTrace();
     System.err.println("IOException establishing logger. Exiting...\n");
     System.exit(1);
   }
   fh.setFormatter(new SimpleFormatter()); // format of log is 'human-readable' simpleformat
   logger.addHandler(fh); // attach formatter to logger
   logger.setLevel(Level.parse(logLevel)); // set log level
   return logger;
 }
Example #5
0
  /** Set up reflection methods required by the loader */
  @SuppressWarnings("unchecked")
  private boolean prepareLoader() {
    try {
      // addURL method is used by the class loader to
      mAddUrl = URLClassLoader.class.getDeclaredMethod("addURL", URL.class);
      mAddUrl.setAccessible(true);

      Formatter minecraftLogFormatter = null;

      try {
        Class<? extends Formatter> formatterClass =
            (Class<? extends Formatter>)
                Minecraft.class
                    .getClassLoader()
                    .loadClass(
                        ModUtilities.getObfuscatedFieldName(
                            "net.minecraft.src.ConsoleLogFormatter", "em"));
        Constructor<? extends Formatter> defaultConstructor =
            formatterClass.getDeclaredConstructor();
        defaultConstructor.setAccessible(true);
        minecraftLogFormatter = defaultConstructor.newInstance();
      } catch (Exception ex) {
        ConsoleLogManager.init();
        minecraftLogFormatter = ConsoleLogManager.loggerLogManager.getHandlers()[0].getFormatter();
      }

      logger.setUseParentHandlers(false);

      StreamHandler consoleHandler = new ConsoleHandler();
      if (minecraftLogFormatter != null) consoleHandler.setFormatter(minecraftLogFormatter);
      logger.addHandler(consoleHandler);

      FileHandler logFileHandler =
          new FileHandler(
              new File(Minecraft.getMinecraftDir(), "LiteLoader.txt").getAbsolutePath());
      if (minecraftLogFormatter != null) logFileHandler.setFormatter(minecraftLogFormatter);
      logger.addHandler(logFileHandler);
    } catch (Throwable th) {
      logger.log(Level.SEVERE, "Error initialising LiteLoader", th);
      return false;
    }

    return true;
  }
Example #6
0
  public static FileHandler getIrcFileHandler() {
    createLogDir();
    try {
      FileHandler file = new FileHandler(LOG_FILE_IRC, MAX_LOG_SIZE, 2, true);
      file.setFormatter(
          new Formatter() {

            @Override
            public String format(LogRecord record) {
              return String.format(
                  "[%1$tT] %2$s\n", new Date(record.getMillis()), record.getMessage());
            }
          });
      file.setLevel(Level.INFO);
      return file;
    } catch (IOException | SecurityException ex) {
      Logger.getLogger(Logging.class.getName()).log(Level.WARNING, null, ex);
    }
    return null;
  }
Example #7
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);
      }
    }
  }
Example #8
0
  /**
   * If param b is set to true, starts the necessary threads to monitor the process' stdout/stderr
   * and transfer the contents to a log file.
   */
  protected void setNativeLoggingUsed(boolean b) {
    if (b) {

      mServerStatus.setLogNative(shouldIndicateNativeLogging());

      FileHandler fileHandler = null;

      try {
        String logLocation = LogUtil.getLogLocation();

        int logFileSize = -1;
        try {
          logFileSize = DCPLib.getIntProperty("Logging.Servers." + mName + ".logFileSize");
        } catch (NoSuchProperty nsp) {
          logFileSize =
              DCPLib.getIntProperty(
                  "Logging.Defaults.logFileSize", CiscoLogger.DEFAULT_LOG_FILE_SIZE);
        }

        int logFileNumber = -1;

        try {
          logFileNumber = DCPLib.getIntProperty("Logging.Servers." + mName + ".logFileNumber");
        } catch (NoSuchProperty nsp) {
          logFileNumber =
              DCPLib.getIntProperty(
                  "Logging.Defaults.logFileNumber", CiscoLogger.DEFAULT_LOG_FILE_NUMBER);
        }

        if (LogUtil.getAppType().equals("unknown")) {
          fileHandler =
              new FileHandler(
                  logLocation + File.separator + getProcessNameForLog(),
                  logFileSize,
                  logFileNumber);
        } else {
          fileHandler =
              new FileHandler(
                  logLocation
                      + File.separator
                      + LogUtil.getAppType()
                      + "."
                      + LogUtil.getAppInst()
                      + "."
                      + getProcessNameForLog(),
                  logFileSize,
                  logFileNumber);
        }

        fileHandler.setFormatter(
            new java.util.logging.SimpleFormatter() {
              public synchronized String format(LogRecord record) {
                return formatMessage(record) + "\n";
              }
            });

      } catch (Exception ex) {
        mLogger.severe("Could not set up native handler for external process", ex);
      }

      mStdout = new ServerOutputThread(mName + ".stdout", mLogger, fileHandler);
      mStderr = new ServerOutputThread(mName + ".stderr", mLogger, fileHandler);

      // Get them running
      mStdout.start();
      mStderr.start();
    }

    mNativeLoggingUsed = b;
  }
Example #9
0
  public Logging(final TwitchClient client) {
    createLogDir();

    // Remove default handlers
    LogManager.getLogManager().reset();

    // Add console handler with custom formatter
    ConsoleHandler c = new ConsoleHandler();
    c.setFormatter(new TextFormatter());
    c.setFilter(
        new Filter() {

          @Override
          public boolean isLoggable(LogRecord record) {
            return record.getLevel() != USERINFO;
          }
        });
    Logger.getLogger("").addHandler(c);

    // Add file handler with custom formatter
    try {
      FileHandler file = new FileHandler(LOG_FILE, MAX_LOG_SIZE, MAX_LOG_FILES, true);
      file.setFormatter(new TextFormatter());
      file.setLevel(Level.INFO);
      file.setFilter(new FileFilter());
      Logger.getLogger("").addHandler(file);

      FileHandler fileSession = new FileHandler(LOG_FILE_SESSION, MAX_SESSION_LOG_SIZE, 1);
      fileSession.setFormatter(new TextFormatter());
      fileSession.setLevel(Level.INFO);
      fileSession.setFilter(new FileFilter());
      Logger.getLogger("").addHandler(fileSession);
    } catch (IOException | SecurityException ex) {
      Logger.getLogger(Logging.class.getName()).log(Level.WARNING, null, ex);
    }

    // Add handler for the GUI (display errors, log into debug window)
    Logger.getLogger("")
        .addHandler(
            new Handler() {

              @Override
              public void publish(LogRecord record) {
                if (record.getLevel() != USERINFO) {
                  client.debug(record.getMessage());
                  // WebsocketClient/WebsocketManager
                  if (record.getSourceClassName().startsWith("chatty.util.ffz.Websocket")) {
                    client.debugFFZ(record.getMessage());
                  }
                }
                if (record.getLevel() == Level.SEVERE) {
                  if (client.g != null) {
                    client.g.error(record, lastMessages.getItems());
                  }
                } else if (record.getLevel() == USERINFO) {
                  client.warning(record.getMessage());
                } else {
                  lastMessages.add(record);
                }
              }

              @Override
              public void flush() {}

              @Override
              public void close() throws SecurityException {}
            });
  }