I have noticed that service_host takes forever to start responding. On initial startup it trolls through all available hubs and robots trying to find them all and cache or index them maybe? MPSE and discovery may be involved as well as ppm. Likewise, the whole thing seems a little less likely to work until discovery has made a good pass over the environment to populate a bunch of stuff. If you don't use it for a while, then go to the interface, AC will re-crawl the hubs and itemize robots before responding. The interface will proably timeout before the crawl completes, but it will eventually finish and I can use AC.
This may imply that some timers might be better lowered than raised since you don't want to block forever on a down hub or robot in a sequential crawl. Also, more memory might be better due to the datomic database that caches records before executing local queries.
I also had a weird brief time when it came up with two of each hub, one for each path down redundant tunnels. Then it corrected itself. I'm guessing it may have been a point when the cache was loaded but not consolidated? Logs also complain about duplicate robotids if you have any at high debug levels.
Currently have 338 hubs.
There are some additional config files and options that are hidden or not well explained.
If you get adminconsole running, it lets you configure adminconsole and monitoring services. The latter ends up in two places. I believe mons.cfg propagates out into log4j.xml automatically so you probably only need to change one. This is mine with some interesting things turned up to trace level logging. Note the monitoring service log location as well and the <soLinger> tag. This is described as "Socket Linger Timeout (seconds)" in the configuration interface. Might be valuable to reduce startup time.
Ids services is not configurable, but has a config file with some interesting options. It's also noteworthy that there are seven log levels available under service_host.cfg and it is set in two places. I also disabled compression temporarily. Don't know if that has an effect.
Pretty much all of our hubs are 7.61 or newer with 7.62 at the middle distribution tier as tunnel clients. 7.61 has an odd bug where it can terminate a connection if a large amount of data is being requested and it can traverse the tunnel from the remote hub faster than accross the local network (or vpn) to the requester. This is documented in detail in the forum. 7.63 doesn't contain the release and 7.62 was never officially released.
Ignore the cat. We're on windows/sql/UIM-8.1, but I mount some stuff to a unix box so I don't have to windows as actively.
It is possible to get a second admin_console running too. The trick is the second data engine which support finally said is supported but will be taken away later and shouldn't be used to push data to the database. I just connect it to a queue that collects a non-existent subject. You can tell adminconsole to use a data_engine in a different location than the local hub, but it depends on mpse which requires a local data_engine, so it's no help as far as I can tell. You'll also need mpse and distsrv and you will need to load you licenses on the distsrv or some stuff won't start correctly. Then of course there are the other 7 or so undocumented probe dependencies to get it working that we've itemized elsewhere on here.
############################ cat ./catalinaBase/conf/MonitoringService/mons.cfg
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<configuration>
<webapps>
<monitoring_services>
<settings>
<logFileName>catalinaBase/logs/monitoring_services/MonitoringServiceProbe.log</logFileName>
<logFileSize>5242880</logFileSize>
<appenders>
<com>
<nimsoft>
<mons>trace<model>
<ctd>
<display>
<builders>trace</builders>
</display>
</ctd>
</model>
</mons>
<ids>
<ctd>trace</ctd>
</ids>
</nimsoft>
</com>
<org>
<springframework>warn<security>warn</security>
</springframework>
<apache>
<commons>
<beanutils>
<converters>warn</converters>
</beanutils>
</commons>
</apache>
</org>
<rootLog>trace</rootLog>
</appenders>
<soLinger>5</soLinger>
</settings>
</monitoring_services>
</webapps>
</configuration>
######################################./catalinaBase/webapps/monitoring_services/WEB-INF/classes/log4j.xml
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="true" threshold="null">
<!-- our console appender -->
<appender class="org.apache.log4j.ConsoleAppender" name="Console">
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{MMddyyyy HH:mm:ss,SSS} [%10.10t] %X{client} %-5p %c - %m%n"/>
</layout>
</appender>
<appender class="org.apache.log4j.RollingFileAppender" name="ProbeLogFile">
<param name="File" value="catalinaBase/logs/monitoring_services/MonitoringServiceProbe.log"/>
<param name="Append" value="true"/>
<param name="MaxFileSize" value="5242880"/>
<param name="MaxBackupIndex" value="5"/>
<param name="Encoding" value="UTF-8"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d{MMddyyyy HH:mm:ss,SSS} [%10.10t] %X{client} %-5p %c - %m%n"/>
</layout>
</appender>
<category additivity="false" name="org.springframework">
<priority value="warn"/>
<appender-ref ref="ProbeLogFile"/>
</category>
<category additivity="false" name="com.nimsoft.mons">
<priority value="trace"/>
<appender-ref ref="ProbeLogFile"/>
</category>
<category additivity="false" name="org.springframework.security">
<priority value="warn"/>
<appender-ref ref="ProbeLogFile"/>
</category>
<category additivity="false" name="com.nimsoft.ids.ctd">
<priority value="trace"/>
<appender-ref ref="ProbeLogFile"/>
</category>
<category additivity="false" name="org.apache.commons.beanutils.converters">
<priority value="warn"/>
<appender-ref ref="ProbeLogFile"/>
</category>
<category additivity="false" name="com.nimsoft.mons.model.ctd.display.builders">
<priority value="trace"/>
<appender-ref ref="ProbeLogFile"/>
</category>
<root>
<priority value="trace"/>
<appender-ref ref="Console"/>
<appender-ref ref="ProbeLogFile"/>
</root>
</log4j:configuration>
###############################cat ./service_host.cfg
<setup>
loglevel = 7
logsize = 5120
hook_stdout = true
log_stdout = true
data_engine = /Berbee/h-nimroot-msn-3/h-nimroot-msn-3/data_engine
deploy_poll_ms = 6000
deploy_wait_ms = 15000
CATALINA_OPTS = -Xms1024m -Xmx4096m -Djava.library.path="../../../lib"
composite_ctd = false
<ssl>
self_signed_nbits = 2048
use_generated_keystore = true
enabled = false
</ssl>
<server_xml>
<server>
port = 8006
</server>
<http_connector>
port = 8080
connectionTimeout = 20000
maxThreads = 300
compression = off
useSendfile = false
compressableMimeType = text/html,text/xml,text/plain,text/css,application/json,application/javascript,application/xml
</http_connector>
<https_connector>
port = 8443
connectionTimeout = 20000
maxThreads = 200
protocol = org.apache.coyote.http11.Http11NioProtocol
keystoreFile =
keystoreType =
keyAlias =
compression = on
useSendfile = false
compressableMimeType = text/html,text/xml,text/plain,text/css,application/json,application/javascript,application/xml
</https_connector>
<host>
name =
</host>
</server_xml>
<loggers>
org.apache.http = SDK_LOW
</loggers>
</setup>
<startup>
options = -Xms128m -Xmx2048m
</startup>
####################################### cat ./catalinaBase/conf/ids_services/ids_services.cfx
<setup>
loglevel = 4
logsize = 5120
max_n_logfiles = 5
log_odata_entities = false
archive_url = http://archive.nimsoft.com/
support_url = http://support.nimsoft.com/
product_catalog_cache_time_ms = 3600000
primary_distsrv = scan
primary_distsrv_scan_seconds = 900
primary_license_manager = scan
primary_license_manager_scan_seconds = 900
deployment_engine = automated_deployment_engine
odata_max_results = 350
<loggers>
org.apache.http = WARN
</loggers>
ScannerPoolNCoreThreads = 7
ScannerPoolMaxPoolSize = 7
ScannerPoolKeepAliveTimeSec = 120
PackageDownloadPoolNThreads = 5
utf8_supported_probes = Ad_server|1.70,Hyperv|2.11,Logmon|3.42,Ntevl|4.00,Adevl|2.00
</setup>