5.2 Post-Installation Steps for Investigation Toolkit

Follow the steps below to complete the setup and initialize required components.

After installing the Investigation Toolkit, the following post-installation steps must be performed by the administrator to complete the setup and enable all features of Investigation Toolkit.

Prerequisite:

Ensure that you have the correct data source names available in the CS_IH_CONFIG table (mandatory configurations). And, these data sources have been mapped with the CS workspace in compliance studio UI.

Note:

Ensure that you have the correct data source names available in the CS_IH_CONFIG table (mandatory configurations). And, these data sources have been mapped with the CS workspace in compliance studio UI.
  1. Initialize Audit
    The audit functionality tracks and logs all user access events within the Investigation Toolkit. Audit details are stored in the CS_IH_AUDIT_DETAILS table.

    Table 5-2 CS_IH_AUDIT_DETAILS

    V_CASE_ID V_USR_NM V_ACTN V_PRCS_NM T_EXEC_TM V_MSG
    CA101 DSADMIN EXECUTE Override 22-APR-24 09.19.26.524000000 PM

    To create the audit table:

    1. Navigate to the following path ##CS_INSTALLATION_PATH##/OFS_COMPLIANCE_STUDIO/deployed/mmg-home/mmg-load-to-graph/graph-service/utility/bin and execute the following shell script:
      ./InitializeIhAudit.sh --datasource <DATASOURCE_NAME>

      Note:

      Ensure the <DATASOURCE_NAME> argument matches the data source name stored with the key auditDatasourceName in the CS_IH_CONFIG table.
    2. The audit table will be created in the specified data source. Another table by the name CS_IH_PROCESS_LOG will be initialized in the same data source which keep track of all the process logs. This will be initialized while running the InitializeIhAudit.sh script

      Note:

      The following tables CS_IH_AUDIT_DETAILS and CS_IH_PROCESS_LOG are created in the schema mapped with the specified data source provided as argument. The CS_IH_PROCESS_LOG table is used to record all process-related logs.
  2. Configure Investigation Hub (IH) Data Schema
    This is used for saving User input while Case Investigation and tracking change. The IH Data Schema stores values for overridable and additional user-defined attributes. Data related to overridden or updated attributes is saved in the tables CS_IH_UPDTD_ENTITY_ATTR_VAL and CS_IH_ENTITY_ADDITIONAL_ATTR_VAL. The original values from previous execution are saved in the V_ORIGINAL_ATTR_VAL column of CS_IH_UPDTD_ENTITY_ATTR_VAL table.
    This table saves the overriden attribute values.

    Table 5-3 CS_IH_UPDTD_ENTITY_ATTR_VAL

    V_CASE_ ID V_USER NAME V_ENTITY_ PROVIDER V_ENTITY_ ID V_ATTRIBUTE _NAME V_ATTRIBUTE_ VALUE V_ORIGINAL _ATTR_VAL D_TIME STAMP
    CA121 User A FocalEntity CUST101 Alias Shyam ~ Krishna Syam

    03-07-24

    1:59:33.844 PM

    This table saves the additional attribute values.

    Table 5-4 CS_IH_ENTITY_ADDITIONAL_ATTR_VAL

    V_CASE_ID V_USER NAME V_ENTITY_ PROVIDER V_ENTITY_ID V_ATTRIBUTE_NAME V_ATTRIBUTE_ VALUE D_TIME STAMP
    CA121 User A FocalEntity CUST101 Alias Shyam ~ Krishna

    03-07-24

    1:59:33.844 PM

    Note:

    Only updated attributes are stored in the tables.

    To initialize these tables:

    1. Navigate to the following path ##CS_INSTALLATION_PATH##/OFS_COMPLIANCE_STUDIO/deployed/mmg-home/mmg-load-to-graph/graph-service/utility/bin and execute the following script:
      ./ExecuteIhDataSchema.sh --datasource <DATASOURCE_NAME>

      Note:

      Use the data source name stored with the key IH_DATASOURCE in the CS_IH_CONFIG table.
  3. Initialize ECM Data Schema

    The ECM Data Schema is required for reading source data from ECM atomic schema in Flow notebook template.

    To initialize:

    1. Navigate to the following location ##CS_INSTALLATION_PATH##/OFS_COMPLIANCE_STUDIO/deployed/mmg-home/mmg-load-to-graph/graph-service/utility/bin and execute the following script:
      ./InitializeEcmDataSchema -d <DATASOURCE_NAME>

      Note:

      Use the data source name stored with the key ECM_DATASOURCE in the CS_IH_CONFIG table.
  4. Initialize Archival

    Archival helps manages active record count by hiding inactive, redundant or historical records, thereby improving the table performance.

    To set up archival tables and procedures:

    1. Navigate to the following location ##CS_INSTALLATION_PATH##/OFS_COMPLIANCE_STUDIO/deployed/mmg-home/mmg-load-to-graph/graph-service/utility/bin and run the following shell script:
      ./InitializeIhArchival.sh -d <DATASOURCE_NAME>

      Note:

      Update to archival must be initialized in all 3 schemas. For example, in data schema, ECM schema and audit schema. Since the tables are distributed across multiple schemas, this script must be used to initialize objects required for archival in all schema.

      Note:

      Create a separate data source for archival or use the existing ones from CS_IH_CONFIG table.
  5. Connection Pooling

    Connection pooling is implemented in the Investigation Toolkit to efficiently manage database connections. When multiple users investigate cases simultaneously, connection pooling ensures performance and resource optimization by reusing established connections, thus reducing the overhead associated with frequently creating and closing connections. Investigation toolkit maintains a pool of connections for it's operations.

    During installation, the CS_CON_POOL_DETAILS table is created and populated with a DEFAULT entry.

    Note:

    If connection pool details are not provided for any datasource, the properties for that datasource will default to those of the default datasource.

    To configure or update connection pooling for any additional data sources, use the provided shell script. This script will insert or update a record in the CS_CON_POOL_DETAILS table for the specified data source.

    Path: <OFS_COMPLIANCE_STUDIO_INSTALLATION_PATH>/deployed/mmg-home/mmgload-to-graph/graph-service/utility/bin

    Execute the following shell script ./SetConnectionPoolConfigForDatasource.sh -h. This list down the shell script usage information.

    For example: ./SetConnectionPoolConfigForDatasource.sh --username fccuser –- datasource-name ECM_datasource --initial-size 25 --max-total 50 --max-idle 35 --min-idle 10 --max-wait-millis 3000 --min-evict-idle-time PT30M --soft-min-evict-idle-time PT8H

    Note:

    Use same shell script to update connection pooling details. Restart the compliance studio to reflect updated changes.
    Parameters

    Table 5-5 Parameters

    Parameter Default Value/example Description Comment
    --username MMGUSER compliance studio username
    --initial-size (IH_CP_INITIAL_SIZE) 10 The initial number of connections that are created when the pool is started.
    --max-idle (IH_CP_MAX_IDLE) 20 The maximum number of connections that can remain idle in the pool, without extra ones being released, or negative for no limit.
    --max-total (IH_CP_MAX_TOTAL) 50 The maximum number of active connections that can be allocated from this pool at the same time, or negative for no limit.
    --max-wait-millis (IH_CP_MAX_WAIT_MILLIS) 3000 The maximum number of milliseconds that the pool will wait (when there are no available connections) for a connection to be returned before throwing an exception, or -1 to wait indefinitely.
    --min-evict-idle-time (IH_CP_MIN_EVICTABLE_IDLE_TIME) PT30M The minimum amount of time a connection may sit idle in the pool before it is closed and a new connection is created if count of connections is less than IH_CP_MIN_IDLE. PT30M = 30 minutes
    PT55S = 55 seconds
    PT2H = 2 hours
    --min-idle (IH_CP_MIN_IDLE) 10 The minimum number of connections that can remain idle in the pool, without extra ones being created, or zero to create none.
    --soft-min-evict-idle-time (IH_CP_SOFT_MIN_EVICTABLE_IDLE_TIME) PT8H The minimum amount of time a connection may sit idle in the pool before it is closed and a new connection is created. Note: Values lesser than IH_CP_MIN_EVICTABLE_IDLE_TIME will close all the idle connection and create connection to match IH_CP_MIN_IDLE

    Note:

    Reset cache or restart Compliance Studio to update connection pool details.

    Review Connection pooling for External Schema:

    Connection pooling is used at multiple places in compliance studio, One such service of our interest is graph service. Connection pooling details for graph service (uses external schema) are present in ##CS_INSTALLATION_PATH##/OFS_COMPLIANCE_STUDIO/bin/config.sh. These connection pooling settings are used by investigation toolkit, when fetching values while rendering narrative on UI and reading data information for PDF generation.

    Table 5-6 Sample External Schema Pooling Parameters

    Key Default Value Comment
    EXT_SCHEMA_ENABLE_CP TRUE Enables pooling for external schema connections.
    EXT_SCHEMA_CP_SOFT_MIN_EVICTABLE_IDLE_TIME PT6H Soft minimum idle time before eviction.
    EXT_SCHEMA_CP_MIN_IDLE 2 Minimum idle connections maintained.
    EXT_SCHEMA_CP_MIN_EVICTABLE_IDLE_TIME PT30M Minimum idle time before eviction.
    EXT_SCHEMA_CP_MAX_WAIT_MILLIS 3000 Max wait time (ms) for an available connection.
    EXT_SCHEMA_CP_MAX_TOTAL 10 Maximum number of pooled connections.
    EXT_SCHEMA_CP_MAX_IDLE 5 Maximum connections allowed idle.
    EXT_SCHEMA_CP_INITIAL_SIZE 1 Initial number of connections in the pool.

    Note:

    For updating the connection pooling configuration for external schema (e.g for graph service), update the value in Compliance Studio's config.sh and run update configuration command compliance-studio.sh -u from the path ##CS_INSTALLATION_PATH##/OFS_COMPLIANCE_STUDIO/bin.
  6. Import Investigation Flow Template Notebook

    Import the investigation flow template notebook in data studio. For instructions on how to import the notebook, refer the investigation toolkit installation guide.