drive.json File

This page explains the structure and purpose of the drive.json file used in HCL Detect. It outlines required configurations including database settings, user profiles, communication parameters, system health metrics, and other operational settings. Proper setup of this file is essential before launching the application.

The drive.json file stores essential configurations for the HCL Detect application, including database details, time zone, location, metrics, admin credentials, and more. Before running the application, users must configure these settings or the application will consider the default values provided in the defaultdrive.json file.

Let us go through each parameters in the drive.json file.
Communication Services

communicationServices:

Communication services are configured to communicate with the Kafka based services. For communication services and communication configuration, the values are pre-configured and should not be modified.

Drive

administratorUser:

This section allows configuring the admin user profile.
"administratorUser": {
            "displayName": "Administrator",
            "firstName": "Administrator",
            "lastName": "User",
            "username": "admin"
        },
Configure the initial administrative user account for HCL Detect. Upon first application startup, Tomcat creates an admin user based on these settings. These details cannot be modified after initial setup.
Note: It is mandatory to configure the default user profile before the initial launch of the HCL Detect application.

applicationHealthMetricsRefreshPeriodInSeconds:

Set your preferred refresh time for the System Health page in seconds.

applicationPartitionStartupTimeoutInSeconds:

Configure the start-up timeout for the feed application partition.

audience:

Configure the audience criteria parameters like timeouts, query limit, bucket size for chart, and reporting options. For more information, refer Audience Criteria.

auditLogConfiguration:
        "auditLogConfiguration": {
            "maxFileSizeInMBs": 1024,
            "maxNumFiles": 5
        },

campaignActuator:

Configure the core components of the Campaign Actuator. For more information. refer Campaign Actuator.

communicationConfiguration:

Communication services are configured to communicate with the Kafka based services. For communication services and communication configuration, the values are pre-configured and should not be modified.

currency:

Specify the default currency code and symbol to be displayed in transactional data. This setting determines the monetary format for all financial transactions within the system. Currently, only single monetary format is supported.

database:

Configure the database details including, name, server address, port number, database type, and credentials.
"database": {
            "name": "drive_acme_core",
            "server": {
                "ip": "127.0.0.1",
                "port": 3306
            },
            "type": "MariaDB",
            "userName": "drive",
            "userPassword": "6F2FA7F6B3CD1570F19F0A0B2636E033"
        }

name: Include the database name.

server: Configure the server address and port number of database.

type: Set the database type as MariaDB.

userName: Enter the user name for the database.

userPassword: Set the encrypted password. HCL Detect uses internal password encryption tool to encrypt the passwords.

demoModeEnabled, displayLocale and distanceDisplayUnitSystem:

These fields are currently inactive and will be utilized for future enhancements.

driveUser:

Define the credentials for a dedicated database user account that Tomcat will create to facilitate communication with other applications. Tomcat will cache the drive user details from the drive.json file after the initial startup.
Note: Don't change the drive user profile after the initial startup of Tomcat server.
"driveUser": {
            "displayName": "Drive User",
            "email": "support@hcl.com",
            "firstName": "Drive",
            "lastName": "User",
            "password": "97A08DFA3379B540B1BF196628B990F866F71A8E98531B26430E845F749478DE5C2E76453040705A066DC771DA41E7F7"
        },

"displayName": "Drive User", "email": "support@hcl.com", "firstName": "Drive", "lastName": "User",: configure the display name, email address, first and last names of drive user profile.::

password: an encrypted password is automatically generated and stored within the drive.json file during the installation process.

enabledFeatures:

Don’t modify the default values. These fields be utilized for future enhancements.

eventEndpoints:

Don’t modify the default values. These fields be utilized for future enhancements.

externalKafkaConfiguration:

This field is currently reserved for future enhancements.

fastPast:

Specify the number of partitions required for FastPast. You can either provide specific port numbers or simply indicate the desired number of partitions, allowing the system to automatically assign ports.
"fastPast": { "ports": [ 41235 ] }

"ports": [ 41235 ]: Configure the specific port numbers for FastPast partitions.

"numServers": 2: Set the number of servers for FastPast partitions that can run on system assigned ports.

feedApplications:

Configure feed applications and their corresponding parameters. For more information, refer Feed Applications.

feedDataModels:

Feed data models represent common classes of feed data sources in the system. For more information about Feed data models, refer Feed Data Models.

fulfillmentServices :

Don’t modify the default value. These objects are utilized for future enhancements.

internalKafkaConfiguration:

Specify the port number for Kafka port and zoo keeper port. If not specified, the system will assign random port number.

jupyterNotebookPort:

This field is reserved for future implementation.

mapCenter:

Configure the latitude and longitude positions to define the center position of the map. Currently, this field is reserved for future enhancements.

pinPoint:

Specify the number of partitions required for PinPoint. You can either provide specific port numbers or simply indicate the desired number of partitions, allowing the system to automatically assign ports.
"pinPoint": {
            "ports": [ 41233 ]
        }

"ports": [ 41235 ]: Configure the specific port numbers for Pinpoint partitions.

"numServers": 2: Set the number of servers for Pinpoint partitions that can run on system assigned ports.

profiles:

Configure the profiles set in the feed applications. For more information about profiles, refer Profile.

referenceDatasets:

Configure reference datasets to populate the profile tables. This defines the data model and format of reference data along with the destination profile and profile table. For more information about reference datasets, refer Reference Datasets.

tomcatConfiguration:

Configure tomcat parameters. For more information, refer Tomcat Configuration.

Event Consumers

eventConsumers:

Set the Unica Interact parameters to send the event details. For more information about event consumers, refer to Integrations.

Fulfillment Services

fulfillmentServices:

Don’t modify the default value. These objects are utilized for future enhancements.

Running Mode

runningMode:

Set the mode as "notDisturbuted" for VM only mode, and "scaledDistributed" for hybrid mode.

Solution

solution:

Specify a unique customer name. The mainClass field is pre-configured, and should not be modified.