Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

Tip

This is the most important configuration file in Insights product. It is required to run WAR file, Platform engine jar as well as Report jar. It is important to keep the server-config.json updated with the latest changes. Find the various components of server-config.json on this page.

...

titleSample Server Config Json file
Info

server-config.json file is present at "%INSIGHTS_HOME%"\.InSights environment variable path location.

Sample Server Config Json file

...

languagejson

...

Anchor
top81
top81

Tip

This is the most important configuration file in Insights product. It is required to run WAR file, Platform engine jar as well as Report jar. It is important to keep the server-config.json updated with the latest changes. Find the various components of server-config.json on this page.

json
Expand
titleSample Server Config Json file
Info

server-config.json file is present at "%INSIGHTS_HOME%"\.InSights environment variable path location.

Sample Server Config Json file

Code Block
languagejson
{
    "vault":{
    	"isVaultEnable":false,
        "vaultEndPoint":"http://localhost:3000/v1/",
        "secretEngine":"",
        "vaultToken":""
    },
	"grafana":{
        "grafanaEndpoint":"http://localhost:3000",
        "grafanaDBEndpoint":"jdbc:postgresql://localhost:5432/grafana",
        "adminUserName":"",
        "adminUserPassword":""
    },
	"trustedHosts":[
        "localhost"
    ],
    "graph":{
        "secretEngineendpoint":"http://localhost:7474",
        "vaultTokenauthToken":""
    },
	"grafana":{
        "grafanaEndpointboltEndPoint":"httpbolt://localhost:30007687",
        "grafanaDBEndpointmaxIdleConnections":"jdbc:postgresql://localhost:5432/grafana",25
    },
    "adminUserNamepostgre":"",{
        "adminUserPassworduserName":"",
       }, 	"trustedHostspassword":["",
        "insightsDBUrl":"jdbc:postgresql://localhost:5432/insight"
,
   ],     "grafanaDBUrl"graph:":{
jdbc:postgresql://localhost:5432/grafana"
    },
    "endpointmessageQueue":"http://localhost:7474{
        "host":"localhost",
        "authTokenuser":"",
        "boltEndPointpassword":"bolt://localhost:7687",
        "maxIdleConnectionsprefetchCount":255
    },
    "postgreagentDetails":{
        "userNameisOnlineRegistration":""true,
        "passwordonlineRegistrationMode":"nexus",
        "insightsDBUrlbrowseRepoUrl":"jdbc:postgresql://localhost:5432/insighthttps://infra.cogdevops.com:8443/service/rest/repository/browse/docroot/insights_install/release",
        "grafanaDBUrldownloadRepoUrl":"jdbc:postgresql://localhost:5432/grafana"
https://infra.cogdevops.com:8443/repository/docroot/insights_install/release",
   },     "messageQueuenexusUserName":{"",
        "hostnexusPassword":"localhost",
        "userdocrootUrl":"https://platform.cogdevops.com//insights_install/release",
        "passwordofflineAgentPath":"D:\\Project\\Insights\\InSights_Windows\\Agents\\offlineAgent",
        "prefetchCountunzipPath":5
    },
    "agentDetails":{
        "isOnlineRegistration":true"D:\\Project\\Insights\\InSights_Windows\\Agents\\PlatformAgents\\unzip",
        "onlineRegistrationModeagentExchange":"nexusiAgent",
        "browseRepoUrlagentPkgQueue":"https://infra.cogdevops.com:8443/service/rest/repository/browse/docroot/insights_install/release",INSIGHTS.AGENTS.PACKAGE"
    },

    "downloadRepoUrlendpointData":{
        "elasticSearchEndpoint":"httpshttp://infra.cogdevops.com:8443/repository/docroot/insights_install/release",localhost:9200"
    },
    "nexusUserNamequeryCache":"",{
        "nexusPasswordesCacheIndex":"neo4j-cached-results/querycacheresult",
    },
   "docrootUrlemailConfiguration":"https://platform.cogdevops.com//insights_install/release",
        "offlineAgentPath":"D:\\Project\\Insights\\InSights_Windows\\Agents\\offlineAgent",
        "unzipPath":"D:\\Project\\Insights\\InSights_Windows\\Agents\\PlatformAgents\\unzip",
    {
		"sendEmailEnabled": false,
		"smtpHostServer": "",
		"smtpPort": "",
		"smtpUserName": "",
		"smtpPassword": "",
		"isAuthRequired": true,
		"smtpStarttlsEnable": true,
		"mailFrom": "onedevops@cogdevops.com",
		"mailTo": "",
		"subject": "Health Status - {TimeOfReportGeneration}",
		"emailBody": "Hi Team, Attaching the report File",
		"systemNotificationSubscriber": ""
	},
    "agentExchangecorrelations":"iAgent",{
        "agentPkgQueuecorrelationWindow":"INSIGHTS.AGENTS.PACKAGE"
 48,
  },      "endpointDatacorrelationFrequency":{3,
        "elasticSearchEndpointbatchSize":"http://localhost:9200"2000
    },
    "queryCacheschedulerConfigInMin":{
        "esCacheIndexauditEngineInterval":"neo4j-cached-results/querycacheresult"60,
    },    "emailConfigurationwebhookEngineInterval": {
		"sendEmailEnabled": false,
		"smtpHostServer": "",
		"smtpPort": "",
		"smtpUserName": "",
		"smtpPassword": "",
		"isAuthRequired": true,
		"smtpStarttlsEnable": true,
		"mailFrom": "onedevops@cogdevops.com",
		"mailTo": "",
		"subject": "Health Status - {TimeOfReportGeneration}",
		"emailBody": "Hi Team, Attaching the report File",
		"systemNotificationSubscriber": ""
	},
    "correlations":{10,
        "engineAggregatorModuleInterval":10,
        "engineCorrelatorModuleInterval":60,
        "projectMapperModuleInterval":10,
        "dataPurgingExecutorInterval":300,
        "offlineDataProcessingExecutorInterval":10,
        "inferenceJobExecutor":20,
        "dataArchivalEngineInterval":240
    },
    "singleSignOnConfig":{
        "entityId":"",
        "appId":"",
        "metadataUrl":"",
        "correlationWindowmetdataFilePath":48"",
        "correlationFrequency":3,keyStoreFilePath":"C:\\InSights_Windows\\Server2\\INSIGHTS_HOME\\.InSights\\saml-keystore.jks",
        "batchSizekeyAlias":2000
"mykeyalias",
   },     "schedulerConfigInMinkeyPass":{"mykeypass",
        "auditEngineIntervalkeyStorePass":60"samlstorepass",
        "webhookEngineIntervalappBaseUrl":10"baseURL",
        "engineAggregatorModuleIntervalrelayStateUrl":10"relayStateUrl",
        "engineCorrelatorModuleIntervaldefaultTargetUrl":60"defaultTargetUrl",
        "projectMapperModuleIntervalpostLogoutURL":10"logoutURL",
        "dataPurgingExecutorIntervaltokenSigningKey":300"insights_IDP_CogDevops_SSO_Token_string",
        "offlineDataProcessingExecutorIntervalservicePrincipalKerberos":10,
        "inferenceJobExecutor":20,
        "dataArchivalEngineIntervalkeyTabLocationKerberos":240
    },
    "singleSignOnConfig":{
   "C:\\InSights_Windows\\Server2\\INSIGHTS_HOME\\.InSights\\kerberos_keytab_file.keytab"
    },
    "entityIdassessmentReport":"",{
        "appIdoutputDatasource":"NEO4J",
        "metadataUrlmaxWorkflowRetries":""3,
        "metdataFilePathfusionExportAPIUrl":"",http://localhost:1337/api/v2.0/export"
    },
    "keyStoreFilePath":"C:\\InSights_Windows\\Server2\\INSIGHTS_HOME\\.InSights\\saml-keystore.jks",workflowDetails":{
        "keyAliascorePoolSize":"mykeyalias"8,
        "keyPassmaximumPoolSize":"mykeypass"20,
        "keyStorePasskeepAliveTime":"samlstorepass"20,
        "appBaseUrlwaitingQueueSize":"baseURL"10,
        "relayStateUrlworkflowExecutorCron":"relayStateUrl",1 0 0 *      "defaultTargetUrl":"defaultTargetUrl* ?",
        "postLogoutURLworkflowRetryExecutorCron":"logoutURL",
   0 0 */4 ? * *"
    "tokenSigningKey":"insights_IDP_CogDevops_SSO_Token_string"},
        "servicePrincipalKerberos"mlConfiguration":{
		"h2oEndpoint":""
	},
        "keyTabLocationKerberos":"C:\\InSights_Windows\\Server2\\INSIGHTS_HOME\\.InSights\\kerberos_keytab_file.keytab""insightsServiceURL":"http://localhost:8080",
    }"insightsTimeZone":"UTC",
    "assessmentReportuserId":{
   "",
    "outputDatasourcepassword":"NEO4J",
  
     "maxWorkflowRetriesrefreshTime":3"Jan 22, 2017   5:04:25 PM",
    "fusionExportAPIUrlenableOnlineDatatagging":"http://localhost:1337/api/v2.0/export"true,
    }"enableAuditEngine":true,
    "workflowDetailsenableWebHookEngine":{true,
    "enableDataArchivalEngine":false,
    "corePoolSizeenableOnlineBackup":8false,
  
     "maximumPoolSizeautheticationProtocol":20,
   "NativeGrafana",
    "keepAliveTimepdfkey":20"",
	"applicationLogLevel": {
		"updateLevelTransitiveDependency": false,
		"serviceLogLevel":   {
			"PlatformService": "waitingQueueSizeDEBUG":10,
        "workflowExecutorCron			"PlatformEngine":"1 0 0 * * ?",
        "workflowRetryExecutorCron":"0 0 */4 ? * *"
    },
    "mlConfiguration":{
		"h2oEndpoint":""
	},
    "insightsServiceURL":"http://localhost:8080",
    "insightsTimeZone":"UTC",
    "userId":"",
    "password":"",
    "refreshTime":"Jan 22, 2017 5:04:25 PM",
    "enableOnlineDatatagging":true,
    "enableAuditEngine":true,
    "enableWebHookEngine":true,
    "enableDataArchivalEngine":false,
    "enableOnlineBackup":false,
    "autheticationProtocol":"NativeGrafana",
    "pdfkey":"",
	"applicationLogLevel": {
		"updateLevelTransitiveDependency": false,
		"serviceLogLevel": {
			"PlatformService": "DEBUG",
			"PlatformEngine": "DEBUG",
			"PlatformReport": "DEBUG",
			"PlatformRegressionTest": "DEBUG"
		}
	}
}
Expand
titleServer Config with Vault
  • Configure Vault with Storage Engine as PostgreSQL, all configuration steps mention in Vault Configuration with PostgreSQL DB

  • Add following minimum configuration inside Insights INSIGHTS_HOME\.InSights\server-config.json

    Code Block
    language
     "DEBUG",
    			"PlatformReport": "DEBUG",
    			"PlatformRegressionTest": "DEBUG"
    		}
    	}
    }
    Expand
    titleServer Config configuration with Vault

    Info

    Installing fresh Insights application

    • Configure Vault with Storage Engine as PostgreSQL, all configuration steps mention in Vault Configuration with PostgreSQL DB

    • Add following minimum configuration inside Insights INSIGHTS_HOME\.InSights\server-config.json

      Code Block
      languagejson
      {
                      "vault": {
                                      "isVaultEnable": true,
                                      "vaultEndPoint": "http://10.10.90.42:8200/v1",
                                      "secretEngine": "database-insights",
                                      "vaultToken": "<vault root token>"
                      },
                      "grafana":{
                                      "grafanaEndpoint":"http://localhost:3000"
                      },
                      "trustedHosts":[
                                      "localhost"
                      ]
      }

    • Make sure that isVaultEnable = true with correct vault token, Vault is started and unsealed

    • Start Tomcat application

    • Login Insights UI with basic grafana credential using user ‘admin’ most probably password is ‘admin’

    • On successful login, It will load server configuration on UI, do the respective changes

    • Save the changes, It will store all your configuration in vault in encrypted format

    • If you want to edit any field in server configuration then use Insights UI

    • With Native Grafana authentication there is no need to restart tomcat, it automatically loads server config changes.

    • In case of SSO, initial login will be with initial grafana credential, do respective changes and restart tomcat.

    Info

    Upgrade Insights Application to Vault

    • Configure Vault with Storage Engine as “PostgreSQL” all configuration steps mention in Vault Configuration with PostgreSQL DB

    • Backup your existing server config json file

    • Add following minimum configuration inside Insights INSIGHTS_HOME\.InSights\server-config.json

      Code Block
      {
                      "vault": {
                                      "isVaultEnable": true,
                                      "vaultEndPoint": "http://10.10.90.42:8200/v1",
                                      "secretEngine": "database-insights",
                                      "vaultToken": "<vault root token>"
                      },
                      "grafana":{
                                      "grafanaEndpoint":"http://localhost:3000"
                      },
                      "trustedHosts":[
                                      "localhost"
                      ]
      }
    • Make sure that isVaultEnable = true with correct vault token, Vault is started and unsealed

    • Start Tomcat application

    • Login Insights UI with basic grafana credential using user ‘admin’ most probably password is ‘admin’

    • On successful login, It will load server configuration on UI, do the respective changes copy detail from your backup server config

    • Save the changes, It will store all your configuration in vault in encrypted format

    • If you want to edit any field in server configuration then use Insights UI

    • With Native Grafana authentication there is no need to restart tomcat, it automatically loads server config changes.

    • In case of SSO, initial login will be with initial grafana credential, do respective changes and restart tomcat.

    Info
    Upgrade Agent Changes with Vault

    If existing application have agent configured with vault then it is mandatory to upgrade it using following steps

    • Login to Insights UI , go to Agent Configuration

    • Changes Agent version >= 7.3

    • Update all your secret again so that it will store in new vault  

    • Restart agent

    • New Agent Registration will affect with these changes

    Expand
    titleServer Config configuration without Vault
    Info

    Installing fresh Insights application

    • Either configuration start with minimum configuration mention below

      Code Block
      {
                      "vault": {
                                      "isVaultEnable": truefalse,
                                      "vaultEndPoint": "http://10.10.90.42:8200/v1",
                                      "secretEngine": "database-insights",
                                      "vaultToken": "<vault root token>"
                      },
                      "grafana":{
                                      "grafanaEndpoint":"http://localhost:3000"
                      },
                      "trustedHosts":[
                                      "localhost"
                      ]
      }
      Make sure that isVaultEnable = true with correct vault token, Vault is started and unsealed

    • Start Tomcat application

    • Login Insights UI with basic grafana credential using user ‘admin’ most probably password is ‘admin’

    • On successful login, It will load server configuration on UI, do the respective changes

    • Save the changes, It will store all your configuration in vault in encrypted format

    • If you want to edit any field in server configuration then use Insights UIServer config changes store in file system with unencrypted format

    • With Native Grafana authentication there is no need to restart tomcat, it automatically loads server config changes.

    • In case of SSO, initial login will be with initial grafana credential, do respective changes and restart tomcat.

    Another way is to configure server config directly on file system INSIGHTS_HOME\.InSights\server-config.json and restart tomcat and other services

    expand
    Expand
    titleComponents of server-config.json

    Component

    Significance

    "endpointData": {
    "elasticSearchEndpoint": "http://localhost:9200"
    }

    • endpointData - It has the configuration for Elaticsearch database.

      • elasticSearchEndpoint - It is the server path, where Elasticsearch database is hosted.

    "graph":{
    "endpoint":"http://localhost:7474",
    "authToken":"",
    "boltEndPoint":"bolt://localhost:7687",
    "maxIdleConnections":25
    }

    • graph - This section refers to Neo4j database configurations.

      • endpoint - It is the server/hostname where Neo4j is hosted.

      • authToken - It is token for Neo4j authentication.

      • boltEndPoint - Its Neo4j boltEndPoint

      • maxIdleConnections - Maximum connection use for Neo4j (use only with java Neo4j driver)

    "grafana": {
    "grafanaEndpoint": "http://localhost:3000",
    "grafanaDBEndpoint": "jdbc:postgresql://localhost:5432/grafana",
    "adminUserName": "admin",
    "adminUserPassword": "admin",
    "dbUserName": "user",
    "dbPassword": "password"
    }

    • grafana - It contains the details of Grafana.

      • grafanaEndpoint - It is the web server location where Grafana is hosted.

      • grafanaDBEndpoint - It's the configuration to connect PostgreSQL database.

      • adminUserName - It is the username of admin for Grafana.

      • adminUserPassword - It is the corresponding password for the username of admin for Grafana.

      • dbUserName - It is the username to log intoPostgreSQL.

      • dbUserName - It is the corresponding password for the username to log into PostgreSQL.

    "postgre": {
    "userName" : "user",
    "password" : "password",
    "insightsDBUrl": "jdbc:postgresql://127.0.0.1:5432/insight",
    "grafanaDBUrl": "jdbc:postgresql://127.0.0.1:5432/grafana"
    }

    • postgre - This module has the configurations for PostgreSQL

      • userName - It is the username to log into PostgreSQL

      • password - It is the corresponding password for the username to log into PostgreSQL.

      • insightsDBUrl - It is the JDBC connectivity URL of Insights data storage index, which stores information related to Insights Application.

      • grafanaDBUrl - It is the JDBC connectivity URL of Grafana data storage index, which stores information related to Grafana.

    "messageQueue": {
    "host": "localhost",
    "user": "iSight",
    "password": "iSight",
    "prefetchCount" : 10

    }

    • messageQueue - These are the configurations related to RabbitMQ server.

      • host - It is the host location at which RabbitMQ is running.

      • user - It is username to log into RabbitMQ application.

      • password - It is the corresponding password for the username to log into RabbitMQ application.

      • prefetchCount - It is to control the number of files consumed by the Insights Engine.The value should be calculated based on number of messages and system configuration.


    "agentDetails": {

    "isOnlineRegistration":true,
    "onlineRegistrationMode":"nexus",
    "browseRepoUrl":"https://infra.cogdevops.com:8443/service/rest/repository/browse/docroot/insights_install/release",
    "downloadRepoUrl":"https://infra.cogdevops.com:8443/repository/docroot/insights_install/release",
    "nexusUserName":"",
    "nexusPassword":"",
    "docrootUrl":"https://platform.cogdevops.com//insights_install/release",
    "offlineAgentPath":"D:\Project\Insights\InSights_Windows\Agents\offlineAgent",
    "unzipPath":"D:\Project\Insights\InSights_Windows\Agents\PlatformAgents\unzip",
    "agentExchange":"iAgent",
    "agentPkgQueue":"INSIGHTS.AGENTS.PACKAGE"

    }

    • agentDetails - These are the configurations needed to setup agents in Insights Application.

      • isOnlineRegistration : This property is used to decide mode of agent registration online or offline

      • onlineRegistrationMode : It is server from where you are downloading Agent package nexus or docroot, After 7.0 we migrated all package on nexus.

      • browseRepoUrl

      • docrootUrl - It is the location from which agent would be downloaded in a zip file.

      • unzipPath - It is the local system path where the downloaded zip file would be extracted.

      • agentExchange - It is the channel where agent related data exchanges will take place.

      • agentPkgQueue - It is the queue name where all the various agents will be queued.

    "queryCache": 
    {
         "esCacheIndex": "neo4j-cached-results-custom"
    }

    • queryCache - This configuration helps us to set custom Neo4j data source's query caching index in Elasticsearch.

      • esCacheIndex - It is the custom index of Elaticsearch where cache results will be stored.

    "insightsServiceURL": "https://localhost:8080"

    • insightsServiceURL - It is the web server host and port where "PlatformService.war" file is deployed and run.

    "disableAuth": false

    • disableAuth - This option is used to turn ON/OFF authentication service.

    "enableNativeUsers": true

    • enableNativeUsers - This option is used to enable native users from Grafana to log into Insights application.

    "insightsTimeZone": "US/Central"

    • insightsTimeZone - It is the local timezone of the country/place.

    "enableOnlineDatatagging": true

    • enableOnlineDatatagging - This property is required to enable/disable Business Mapping on data.

    "enableOnlineBackup": true

    • enableOnlineBackup - This property is required to enable the backup when the Engine is running.

    "autheticationProtocol":"NativeGrafana"

    • autheticationProtocol- This property is used to set particular authentication protocol . For Native Grafana use "NativeGrafana", For SAML use "SAML"

    ...


    Top Section