/lmi-jdbc

JDBC driver for accessing data stored in LogLogic LMI

Primary LanguageJava

JDBC Driver for TIBCO LogLogic(R) Advanced Features

Description

This JDBC driver aims at querying log data stored in LMI appliances using the same query language as the advanced search feature, while retrieving the results in a standard JDBC fashion.

The driver is self-contained in a single JAR file: lmi-jdbc-driver-1.1-single.jar that should be placed at the relevant location depending on the application using it.

Prerequisites

This driver works with LMI version 6.2.0 or greater.

Usage guide

The JDBC driver supports queries written in SQL or EQL language, in the same format as used in the advanced search feature.

Every query MUST include a filter criteria with a range on sys_eventTime to be accepted.

URL format and default port

The URL template to use for connecting to an LMI host is:

jdbc:lmi:<host/IP>:<port>

Default port is 9681

Parameters can be passed in the URL or programmaticaly when creating the JDBC connection object.

The example JAVA code below is for testing purpose (note the use of insecureMode to accept any certificate, and especially the self-signed certificate generated by LMI, this is not recommended for production)

String url = "jdbc:lmi://" + hostname + ":" + port + "?insecureMode=true";
Class.forName("com.tibco.loglogic.lmi.jdbc.LmiJdbcDriver");
con = DriverManager.getConnection( url, "admin", "my password" );
String sql = "SELECT s1.sys_body AS SYSBODY FROM system s1 WHERE (s1.sys_eventTime >= '2017-08-29 23:26:25' AND s1.sys_eventTime <= '2017-08-30 23:59:59')\n";
PreparedStatement stmt = con.prepareStatement( sql );
ResultSet rs = stmt.executeQuery();

Supported parameters for connection

Here is the list of the options that can be passed in the connection string URL itself, or programmatically through the JDBC driver standard mechanisms.

Parameter Mandatory Default Value Comment
user Yes n/a The username of an LMI user with query privileges
password Yes n/a The password
networkTimeoutMillis No 600000 Timeout for all network operations (milliseconds)
batchSize No 5000 Size of the batches for results retrieval
queryTimeout No 3600 Query is deleted after expiration of this time (seconds)
insecureMode No No When true, disable all security checks on the server certificate (not for production use)
noHostnameVerification No No When true, do no verify that the hostname present in the certificate is the one used in the URL.
pollingTimeout No 3600 Abort query if no results retrieved within that time (seconds).
acceptedCertificateFingerprints No n/a A string representing the list of the certificate fingerprints accepted, delimited with comas.
keyStoreURL No n/a URL of the keystore file containing the anchors of trust
keyStorePassword No n/a The password of the keystore file.