Troubleshooting Siebel Intelligent Search

If you encounter issues with Siebel Intelligent Search or OpenSearch integration, use the following logging and diagnostic steps to identify and resolve problems.

OpenSearch Log:

  • Log file name: modernsearch.log
  • Log file location: <Siebel_Build_Location>/ses/applicationcontainer_internal/logs
  • Log levels: default Log Level will be 0 which stands for FATAL/ERROR. Set it to 5 to gather all the information including Information/Debug logs. Follow the steps below to set the Siebel JBS log level to 5:
    1. Navigate to <Siebel_Build_Location>/ses/applicationcontainer_internal/webapps
    2. Open the file: configagent.properties
    3. Add “JBSLogLevel=5” and save it.
    4. Restart the internal tomcat server.

Siebel Server Logs:

  • Presented in the corresponding Object Manager (OM) logs.
  • Turn on OM logs via Siebel Server Manager. All standard Log Levels for Siebel OM apply.
  • Apart from setting log level to 5 at component level, you can also set Even log level to 5 for all Search Events as shown below. Enabling this will help identify root causes of Search functionality in Siebel application.

Following table describes Server Event Configuration:

Event Type Alias Log Level Description
SearchLogEvent SearchLogEvent 5 Used to log events for Search data processor during indexing.
Search Administration SearchAdmin... 5 Logs all operations for Search Administration
Search Adapter SearchAdapter 5 Log search adapter operations
Search Execution SearchExecuti... 5 Logs all operations for Search Execution
Search Service SearchService 5 Log all the operations for Search services
SearchPLUS Log SearchPLUSLog 5 Log events for SearchPLUS Manager
SearchPLUS Indexing SearchPLUSIn... 5 Traces the indexing bath job component

To Set Up OpenSearch Without Demo Certificate

  1. Download and Install OpenSearch 2.15 from https://opensearch.org/artifacts/by-version/#release-2-15-0 as Standalone mode.
  2. Plugins was already part of OpenSearch installation except Ingest-attachment plugin.
  3. Download and install the ingest-attachment-2.15.0 plugin from https://artifacts.opensearch.org/releases/ plugins/ingest-attachment/2.15.0/ingest-attachment-2.15.0.zip.
  4. Don't install the Demo Certificate
  5. Add/Update the below parameter in opensearch.yaml
    • - network.host: 0.0.0.0

    • - discovery.seed_hosts: []

    • - discovery.type: single-node

    • - plugins.security.disabled: true

    • - node.roles: [ cluster_manager, data, ml, ml_model, ml_predictor, ingest ] under Nodes section

  6. Update the maximum size of total heap space to 4g with the below parameters in jvm.options
    • -Xms4g

    • -Xmx4g

  7. Set the proxy as required in jvm.options
    • #Sample proxy:

    • -Dhttp.proxyHost=www-xxx.xx.xxxx.com

    • -Dhttp.proxyPort=xx

    • -Dhttps.proxyHost=www-xxx.xx.xxxx.com

    • -Dhttps.proxyPort=xx

  8. Verify the OpenSearch connection is successful using the http URL without the username/password (http://<local_host>:<port>)
  9. Update the modernsearchconfig.yaml with the http URL and the port (Don't provide the username and password)
  10. Do the Model Registration, the Model Registration will not work with http URL.
  11. Indexing the Categories (Attachment and Non-Attachment) and perform a keyword search.

To Set Up OpenSearch With Demo Certificate

  1. Download and Install OpenSearch 2.15 from https://opensearch.org/artifacts/by-version/#release-2-15-0 as Standalone mode.
  2. Plugins are already part of OpenSearch installation except Ingest-attachment plugin.
  3. Download and install the ingest-attachment-2.15.0 plugin from https://artifacts.opensearch.org/releases/plugins/ingest-attachment/2.15.0/ingest-attachment-2.15.0.zip
  4. Install the Demo Certificate using the following steps:
    1. Go to OpenSearch installation location: C:\opensearch-2.15.0-windows-x64\opensearch-2.15.0\plugins\opensearch-security\tools
    2. Run "install_demo_configuration.bat" file and it opens the prompt with the below options.
      • Install demo Certificates? [y/N]: Y and enter.
      • Initialize Security Modules? [y/N]: Y and enter.
      • Enable cluster mode? [y/N]: N and enter (If OpenSearch instance as standalone)
  5. Verify the following entries get updated in modernsearchconfig.yaml after installing the demo certificate.
         file######## Start OpenSearch Security Demo Configuration ########
                  # WARNING: revise all the lines below before you go into production
                  plugins.security.ssl.transport.pemcert_filepath: esnode.pem
                  ...............................................................................................
                  ...............................................................................................
                  ...............................................................................................
                  ...............................................................................................
                  .plugins-flow-framework-state]
                  node.max_local_storage_nodes: 3
                  ######## End OpenSearch Security Demo Configuration ########
    
  6. Add/Update the following parameters in modernsearchconfig.yaml:
    • - network.host: 0.0.0.0
    • - discovery.seed_hosts: []
    • - discovery.type: single-node
    • - node.roles: [ cluster_manager, data, ml, ml_model, ml_predictor, ingest ] under the ‘nodes’ section
  7. Update the maximum size of total heap space to 4g with the below parameters in jvm.options
    • -Xms4g
    • -Xmx4g
  8. Set the proxy as required in jvm.options
    • #Sample proxy:
    • -Dhttp.proxyHost=www-xxx.xx.xxxx.com
    • -Dhttp.proxyPort=xx
    • -Dhttps.proxyHost=www-xxx.xx.xxxx.com
    • -Dhttps.proxyPort=xx
  9. Verify the OpenSearch connection is successful using the https URL with the username/password (https://<local_host>:<port>)
  10. Update the modernsearchconfig.yaml with the https URL, port, username and password.
  11. Do the Model Registration. Model Registration will get registered with https URL.
  12. Index the Categories (Attachment and Non-Attachment) and perform a keyword search.

Errors and Solutions

Error when clicking the Object Filter in Global Search Bar.

User may see this error when clicking the Object Filter button in Global Search Bar:

Solution: Ensure the Application User Property is configured.

After indexing a search category, user cannot perform searches on that category.

check the followings:

  1. If the category has been indexed properly in OpenSearch.
  2. If the OpenSearch server is up and running.
  3. If the model has been deployed successfully.

After restarting the OpenSearch service on a standalone machine, the model deployment enters a failed state.

Option 1: Identify the modelId from modernsearchconfig.yaml. Run the OpenSearch to redeploy the model - Model Redeploy API: {{openSearchUrl}}/_plugins/ml/models/{{modelid}}/_deploy

Option 2: in the ‘nodes’ section in yaml file, configure” node.roles: [ cluster_manager, data, ml, ml_model, ml_predictor, ingest ]

Category configuration error when doing a search.

User may get the following error when doing a search using the Global Search Bar:

Solution:

  1. Category names must appear in both the upstream and downstream sections in modernsearchconfig.yaml, and the sequence of categories must match exactly.
  2. When editing the yaml file, avoid mixing tabs and spaces, as this can cause parsing errors.

To Cross Check the Model Deployment Status via OpenSearch API

This can be obtained using API - Get Model Details: {{openSearchUrl}}/_plugins/_ml/models/{{modelid}}

Indexing on File Attachment Category is not working.

Check and set the following System Preferences:

  1. Enable OpenSearch = Y
  2. Enable OpenSearch FileIndexing = Y
  3. OpenSearch Index File Path = <OpenSearch Index File Path for Attachments>
  4. The above folder must be shared and granted full permission.

Search Config Service Error when clicking on the Object Filter button in Global Search bar.

Steps to resolve:

  1. Log into Siebel Web Tools.
  2. Create & Open a Workspace.
  3. Navigate to the required Application Object (e.g. Siebel Universal Agent)
  4. Navigate to User Properties for the selected Application.
  5. Add the New User Property:
    1. Name ClientBusinessService<#n> (e.g. ClientBusinessService13 )
    2. Value Search Config Service
  6. Validate and Deliver.

The MobileSync Component Group shows ‘Partially Running’ status.

Check to make sure the TxnProc Component is online.

  1. Navigate to Administration - Server Configuration → Enterprises → Component Definitions.
  2. Query TxnProc in Alias.
  3. Click Synchronize.
Note: You cannot use OpenSearch deployed via Siebel Cloud Manager to configure Siebel Intellingent Search for your on premises environment.

To Register a Different ML Model

Follow the steps below:

  1. Open the OpenSearch 2.15.0 documentation at https://docs.opensearch.org/2.15/ml-commons-plugin/pretrained-models/, identify the Model. Please ensure that the Vector dimension is 768 for optimal accuracy.
  2. Clean up the existing Model and Model Group information in the OpenSearch instance and in the YAML file.
  3. Change the ‘isPipelineCreated’ parameter under pipeline-ingest and pipeline-search section in the YAML file to ‘false’.
  4. If any existing categories have been Indexed, use Delete Index button in Siebel application to delete the existing Categories.
  5. Update the Model name and the version in the YAML file. Please refer to the example below:
    • modelName:: huggingface/sentence-transformers/all-distilroberta-v1
    • modelVersion: 1.0.1
  6. For Model registration, reset the OpenSearch engine Active Flag (e.g. unchecking and rechecking the flag).

To Upgrade OpenSearch YAML File

When applying a new Siebel Update, the existing “modernsearchconfig.yaml” file may get overwritten. Users should back up their customized YAML file and reapply the custom changes to the new file provided in the new Siebel Update.

To Configure Two Siebel Instances To Use a Single OpenSearch Instance

Follow the steps below:

  1. Ensure the modelGroupName parameter value in modernsearchconfig.yaml file is unique.
  2. Ensure the index name in the downstream section in modernsearchconfig.yaml file is unique.
For example:
    
index:
    category:
    - servicerequeststest:
        isIndexed: false