Universal Lossless Data Protocol Library
The Universal Lossless Data Protocol (ULDP) library provides a means for users to connect to a LogLogic LMI appliance and send logs to it.
Overview
The ULDP protocol is designed to send log data in a reliable and secure manner from their collection point to a LogLogic LMI appliance. TIBCO LogLogic® Universal Collector uses this protocol to communicate with a LogLogic LMI appliance.Using the ULDP library, you can:
- Send data in raw mode.
- Send encrypted and compressed data.
- Tag files that are sent to LogLogic LMI to allow properly identifying the log source.
- Send log files in such a way that the time stamps are parsed.
The ULDP library is provided in the ULDPClient directory of the LogLogic LMI supplemental package. For more information, see the README.txt file in the same directory.
How Messages are Transmitted
When messages are sent, they are placed in a queue, waiting for their acknowledgements to arrive. If at some point the size of the queue is more than the maximum value (MaxQueueSize), a mandatory request for acknowledgment is sent and no further messages are sent until the acknowledgement is received, thereby effectively blocking the sendMessage call.
The sequence of calls is:
- Create a UldpConnectionSettings object and set its properties. At minimum, the destination host should be set.
- Create a UldpSender object, passing the UldpConnectionSettings as a parameter.
- Call the connect() method on the UldpSender object.
- For each log message element to be sent, perform the following steps:
- Call the
close() method of the
UldpSender object when desired.
If the close() method raises the exception PendingAckMessageException, which means some messages have not been acknowledged by the LogLogic LMI appliance, and are possibly not received properly. Upon the next call to connect, those events is sent again, possibly ending up with duplicates, but avoiding any message loss.