Configuring Unica Director

Change in ActiveMQ configuration

After Unica Director server installation you might need to change the ActiveMQ configuration. You can do this by modifying the ActiveMQ configuration in the <Unica Director Install Path> /Server/application.properites

spring.activemq.broker-url=ACTIVE_MQ_BROKER_URL

spring.activemq.user=ACTIVE_MQ_USER

spring.activemq.password=ACTIVE_MQ_USER_PASSWORD

Listener resource consumption data

By default, the Unica Director server maintains listener CPU and Memory consumption data of the last 7 days. If you require more data than this, it can be done by updating the < Unica Director Install Path> /Server/application.properites

set parameter addon.listener.profile.data.days=<number of days>

This will retain the data for the specified number of days in the ao_listener_rc table but the graph will show data for the last 7 days (beginning today) only.

Note: Setting a higher value for days to retain data can cause delay in the update to the System Usage chart.

Cache Mechanism to Improve Performance

When the first time Dashboard page is open, and every time the user navigates to and fro between Dashboard and Clean up page, an Add On Server call is made to get the 'Orphan temp tables and files' count. This in turn makes a call to the respective Add On Agent. Add On Agent then spawns a utility to run as a separate process to get the table and file count. This might take upto a few minutes in case the data is substantial on that agent. This is a CPU intensive process. The Add On agent thread and Add On Server thread waits till the utility run is complete to get the file count result. This causes over utilization of threads on server as well as agent and the server can run out of threads in case multiple such requests. We have added a caching mechanism to overcome this issue and the file count will be cached for a configured amount of time and will avoid too many process to be spawned. We have added following two properties in the application.properties of Add On Agent.

cache.evict.time.interval.in.minutes=10

This signifies the max age of the value cached, after which it will be marked stale, and new unica_acclean process will be triggered whenever a new request for the getting the file count comes in. On an average this time should be set to 5-10 times of 'avg.utility.run.duration.in.seconds'.

avg.utility.run.duration.in.seconds=120

This signifies the wait duration for subsequent requests for getting file count when one unica_acclean process is already in progress. This should be set based on average time of the process run time, but at the same time it should not be more than 2 mins as it will keep the threads blocked.