Laat je logging spreken

Moe van het swappen van je favoriete java-editor naar je logging output ?

Laat je logging van zich horen !

voeg de jacob library aan je classpath toe en definëer volgende appender in je log4j.properties :

log4j.rootLogger=trace,speak

log4j.appender.speak=mijn.applicatie.folder.logging.SpeakAppender

oproepen met : logger.info(“speak:”+mijnboodschap);

class SpeakAppender extends AppenderSkeleton{  

ActiveXComponent c;
        static String Speak = "Speak";
    static int Flag = 1+8;
      public SpeakAppender() {
                           try{
          c = new ActiveXComponent("SAPI.SpVoice");
       }catch(Exception e){
            e.printStackTrace();
      }
                          }
       @Override
   protected void append(LoggingEvent event) {
       try{            if(event.getRenderedMessage().startsWith("speak:")){                if(c!=null)
c.invoke(Speak,
event.getRenderedMessage().replaceFirst("speak:", ""),
Flag);
}
}catch(Exception e){
          e.printStackTrace();
      }
  }
  @Override    public void close() {        c = null;    }
   @Override    public boolean requiresLayout() {        return false;    }
          }

p.s. (zet je rootloglevel op trace , je volume op 100% en maak dat je wegkomt..)

Plaats een opmerking