Curator Tips and Tricks

How to Open Curator(Solr) Dashboard?

  • Curator dashboard can be accessed from the machine where it is running. You can’t access the dashboard unless you have access to the machine.
  • If you are on the Curator machine where Curator server is running simply open the URL: http://curator-server:8983/solr in your browser.
  • But if you are not on the Curator machine, like if the Curator server running on a headless Linux server, follow then below given steps to access the dashboard.
    • Make sure you have SSH access to the curator server where it is running.
    • SSH to the curator server with local port 8983 forwarding to the server.
    • Syntax: ssh user@curator-server -L8983:127.0.0.1:8983
      • where user is the SSH user and curator-server is the name of the machine, it could be IP address too.
    • Now in your browser open: http://localhost:8983/solr
    • Curator dashboard will open in your browser.

How do I find out if Curator Service Needs More Memory?

  • Idle memory usage on the Curator server must be less than or equal to 60%.
  • And peak memory usage should be a 90%.
  • To determine the idle memory usage, restart the Curator server and view the memory usage in the Curator dashboard.
  • Note: Curator server startup may take time if Curator database is large in terms of 10GBs or more.
  • And under peak load, Curator memory usage should stay around 90%, if the Curator memory is constantly going beyond 90% or higher, it’s the time to increase the Curator memory.

How to Check Curator Memory Usage?

  • Open Zoom Curator dashboard at: http://curator-server:8983/solr
  • Look for the JVM-Memory graph on the right side.
  • Refresh the page couple of times and see if memory usage changes.
  • If the JVM memory usage is 90% or more, then it’s time to increase the allocated heap.
  • See the section below on how to increase Curator Memory.
  • Make sure Curator have 40% memory free in an idle state after Curator server restart and all cores are loaded. And always have 10% free under a peak load when lots of users are using it.

See the image for reference:

How to Set Curator Memory?

  • Visit the server where curator is running.
  • Edit curator-server.conf
  • Locate the lines:
    • wrapper.java.additional.8=-Xms1g
    • wrapper.java.additional.9=-Xmx2g
  • Change the values of above lines to the desired heap size.
    • To example to set the memory to 8GB set them like:
      • wrapper.java.additional.8=-Xms8g
      • wrapper.java.additional.9=-Xmx8g
    • -Xms => means startup memory.
    • -Xmx => means max memory.
  • Save the file and restart the curator server.
  • Note: Make sure you have enough memory free. If the operating system doesn’t have enough free memory Curator start up will fail.
  • Look for the curator startup errors in the log file: logs/curatordog_log

How to see Curator Search Query Times?

  • Connect to the curator server machine.
  • Edit: [Installation Dir]/conf/solr-core/log4j.properties file
  • Change the LOG level from INFO to BENCHMARK. Like:
    • Change: java.util.logging.ConsoleHandler.level=INFO => java.util.logging.ConsoleHandler.level=BENCHMARK
    • Change: java.util.logging.FileHandler.level=INFO => java.util.logging.FileHandler.level=BENCHMARK
    • Change: .level=INFO => .level=BENCHMARK
  • Save the file and restart the Curator server.
  • Now, whenever any search is performed on the Curator server it will log the query and it’s time in the curator_log.0 file.
  • Note: Leaving BENCHMARK level(logs) on won’t affect the Curator performance badly.

Configure Schedule for AI Suggestions Build

  • Connect to the curator server machine.
  • Open curator-server.xml for editing.
  • Locate the section: <aiIndexConfig>
  • Add the following tags under the <aiIndexConfig> XML section:
    • <frequency> – Controls how frequent suggestions should be build.
    • <hourOfTheDay> – Set the hour of the day at which suggestions should be build. This field is in 24 hours format. Accepted are fro 0 to 23.
    • <minutes> – Set the minute part for the above hour. Accepted values are 0 to 59.
    • <dayOfTheWeek> – Once the frequency is set to 7, this value can be set to day of the week on this you want schedule the suggestion building. Value must be in ENGLISH like, SUNDAY, MONDAY etc…
  • Save the file and restart the curator-server.
  • Once curator server starts, look for the log message similar to:
    INFO: Tue, 2 Mar 2021 16:20:07.625 PST [BuildAiSuggestionsIndex$SuggestionsBuildExecutor.scheduleNext ai-suggestions-builder-1] [CONFIG] AI suggestions build job scheduled to run at: Tue Mar 09 16:20:01 PST 2021 and then: Tue Mar 16 16:20:01 PDT 2021 and so on.
  • Above line will give you a hint when the suggestion build job will run.

What to do If AI Advance Search in Taking Long Time?

  • Connect to the curator server machine.
  • Open curator-server.xml for editing.
  • Locate the section: <aiIndexConfig>
  • Add the tag: <threadCountForMultipleFuidAiDataFetch>. Like:
    • <threadCountForMultipleFuidAiDataFetch>5</threadCountForMultipleFuidAiDataFetch>
    • We recommend setting this value to 10 and try the performance.
  • Default value of this is 1, which is good enough for most of the cases. But if your AI is in millions of entries and Advance Search for AI is taking time, you can try increasing thread count value and here.

Disable the building of AI suggestions

  • In most case there is no need to disable the building of AI suggestions on Curator, but if AI build suggestions are not working correctly or taking a lot more CPU, they can disabled by adding a flag to the curator-server.xml.
  • To disable the building for AI suggestions please add the XML tag: <buildSuggestionsDisabled>true</buildSuggestionsDisabled> in the curator-server.xml inside: <aiIndexConfig> ..</aiIndexConfig> tag.
    like:
    <aiIndexConfig>
    ....
    ...
    <buildSuggestionsDisabled>true<buildSuggestionsDisabled>
    </aiIndexConfig>
  • After this, no new AI suggestions are build. But previously build AI suggestions would work and continue to serve the auto complete results in the Advanced Search.