/** * Logs a message to the error log. * * @param log the error log to write the message. * @param message the message to write * @param e the exception to write */ public void log( String message, Throwable e, HttpServletRequest request, HttpServletResponse response, ServletContext application) throws IOException { WriteStream logStream = getLogStream(); if (logStream == null) return; Throwable t = e; while (t != null) { e = t; if (e instanceof ServletException) t = ((ServletException) e).getRootCause(); else if (e instanceof ExceptionWrapper) t = ((ExceptionWrapper) e).getRootCause(); else t = null; } CharBuffer cb = CharBuffer.allocate(); QDate.formatLocal(cb, CurrentTime.getCurrentTime(), "[%Y/%m/%d %H:%M:%S] "); cb.append(message); logStream.log(cb.close()); if (e != null && !(e instanceof CompileException)) logStream.log(e); logStream.flush(); }
/** * Logs an error. * * @param message the error message * @param request the servlet request * @param response the servlet response * @param application the servlet context */ public void log( String message, HttpServletRequest request, HttpServletResponse response, ServletContext application) throws IOException { WriteStream logStream = getLogStream(); if (logStream == null) return; CharBuffer cb = CharBuffer.allocate(); QDate.formatLocal(cb, CurrentTime.getCurrentTime(), "[%Y/%m/%d %H:%M:%S] "); cb.append(message); logStream.log(cb.close()); logStream.flush(); }