хендлер для лога

 
0
 
Java
ava
susanin | 30.03.2013, 04:14
Всем привет! пытаюсь сделать свой хендлер для лога. хочу, чтобы некоторые сообщения выводились не в файл, а в сообщении во фрейме. сделал класс LogMessageFrame

public class LogMessageFrame extends StreamHandler {
    
    public LogMessageFrame(){
        super();
        window = new JFrame("Unexpected exception");
        panel = new JPanel();
        message = new JLabel();
        window.add(panel);
        panel.add(message);
        outErr = new OutputStream() {

            @Override
            public void write(int b) throws IOException {}
            
            @Override
            public void write(byte b[]) throws IOException {
                message.setText(new String(b));
                
            }
        };
        this.setOutputStream(outErr);
        this.setLevel(Level.ALL);
        window.setSize(200, 200);
        window.setVisible(true);
    }
    
    @Override
    public void publish (LogRecord record){
        if(!window.isVisible()) return;
        super.publish(record);
        flush();
    }
    
    private JFrame window;
    private JPanel panel;
    private JLabel message;
    private OutputStream outErr;
}

и потом пытаюсь в него что то залогировать

try{
            throw new IOException(); //только в целях тестирования
        }
        catch(IOException ex){
            Logger myLogger = Logger.getLogger("my.custom.logger");
            myLogger.setUseParentHandlers(false);
            LogMessageFrame handler = new LogMessageFrame();
            myLogger.addHandler(handler);
            myLogger.log(new LogRecord(Level.SEVERE, "Error. "+ex.getMessage()));
        }

но на выходе ноль. в дебаге прога даже не заходит в кусок кода message.setText(new String(b)); кто может подсказать, что я неправильно сделал?
Kommentare (1)
ava
susanin | 01.04.2013, 00:06 #
решено. нужно было для хендлера уровень логов задать
Registrieren Sie sich oder melden Sie sich an, um schreiben zu können.
Unternehmen des Tages
Вы также можете добавить свою фирму в каталог IT-фирм, и публиковать статьи, новости, вакансии и другую информацию от имени фирмы.
Подробнее
Mitwirkende
  susanin
advanced
Absenden