Include log level (if not INFO) and error stack trace in log file

This commit is contained in:
Phoenix616 2021-01-04 22:42:17 +01:00
parent 0d6f588e45
commit 66eaab7c4d
No known key found for this signature in database
GPG Key ID: 40E2321E71738EB0
1 changed files with 21 additions and 1 deletions

View File

@ -1,9 +1,12 @@
package com.Acrobot.ChestShop.Logging; package com.Acrobot.ChestShop.Logging;
import java.io.PrintWriter;
import java.io.StringWriter;
import java.text.DateFormat; import java.text.DateFormat;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.Date; import java.util.Date;
import java.util.logging.Formatter; import java.util.logging.Formatter;
import java.util.logging.Level;
import java.util.logging.LogRecord; import java.util.logging.LogRecord;
/** /**
@ -14,7 +17,24 @@ public class FileFormatter extends Formatter {
@Override @Override
public String format(LogRecord record) { public String format(LogRecord record) {
return getDateAndTime() + ' ' + record.getMessage() + '\n'; StringBuilder message = new StringBuilder(getDateAndTime());
if (record.getLevel() != Level.INFO) {
message.append(' ').append(record.getLevel().getLocalizedName());
}
message.append(' ').append(record.getMessage());
if (record.getThrown() != null) {
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
pw.println();
record.getThrown().printStackTrace(pw);
pw.close();
message.append(sw.toString());
}
return message.append('\n').toString();
} }
private String getDateAndTime() { private String getDateAndTime() {