HPELRepositoryExporter
and
HPELZipRepositoryExporter
implementations
export records in the HPEL format.See: Description
Interface | Description |
---|---|
LogEventListener |
Interface for event listener including eNums on types.
|
RepositoryExporter |
Interface for exporting read repository records into another repository.
|
Class | Description |
---|---|
CompatibilityRepositoryExporter |
Implementation of the
RepositoryExporter interface exporting log records
into a text file in Basic or Advanced WebSphere format. |
CompatibilityZipRepositoryExporter |
Implementation of the
RepositoryExporter interface exporting log records
into a compressed text file. |
HPELRepositoryExporter |
Implementation of the
RepositoryExporter interface exporting log records in
a directory in HPEL formatted files. |
HPELZipRepositoryExporter |
Implementation of the
RepositoryExporter interface exporting log records in
a compressed file containing HPEL formatted files. |
Set of classes and interfaces to store log records on disk
Both HPELRepositoryExporter
and
HPELZipRepositoryExporter
implementations
export records in the HPEL format. The former one exports packages into a directory
maintaining file structure required by HPEL where as the latter - into a zip file containing
such file structure.
The com.ibm.websphere.logging.hpel.writer.CompatRepositoryExporter
and
com.ibm.websphere.logging.hpel.writer.CompatZipRepositoryExporter
are the
implementation to write records in the Basic or Advanced text format. The latter one additionally put
it into a zip file.
The following is a sample of code that uses the APIs in this package (and the
com.ibm.websphere.logging.hpel.reader
package) to read from an existing repository and
create a new repository with a subSet of the records. Note the use of the RepositoryExporter for
creating the new repository, and the use of the LogQueryBean to create a subSet repository based on
filter criteria. This technique is recommended for copying repositories, but not for replacing logging.
public static void main(String[] args) { WriterSample ws = new WriterSample() ; ws.createFromExistingQuery(args[0], args[1]) ; // This shows how to do it by copying an existing directory } // Idea here is that a repository has been created. This extracts from that repository and creates a new one using the write API private void createFromExistingQuery(String sourceRepositoryLocation, String targetRepository) { File archiveDir = createRootDirectory(targetRepository) ; // Create a directory to store the repository RepositoryExporter archiver = new HPELRepositoryExporter(archiveDir); // Repository Exporter for writing // Note the LogQueryBean has many filtering options. LogQueryBean logQueryBean = new LogQueryBean() ; // Bean with filter criteria logQueryBean.setLevels(Level.WARNING, Level.SEVERE) ; // We will only capture warning and severe msgs // Open a reader to read in the repository created in first step (or any HPEL repository) RepositoryReader browser = new RepositoryReaderImpl(sourceRepositoryLocation); // This will capture all records and copy to new location try { for(ServerInstanceLogRecordList list: browser.getLogLists(logQueryBean)) { archiver.storeHeader(list.getHeader()); for (RepositoryLogRecord actual: list) { archiver.storeRecord(actual); } } } catch (LogRepositoryException lre) { System.out.println("Exception reading initial repository to copy it: "+lre); } archiver.close(); } private File createRootDirectory(String targetRepository) { File archiveDir = null ; archiveDir = new File(targetRepository) ; archiveDir.delete(); archiveDir.mkdir(); return archiveDir ; }