Bug 165188 logging per report
Setting up a dedicated (birt) report server, which serves all our web apps, leads to a logging desaster. Birtegine logs all messages to one file. There's no info which rptdesign caused the logmessage or who (e.g. user) caused the logmessage. Retrieving who/which rpt caused some logmessage is not possible! There are two possible solutions: (a) prefixing each logmessage with a userdefineable message (task.setLogprefix("myprefix")) (b) set an outputstream for each task (task.setLoggingOutputStream(outputstream)) to split the huge logfile to many small pieces.
engine/org.eclipse.birt.report.engine/src/org/eclipse/birt/report/engine/api/impl/ReportEngine.java
/**
	 * opens a report design file and creates a report design runnable. From the
	 * ReportRunnable object, embedded images and parameter definitions can be
	 * retrieved. Constructing an engine task requires a report design runnable
	 * object.
	 * 
	 * @param designName
	 *            the full path of the report design file
	 * @return a report design runnable object
	 * @throws EngineException
	 *             throwed when the input file does not exist, or the file is
	 *             invalid
	 */
	public IReportRunnable openReportDesign( String designName )
			throws EngineException
	{
		logger.log( Level.FINE,
				"ReportEngine.openReportDesign: designName={0} ", designName );
		IResourceLocator locator = config.getResourceLocator( );
		return helper.openReportDesign( designName, locator);
	}
	
	/**
	 * opens a report designHandle and creates a report design runnable. From the
	 * ReportRunnable object, embedded images and parameter definitions can be
	 * retrieved. Constructing an engine task requires a report design runnable
	 * object.
	 * 
	 * @param designHandle
	 * @return a report design runnable object