Messages being logged are of type cdevData that is flexible to allow
applications to log data of any types.
C/C++ Logging client APIs are in a single library called
libcmlog.a (so). It has C++ and C callable routines that allow any
applications to log messages to the server.
Java Loggling Client APIs and Browser APIs are provided for Java
applications.
Logging clients send messages to a client daemon that buffers all
incoming messages from all clients on the host and sends messages to the
server.
Logging client APIs have a CDEV interface.
Logging client APIs can be safely called inside Threads.
Logging client APIs can be safely called inside Interrupt Service
Routines (ISR).
Applications that wish to search/retrieve messages from the server
can use a single C++ library libcmlogb.a.
Browser API provides server crash notification mechanism.
All messages in the logging files are time stamped and organized in
B+ tree that allow fast data look up by time
The server is implemented in Multi-Threaded (Multi-Process) fashion
to improve network throughput and responsiveness
The server supports asynchronous network I/O operations.
The server supports runtime configuration.
A sample Motif implementation of browser is provided.
A sample Java Swing implementation of browser is provided.