How to monitor the 'Java Heap Space' usage on Filr Search Servers using JConsole

  • 7022162
  • 24-Oct-2017
  • 24-Oct-2017

Environment

Micro Focus Filr 3.0
Micro Focus Filr 3.1
Micro Focus Filr 3.2
Micro Focus Filr 3.2.1

Situation

Sometimes there is a need to see how much Heap space the 'Filr Search/Index Servers (Lucene)' are using in your Filr deployment. There is a built-in monitoring tool called JConsole in JDK which can be used to obtained real-time graphs for this analysis. This tool is very useful if you are repeatedly seeing crashes on the Filr Search Server(s) which may be because of a low Heap Memory configuration. You will need an additional client machine with JDK 1.8 (or newer) installed in order to run JConsole. This can be a Windows desktop or a Linux desktop (with X11 installed).

Resolution

1. Stop the Filr service on all your Filr application server nodes.

rcfilr stop


*Steps 2 through 10 must be run on each of the Filr Search Server(s) in your Filr deployment.
 
2. On the Search Server, stop the index service.

rcindexserver stop


3. Edit /opt/novell/search/indexserver/etc/vibe.management.properties file.

vim /opt/novell/search/indexserver/etc/vibe.management.properties

4. Identify the following line and uncomment it (also make sure to get rid of the extra leading space).

# com.sun.management.jmxremote.port=8642

5. Save the file and exit.

6. Having made these configuration changes to the index server, make sure to clear/move all existing log files at /opt/novell/search/indexserver/logs before re-starting the index server.
 
mkdir /opt/novell/search/indexserver/logs/oldlogsJC
mv /opt/novell/search/indexserver/logs/*.* /opt/novell/search/indexserver/logs/oldlogsJC


7. Restart the Index service.

rcindexserver start

8. Temporarily stop firewall on Search Appliance by using this command.

SuSEfirewall2 stop

9. In order for the monitor to work, you will need to open port 8642 for incoming traffic through the firewall using Yast.

Yast2
  • Click on Security and Users > Firewall.
  • Select the Allowed Services tab and click Advanced.
  • Add port 8642 to TCP list.
  • Click OK to close the Advanced dialog box.
  • Click Next and review the summary of your changes.
  • Click Finish to apply your changes and then quit.

10. Start Firewall.

SuSEfirewall2 start

*Steps 11 through 14 should be performed on the monitoring client machine that has the JDK installed.

11.  On the client machine install Java JDK 1.8 or newer (not JRE).

12. On the client machine, start JConsole.

Windows: [Your-JDK-Folder]\bin\Jconsole.exe
Linux:  [Your-JDK-Folder]/bin/jconsole


13. Click "Remote Process" radio button in the "JConsole: New Connection" dialog. Enter <index server hostname>:8642 in the text box (leave username and password as blank) and press Connect button. Select the "Memory" tab and then the "Heap Memory Usage" Chart.

14. Keep this window open for continued monitoring of the Java heap space usage over time. You may have to take periodic screen captures of the chart to save the data for review.