Document Storage

Business Logger documents are stored in an Elasticsearch server. Elasticsearch provides highly performant searching capabilities with large datasets. Business Logger documents (i.e. BizLoggerDoc) are stored in JSON format in Elasticsearch. You can also configure your MessageDetail records (see the section called “Message Detail”) to be stored in Elasticsearch instead of Oracle to improve scalability & searchability.

Elasticsearch stores the document JSON in a logical storage called an "Index". While storing each document in an index, it parses each data value and generates terms which are used while performing search operation. This process is called "indexing". The Elasticsearch server takes some time for indexing new documents. Therefore, the uploaded BizLogger documents are only available in search result after some time (approximately 1 minute, but may be faster or slower depending on load).

The URL for an Elasticsearch instance can be provided at time of installation in node.properties as:

# Set to true to enable BizLogger
bizlogger.enabled=true

# URL of Elasticsearch server
bizlogger.esurl=http://esclient.elogex.com:9200

# Set to true to save the MessageDetail on Elasticsearch server
# This property is used only when bizlogger.enabled is true
bizlogger.store.message.details=true
  

When expanded into InstanceConfig.xml, it will look like this:

<BizLoggerConfig storeMessageDetails="true">
	<Enabled>true</Enabled>
	<ESUrl>http://esclient.elogex.com:9200</ESUrl>
	<ESIndexPrefix>ES</ESIndexPrefix>
	<ESIndexCount>50</ESIndexCount>
	<QueueSize>1000</QueueSize>
	<QueueConsumerThreadCount>4</QueueConsumerThreadCount>
	<DaysToKeepDocuments>30</DaysToKeepDocuments>
</BizLoggerConfig>