Server Configuration (server-config.json)
- Akshay Sharma (Unlicensed)
- Abirami
- Gaurav (Unlicensed)
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.
Introduction :
This is most important file in Insights Application which contain all necessary configuration to run product
Configuration from UI :
Go to section Configuration –> server configuration
Update all value and save the record
check mandatory field in Mandatory Fields/Sections mentioned below
server-config.json file is present at "%INSIGHTS_HOME%"\.InSights environment variable path location.
Sample Server Config Json file
{
"vault": {
"isVaultEnable": false,
"vaultEndPoint": "http://localhost:8200/v1",
"secretEngine": "",
"vaultToken": ""
},
"grafana": {
"grafanaEndpoint": "http://localhost:3000",
"grafanaDBEndpoint": "jdbc:postgresql://localhost:5432/grafana",
"adminUserName": "",
"adminUserPassword": "",
"dbUserName": "",
"dbPassword": ""
},
"trustedHosts": [
"localhost"
],
"graph": {
"endpoint": "http://localhost:7474",
"authToken": "",
"boltEndPoint": "bolt://localhost:7687",
"maxIdleConnections": 25,
"logQueryIfProcessingTimeGreaterThanInMS": 5
},
"postgre": {
"userName": "",
"password": "",
"insightsDBUrl": "jdbc:postgresql://localhost:5432/insight",
"grafanaDBUrl": "jdbc:postgresql://localhost:5432/grafana",
"c3pMinSize": "9",
"c3pMaxSize": "25",
"c3pTimout": "1800",
"c3pMaxStatements": "300"
},
"messageQueue": {
"host": "localhost",
"port": 5672,
"user": "",
"password": "",
"prefetchCount": 5,
"enableDeadLetterExchange":false
},
"agentDetails": {
"isOnlineRegistration": false,
"onlineRegistrationMode": "nexus",
"offlineAgentPath": "",
"unzipPath": "",
"agentExchange": "iAgent",
"agentPkgQueue": "INSIGHTS.AGENTS.PACKAGE",
"githubAPI": "",
"githubAccessToken": "",
"repoUrl": "",
"browseRepoUrl": "",
"downloadRepoUrl": "",
"nexusUserName": "",
"nexusPassword": "",
"docrootUrl": "http://platform.cogdevops.com/insights_install/release"
},
"endpointData": {
"elasticSearchEndpoint": "http://localhost:9200"
},
"queryCache": {
"esCacheIndex": "neo4j-cached-results/querycacheresult"
},
"assessmentReport": {
"outputDatasource": "NEO4J",
"maxWorkflowRetries": 3,
"fusionExportAPIUrl": "http://localhost:1337/api/v2.0/export"
},
"workflowDetails": {
"corePoolSize": 8,
"maximumPoolSize": 20,
"keepAliveTime": 20,
"waitingQueueSize": 10,
"workflowExecutorCron": "1 0 0 * * ?",
"workflowRetryExecutorCron": "0 0 */4 ? * *"
},
"emailConfiguration": {
"sendEmailEnabled": false,
"smtpHostServer": "",
"smtpPort": "",
"smtpUserName": "",
"smtpPassword": "",
"isAuthRequired": true,
"smtpStarttlsEnable": true,
"mailFrom": "onedevops@cogdevops.com",
"subject": "Health Status - {TimeOfReportGeneration}",
"systemNotificationSubscriber": "",
"logo": "img/Insight.svg",
"line": "img/Line.svg",
"footerLogo": "img/FooterLogo.svg"
},
"correlations": {
"correlationWindow": 48,
"correlationFrequency": 3,
"batchSize": 2000
},
"schedulerConfigInMin": {
"auditEngineInterval": 60,
"webhookEngineInterval": 10,
"engineAggregatorModuleInterval": 10,
"engineCorrelatorModuleInterval": 60,
"offlineDataProcessingExecutorInterval": 10,
"dataArchivalEngineInterval": 240,
"projectMapperModuleInterval": 10,
"dataPurgingExecutorInterval": 300
},
"singleSignOnConfig": {
"entityId": "",
"appId": "",
"metadataUrl": "",
"metdataFilePath": "",
"keyStoreFilePath": "C:\\InSights_Windows\\Server2\\INSIGHTS_HOME\\.InSights\\saml-keystore.jks",
"keyAlias": "",
"keyPass": "",
"keyStorePass": "",
"appBaseUrl": "baseURL",
"relayStateUrl": "relayStateUrl",
"defaultTargetUrl": "defaultTargetUrl",
"postLogoutURL": "logoutURL",
"tokenSigningKey": "insights_IDP_CogDevops_SSO_Token_string",
"servicePrincipalKerberos": "",
"keyTabLocationKerberos": "C:\\InSights_Windows\\Server2\\INSIGHTS_HOME\\.InSights\\kerberos_keytab_file.keytab"
},
"mlConfiguration": {
"h2oEndpoint": ""
},
"webhookEngine": {
"enableWebHookEngine": false,
"eventProcessingWindowInMin": 60
},
"insightsServiceURL": "http://localhost:8080",
"insightsTimeZone": "UTC",
"refreshTime": "Jan 22, 2017 5:04:25 PM",
"enableOnlineDatatagging": false,
"enableAuditEngine": false,
"enableDataArchivalEngine": false,
"autheticationProtocol": "NativeGrafana",
"pdfkey": "",
"applicationLogLevel": {
"updateLevelTransitiveDependency": false,
"serviceLogLevel": {
"PlatformService": "DEBUG",
"PlatformEngine": "DEBUG",
"PlatformReport": "DEBUG",
"PlatformRegressionTest": "DEBUG"
}
},
"proxyConfiguration":{
"isEnableProxy":false,
"proxyHost":"",
"proxyPort":0,
"proxyUsername":"",
"proxyPassword":""
},
"userId": "",
"password": "",
"enableWebHookEngine": true,
"enableOnlineBackup": false,
"enableSSO": false
}
"vault": {
"isVaultEnable": false,
},
"grafana": {
"grafanaEndpoint": "http://localhost:3000",
"grafanaDBEndpoint": "jdbc:postgresql://localhost:5432/grafana",
"adminUserName": "",
"adminUserPassword": ""
},
"trustedHosts": [
"localhost",
"http://localhost:8080"
],
"graph": {
"endpoint": "http://localhost:7474",
"authToken": "",
"boltEndPoint": "bolt://localhost:7687",
},
"postgre": {
"userName": "",
"password": "",
"insightsDBUrl": "jdbc:postgresql://localhost:5432/insight",
"grafanaDBUrl": "jdbc:postgresql://localhost:5432/grafana",
},
"messageQueue": {
"host": "localhost",
"user": "",
"password": "",
},
"singleSignOnConfig": {
"tokenSigningKey": "insights_IDP_CogDevops_SSO_Token_string",
},
"autheticationProtocol": "NativeGrafana",
"insightsServiceURL": "http://localhost:8080"
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
{ "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.
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
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.
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
Either configuration start with minimum configuration mention below
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
Server 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
Component | Significance |
---|
Component | Significance |
---|---|
"endpointData": { |
|
"graph":{ |
|
"grafana": { |
|
"postgre": { |
|
"messageQueue": { } |
|
"agentDetails": { "isOnlineRegistration":true, } |
|
"queryCache": |
|
"insightsServiceURL": "https://localhost:8080" |
|
"insightsTimeZone": "US/Central" |
|
"enableOnlineDatatagging": true |
|
"enableOnlineBackup": true |
|
"autheticationProtocol":"NativeGrafana" |
|
"emailConfiguration": { | This section use to configure Email
|
"singleSignOnConfig": { |
|
"assessmentReport": { | This functionality user for Reporting feature
|
"proxyConfiguration":{ } | This block help user to add proxy information, proxy information is mainly use in online agent registration/update isEnableProxy : if true then it denote that Insights Application use proxy proxyHost : Proxy host information proxyPort : Proxy port information proxyUsername : Proxy user information if needed, If no user information required then keep this filed blank proxyPassword : Proxy user password if needed, If no password required then keep this filed blank |
©2021 Cognizant, all rights reserved. US Patent 10,410,152