2626import java .net .URL ;
2727import java .net .URLConnection ;
2828import java .nio .file .Files ;
29- import java .util .logging .Handler ;
29+ import java .util .logging .FileHandler ;
3030import java .util .logging .Level ;
31- import java .util .logging .LogRecord ;
3231
3332public class PlayerBalancer extends Plugin {
3433 private boolean failed = false ;
@@ -37,37 +36,23 @@ public class PlayerBalancer extends Plugin {
3736 private SectionManager sectionManager ;
3837 private NetworkManager networkManager ;
3938 private ConfigurationLoader <CommentedConfigurationNode > loader ;
40- private final StringBuilder logsBuilder = new StringBuilder ();
4139
4240 private FallbackCommand fallbackCommand ;
43- private Command mainCommand , manageCommand , findCommand , listCommand , serverCommand ;
41+ private Command mainCommand , manageCommand ;
4442 private Listener connectListener , kickListener , reloadListener , pluginMessageListener ;
4543
44+ public static final String LOG_FILE_PATTERN = "balancer.log" ;
45+
4646 @ Override
4747 public void onLoad () {
48- Handler handler = new Handler () {
49- @ Override
50- public void publish (LogRecord record ) {
51- if (isLoggable (record )) {
52- String formatted = getFormatter ().format (record );
53- logsBuilder .append (formatted );
54- }
55- }
56-
57- @ Override
58- public void flush () {
59- logsBuilder .setLength (0 );
60- }
61-
62- @ Override
63- public void close () throws SecurityException {
64- //Nothing to do
65- }
66- };
67-
68- handler .setFormatter (new CustomFormatter ());
69- getProxy ().getLogger ().addHandler (handler );
70- getProxy ().getLogger ().setUseParentHandlers (true );
48+ try {
49+ FileHandler handler = new FileHandler (LOG_FILE_PATTERN );
50+ handler .setFormatter (new CustomFormatter ());
51+ getProxy ().getLogger ().addHandler (handler );
52+ getProxy ().getLogger ().setUseParentHandlers (true );
53+ } catch (Exception e ) {
54+ getLogger ().log (Level .WARNING , "Could not set custom log handler" , e );
55+ }
7156 }
7257
7358 @ Override
@@ -305,8 +290,4 @@ public NetworkManager getNetworkManager() {
305290 public FallbackCommand getFallbackCommand () {
306291 return fallbackCommand ;
307292 }
308-
309- public StringBuilder getLogsBuilder () {
310- return logsBuilder ;
311- }
312293}
0 commit comments