log.error("Exception writing to log file: ", e);
log.error("Exception writing to Node log file " + logFileName + ": ", e);
  private void handleAll(java.util.List nodeEvents) {    int n = nodeEvents.size();    if (n <= 0) {      return;    }    // write a description of the event to the log file    synchronized (logFileLock) {      try {        int i = 0;        do {          NodeEvent nodeEvent = (NodeEvent)nodeEvents.get(i);	  if (logFile != null)	    logFile.write(getNodeEventDescription(nodeEvent));          nLogEvents++;          if (nLogEvents > 100) {	    if (logFile != null)	      logFile.flush();            nLogEvents = 0;          }        } while (++i < n);      } catch (Exception e) {        if(log.isErrorEnabled()) {          log.error("Exception writing to log file: ", e);        }      }    }    // must use swing "invokeLater" to be thread-safe    // collects descriptions of the same type and batch writes them to display    // handles idle updates separately    try {      SwingUtilities.invokeLater(new NodeEventHandler(nodeEvents));    } catch (RuntimeException e) {    }  }