Public Member Functions | |
ReportManager (Controller controller) | |
void | startReport () |
ReportManager (Controller controller, boolean showLogsOnly) | |
ReportManager (Controller controller, Exception e) | |
void | writeControllerInfo () |
void | writeControllerSettings () |
void | writeJavaProperties () |
void | writeLogs () |
void | writeException (Exception e) |
String | generate () |
String | generateJustLogs () |
final void | setSettings (Hashtable settings) |
boolean | isEnableFileLogging () |
boolean | isGenerateOnFatal () |
boolean | isGenerateOnShutdown () |
boolean | isHideSensitiveData () |
boolean | isReportEnabled () |
String | getReportLocation () |
void | setEnableFileLogging (boolean enableFileLogging) |
void | setGenerateOnFatal (boolean generateOnFatal) |
void | setGenerateOnShutdown (boolean generateOnShutdown) |
void | setHideSensitiveData (boolean hideSensitiveData) |
void | setReportEnabled (boolean reportEnabled) |
void | setReportLocation (String reportLocation) |
Package Functions | |
void | listLoggers () |
Package Attributes | |
boolean | reportEnabled = false |
boolean | hideSensitiveData = true |
boolean | generateOnShutdown = true |
boolean | generateOnFatal = true |
boolean | enableFileLogging = true |
boolean | showLogsOnly = false |
String | reportLocation = ControllerConstants.REPORT_LOCATION |
Static Package Attributes | |
Trace | logger |
Definition at line 52 of file ReportManager.java.
|
Call above and write controller xml information and information
Definition at line 78 of file ReportManager.java. 00079 { 00080 this.controller = controller; 00081 buffer = new StringBuffer(); 00082 //listLoggers(); 00083 }
|
|
Creates a new
Definition at line 104 of file ReportManager.java. 00105 { 00106 this(controller); 00107 this.showLogsOnly = showLogsOnly; 00108 }
|
|
Call above and write about the exception
Definition at line 116 of file ReportManager.java. 00117 { 00118 this(controller); 00119 writeException(e); 00120 }
|
|
Flush and close
Definition at line 196 of file ReportManager.java. Referenced by org.objectweb.cjdbc.controller.core.Controller.generateReport(), and org.objectweb.cjdbc.controller.core.shutdown.ControllerShutdownThread.generateReportIfNeeded(). 00197 { 00198 // Here we get all the logs before writing report 00199 writeLogs(); 00200 try 00201 { 00202 File reportFile = new File(reportLocation + File.separator 00203 + ControllerConstants.REPORT_FILE); 00204 reportFile.getParentFile().mkdirs(); 00205 fos = new FileOutputStream(reportFile); 00206 fos.write(buffer.toString().getBytes()); 00207 fos.close(); 00208 String returned = buffer.toString(); 00209 // Reset buffer 00210 buffer.delete(0, buffer.length()); 00211 return returned; 00212 } 00213 catch (Exception e) 00214 { 00215 e.printStackTrace(); 00216 return ""; 00217 } 00218 }
|
|
Get a trace of the logs only
Definition at line 225 of file ReportManager.java. Referenced by org.objectweb.cjdbc.controller.core.Controller.generateLogReport(). 00226 { 00227 String s = this.getClass().getResource(ControllerConstants.LOG4J_RESOURCE) 00228 .getFile(); 00229 Logger log = Logger.getRootLogger(); 00230 try 00231 { 00232 FileAppender appender = (FileAppender) log.getAppender("Filetrace"); 00233 s = appender.getFile(); 00234 writeFile(s); 00235 return buffer.toString(); 00236 } 00237 catch (Exception e) 00238 { 00239 logger 00240 .warn("Filetrace appender is not of type FileAppender and cannot be dumped (" 00241 + e + ")"); 00242 return ""; 00243 } 00244 }
|
|
Definition at line 445 of file ReportManager.java. Referenced by org.objectweb.cjdbc.controller.core.Controller.endOfController(), org.objectweb.cjdbc.controller.core.shutdown.ControllerShutdownThread.generateReportIfNeeded(), and org.objectweb.cjdbc.controller.core.Controller.getXmlController(). 00446 {
00447 return reportLocation;
00448 }
|
|
Definition at line 405 of file ReportManager.java. Referenced by org.objectweb.cjdbc.controller.core.Controller.getXmlController(). 00406 {
00407 return enableFileLogging;
00408 }
|
|
Definition at line 413 of file ReportManager.java. Referenced by org.objectweb.cjdbc.controller.core.Controller.endOfController(), and org.objectweb.cjdbc.controller.core.Controller.getXmlController(). 00414 { 00415 return reportEnabled && generateOnFatal; 00416 }
|
|
Definition at line 421 of file ReportManager.java. Referenced by org.objectweb.cjdbc.controller.core.shutdown.ControllerShutdownThread.generateReportIfNeeded(), and org.objectweb.cjdbc.controller.core.Controller.getXmlController(). 00422 { 00423 return reportEnabled && generateOnShutdown; 00424 }
|
|
Definition at line 429 of file ReportManager.java. Referenced by org.objectweb.cjdbc.controller.core.Controller.getXmlController(). 00430 {
00431 return hideSensitiveData;
00432 }
|
|
Definition at line 437 of file ReportManager.java. Referenced by org.objectweb.cjdbc.controller.core.Controller.getXmlController(). 00438 {
00439 return reportEnabled;
00440 }
|
|
Sets the enableFileLogging value.
Definition at line 455 of file ReportManager.java. 00456 {
00457 this.enableFileLogging = enableFileLogging;
00458 }
|
|
Sets the generateOnFatal value.
Definition at line 465 of file ReportManager.java. 00466 {
00467 this.generateOnFatal = generateOnFatal;
00468 }
|
|
Sets the generateOnShutdown value.
Definition at line 475 of file ReportManager.java. 00476 {
00477 this.generateOnShutdown = generateOnShutdown;
00478 }
|
|
Sets the hideSensitiveData value.
Definition at line 485 of file ReportManager.java. 00486 {
00487 this.hideSensitiveData = hideSensitiveData;
00488 }
|
|
Sets the reportEnabled value.
Definition at line 495 of file ReportManager.java. 00496 {
00497 this.reportEnabled = reportEnabled;
00498 }
|
|
Sets the reportLocation value.
Definition at line 505 of file ReportManager.java. 00506 {
00507 this.reportLocation = reportLocation;
00508 }
|
|
Definition at line 324 of file ReportManager.java. 00325 { 00326 //listLoggers(); 00327 if (settings == null) 00328 { 00329 reportEnabled = false; 00330 } 00331 else if (settings.containsKey(ControllerXmlTags.ATT_REPORT_ENABLED)) 00332 { 00333 reportEnabled = new Boolean((String) settings 00334 .get(ControllerXmlTags.ATT_REPORT_ENABLED)).booleanValue(); 00335 } 00336 if (!reportEnabled) 00337 { 00338 hideSensitiveData = false; 00339 generateOnShutdown = false; 00340 generateOnFatal = false; 00341 enableFileLogging = false; 00342 //removeFileTraceAppender(); 00343 return; 00344 } 00345 else 00346 { 00347 if ("true".equals(settings 00348 .get(ControllerXmlTags.ATT_REPORT_DELETE_ON_SHUTDOWN))) 00349 { 00350 setLogsDeleteOnExit(); 00351 } 00352 if (settings 00353 .containsKey(ControllerXmlTags.ATT_REPORT_ENABLE_FILE_LOGGING)) 00354 { 00355 enableFileLogging = new Boolean((String) settings 00356 .get(ControllerXmlTags.ATT_REPORT_ENABLE_FILE_LOGGING)) 00357 .booleanValue(); 00358 if (!enableFileLogging) 00359 { 00360 //removeFileTraceAppender(); 00361 } 00362 } 00363 if (settings.containsKey(ControllerXmlTags.ATT_REPORT_GENERATE_ON_FATAL)) 00364 { 00365 generateOnFatal = new Boolean((String) settings 00366 .get(ControllerXmlTags.ATT_REPORT_GENERATE_ON_FATAL)) 00367 .booleanValue(); 00368 } 00369 if (settings 00370 .containsKey(ControllerXmlTags.ATT_REPORT_GENERATE_ON_SHUTDOWN)) 00371 { 00372 generateOnShutdown = new Boolean((String) settings 00373 .get(ControllerXmlTags.ATT_REPORT_GENERATE_ON_SHUTDOWN)) 00374 .booleanValue(); 00375 } 00376 if (settings 00377 .containsKey(ControllerXmlTags.ATT_REPORT_HIDE_SENSITIVE_DATA)) 00378 { 00379 hideSensitiveData = new Boolean((String) settings 00380 .get(ControllerXmlTags.ATT_REPORT_HIDE_SENSITIVE_DATA)) 00381 .booleanValue(); 00382 } 00383 if (settings.containsKey(ControllerXmlTags.ATT_REPORT_REPORT_LOCATION)) 00384 { 00385 reportLocation = (String) settings 00386 .get(ControllerXmlTags.ATT_REPORT_REPORT_LOCATION); 00387 } 00388 } 00389 }
|
|
Starts generating the report. Effectively write the java properties, controller settings, controller info but do not write the logs yet. Definition at line 89 of file ReportManager.java. Referenced by org.objectweb.cjdbc.controller.core.Controller.generateReport(), and org.objectweb.cjdbc.controller.core.shutdown.ControllerShutdownThread.generateReportIfNeeded(). 00090 { 00091 writeTitle("CJDBC (version:" + Constants.VERSION + ") REPORT generated on " 00092 + new Date().toString()); 00093 writeJavaProperties(); 00094 writeControllerSettings(); 00095 writeControllerInfo(); 00096 }
|
|
Write Controller info as return by Definition at line 125 of file ReportManager.java. References org.objectweb.cjdbc.controller.core.Controller.getXml(), and org.objectweb.cjdbc.controller.core.Controller.getXmlVirtualDatabases(). 00126 { 00127 try 00128 { 00129 writeHeader("CONTROLLER INFO XML"); 00130 write(controller.getXml()); 00131 writeHeader("DATABASE INFO"); 00132 write(XmlTools 00133 .applyXsl(controller.getXmlVirtualDatabases(), "c-jdbc.xsl")); 00134 writeHeader("DATABASE INFO XML"); 00135 write(XmlTools.prettyXml(controller.getXmlVirtualDatabases())); 00136 } 00137 catch (Exception e) 00138 { 00139 e.printStackTrace(); 00140 } 00141 }
|
|
Write all parameters from Definition at line 144 of file ReportManager.java. References org.objectweb.cjdbc.controller.core.Controller.getConfiguration(). 00145 {
00146 writeHeader("CONTROLLER SETTINGS");
00147 write(controller.getConfiguration());
00148 }
|
|
Write Details of the exception
Definition at line 179 of file ReportManager.java. 00180 { 00181 writeHeader("EXCEPTION DESCRIPTION"); 00182 write(e.getClass().toString()); 00183 write(e.getMessage()); 00184 write(e.toString()); 00185 StringWriter sw = new StringWriter(); 00186 PrintWriter pw = new PrintWriter(sw); 00187 e.printStackTrace(pw); 00188 write(sw.toString()); 00189 }
|
|
Write All Java Properties Definition at line 151 of file ReportManager.java. 00152 {
00153 writeHeader("JAVA SETTINGS");
00154 write(System.getProperties());
00155 }
|
|
Write Logs Definition at line 158 of file ReportManager.java. 00159 { 00160 writeHeader("LOG CONFIGURATION"); 00161 String s = this.getClass().getResource(ControllerConstants.LOG4J_RESOURCE) 00162 .getFile(); 00163 writeFile(s); 00164 writeHeader("LOGS"); 00165 if (isEnableFileLogging()) 00166 { 00167 Logger log = Logger.getRootLogger(); 00168 FileAppender appender = (FileAppender) log.getAppender("Filetrace"); 00169 s = appender.getFile(); 00170 writeFile(s); 00171 } 00172 }
|
|
Initial value: Trace .getLogger(ReportManager.class .getName()) Definition at line 56 of file ReportManager.java. |
|
Settings Definition at line 61 of file ReportManager.java. |