This package substitues the obsolete logService. A new requirement whereby database technologies other than ORACLE had to be dropped came in around spiring 2007. This new requirement meant the re-writing of the logService package, which was higly dependent on MySQL. This opportunity was taken to refactorize the code, especially the log manager, which was never very user friendly. The database access in C++ is done using the CORAL interface, which hides the underlying technology. For the log manager, JAVA was the language chosen, since it brings in the flexibility requiered to make this tool more intuitive. The resulting java application can be run from the console, or remotely using the Java Web Start technology.
In the Log Manager, when righ-clicking on the Messages Table (right hand side panel) or Partition Table (left hand side panel) a Refresh button pops up. This is used to update the current view of partitions and messages, respectively. Refreshing these objects only works if one right-clicks the mouse without moving it; that is, press and release without changing the X and Y pointer of the mouse. This may be a problem with Java. In the meantime, one can also perform a Refresh via the options in the top menu File: 'Refresh tree' and 'Refresh table'.
Add an option to display statistics, internal and from IS.
The Log Service has migrated to the Offline database. During this transition and to be back compatible, the Log Manager has the option to either access the INTR or the Offline (default) databases. Fix bug: If the log message parameter size is larger than 4,000 characters, the logger crashed due to a misleading excpetion thrown by Oracle that invalidated a CORAL variable. Messages are now cropped if their field size is larger than 4,000 character.
The user can now do a search based on the run number. On the left hand side panel of the Log Manager, how messages are searched has changed from Partition->User->SessionID to Partition->User->Runnumber. WARNING: messages between runs are associated to the last run of the partition. If it is the first run for a partition, the messages before the first run will be associated to run number 0. This means that messages produced during starting up (until the next start of run) may be associated to a runnumber started days before.
Usage: log_manager
Instruction on how to use to be written.
The Log Manager can also be run using Java Web Start technology from the link:
If possible, it is preferrable to launch this tool as a Java application rather than from the link above.
Description: This application subscribes to the MRS service to receive and log on a database messages produced by TDAQ applications.
Usage: lsReceiver [-p partition-name] [-u user-name] [-n IS-server-name] [-s threshold-size] -c connect-string [-S subscribe-expression]
Options/Arguments:
-p partitionName Partition name
-u userName User name
-n ISserverName Name of the Information Service to publish the message rate into.
-c connectionString Database connection string.
Description: Test binary for the Log Receiver application.
Usage: logTest -c connect-string [-p partition-name] [-l complexity-level]
Options/Arguments:
-p partitionName Partition name
-l level Level of Complexity of the test [1: open/close - 2: tests the Log Service Infrastructure].
-c connectionString Database connection string.
Description: Application to retrieve log messages for a given partition according to the search criteria specified. By default, messages are dumped on std::cout.
Usage: logSelect -c connect-string -p partition-name [-i message-name] [-m machine-name]
[-a application-name] [-l time-low] [-u time-up] [-s severity]
[-x text] [-r parameters] [-d order-list] [-e max-rows] [-f offset-row]
Options/Arguments:
-p partitionName Partition name
-c connectionString Database connection string.
-i message-name Message name or ID.
-m machine-name Machine name where the message was issued.
-a application-name Application name where the message was issued.
-l time-low Lower time threshold.
-u time-up Upper time threshold.
-s severity Message severity:
1 - FATAL
2 - ERROR
3 - WARNING
4 - DEBUG
5 - INFORMATION
6 - SUCCESS
-x text Text in the message body.
-r parameters Message parameters.
-d order-list Parameter to sort the messages by.
-e max-rows Maximum number of rows to retrieve from the database; 100 by default. If 0, all entries are retrieved.
-f offset-row Offset in the table to retrieve the messages from.
Description: Application to remove log messages for a given partition according to the search criteria specified.
Usage: logDelete -c connect-string -p partition-name [-i message-name] [-m machine-name]
[-a application-name] [-l time-low] [-u time-up] [-s severity]
[-x text] [-r parameters]
Options/Arguments:
-p partitionName Partition name
-c connectionString Database connection string.
-i message-name Message name or ID.
-m machine-name Machine name where the message was issued.
-a application-name Application name where the message was issued.
-l time-low Lower time threshold.
-u time-up Upper time threshold.
-s severity Message severity:
1 - FATAL
2 - ERROR
3 - WARNING
4 - DEBUG
5 - INFORMATION
6 - SUCCESS
-x text Text in the message body.
-r parameters Message parameters.
Description: Application to retrieve the list of partition names.
Usage: logGetPartitionNames -c connectionString
Options/Arguments:
-c connectionString Database connection string.
Description: Application to clean the database by removing all the existing tables.
Usage: logCleanDatabase -c connectionString
Options/Arguments:
-c connectionString Database connection string.