Beispiel #1
0
  public void logSevere(String message) {

    uLogger.severe(String.format("[%d] %s", Thread.currentThread().getId(), message));

    final int maxSevereLogsToDump = 10; // could consider settings, but nah!

    if (currentSevereCnt.incrementAndGet() < maxSevereLogsToDump) {

      final String dumpLogFilename = String.format("%d.dump.log", new Date().getTime());
      final String dumpLogFilePath =
          plugin.getDataFolder().toString() + File.separator + dumpLogFilename;

      try {
        PrintWriter out = new PrintWriter(dumpLogFilePath);
        out.println(String.format("[%d] %s", Thread.currentThread().getId(), message));
        out.flush();
        out.close();
      } catch (FileNotFoundException e) {
        e.printStackTrace();
      }
    }

    if (plugin.settings.devUser == null) {
      return;
    }

    final Player player = plugin.getServer().getPlayer(plugin.settings.devUser);

    if (player != null && player.isOnline()) {
      player.sendMessage(
          "Omniscient error: " + message.substring(0, Math.min(message.length() - 1, 30)));
    }
  }
 public LoggedPluginManager(Plugin owner) {
   this(owner.getServer().getPluginManager());
 }