frevvo Latest - This documentation is for frevvo v10.1. Not for you? Earlier documentation is available too.
The Insight server is a document-oriented database (Apache Lucene Solr) that is used for frevvo Reports and Task/Submission searches. The software is included in the frevvo tomcat bundle. The Insight Server works in conjunction with frevvo and a web app (insight.war embedded in frevvo.war) to retrieve the information for the frevvo reports. frevvo administrators, designers and users assigned form/flow Edit permissions can run the Insight Data Batch Job to refresh submissions when changes are made to Searchable Fields in a form/flow.
Here is how it works:
Always use a fresh Insight instance for frevvo. Multiple databases should never point to the same Insight instance.
On This Page:
When you unzip the tomcat bundle, you will see a new <frevvo-home>\solr directory that contains the Insight Server software.
A solr core is created for each tenant.
A directory is created for each core under frevvo/data/solr. The documents in each core are stored under the 'data' directory under the core directory.
Report data kept in the subdirectories of <frevvo-home>\data\solr
When you delete a tenant, the core gets deleted.
The default server and port are localhost:8983. The Insight Server URL configuration parameter is located in the <frevvo-home>\tomcat\conf\Catalina\localhost\context.xml.default file. Configuring the location of the Insight Server in this file makes it available to the insight and frevvo web application warfiles. Modify the insight.server.url parameter in the <frevvo-home>\tomcat\conf\frevvo-config.properties file if the Insight Server is running on a different machine than frevvo.
# Insight settings insight.enabled=true insight.server-url=http://localhost:8983/solr
frevvo requires Insight software for the Reporting and Submissions View feature. The Insight software is included in the tomcat bundle. The Insight server MUST be started BEFORE starting frevvo. Instructions for Windows and Linux operating systems are listed here:
Windows:
If you close the Insight server (Solr) startup window, the server will stop running. Leave the window open or set up frevvo and the Insight Server to run as Windows services.
Linux:
You do not have to restart the Insight server every time you restart frevvo.
Use the bin\solr.cmd -all command to stop all instances of the Insight Server.
Follow these steps:
The Insight Server must be started BEFORE frevvo from a command prompt, or you will see a Configuration Checklist warning and you will not be able to proceed. If you close the Insight Server startup window, on a Windows system, the server will stop running. You can leave the window open or set up frevvo and the Insight Server to run as Windows services.
If you are using the frevvo tomcat bundle, follow the steps below to run the Insight Server (Solr) as a Windows service. Otherwise, general instructions can be found on this website.
We will use a service helper such as NSSM (Non-sucking Service Manager). NSSM requires Java 7 or higher. You can download it from here.
Navigate to the directory under c:\Program Files\nssm\ that contains the nssm.exe file for Windows64 or Windows32
For example, the path in Windows 7 would be C:\Program Files\nssm\nssm-2.24\win64
Type: nssm install <service name> - Replace <service name> with the name you want to use for the Insight Server service.
Ex: nssm install insightserver
Browse to the location of the solr.cmd script by clicking on the three dots to the right of the Application Path field. This should be in <frevvo-home>\solr\bin.
Click on the solr.cmd file, then click Open. The Application Path field will populate.
Notice the Startup directory field also populates. REMOVE bin from the Startup directory field. The Startup directory should be: c:\<frevvo-home>\solr\
Enter these Arguments:
start -f -p 8983
Optionally, click the Details tab to specify a Display Name and Description - Ex: Insight Server, Script to Stop/Start Solr5. Notice the Startup type is set to Automatic.
Click the Install service button. A success message displays:
Start the Insight Server service from the Computer Management Services pane.
There are batch files in the <frevvo-home> directory to Install/Configure frevvo as a Windows service. Refer to Installing frevvo as a Windows Service for more details and troubleshooting tips.
Configure the frevvo service if you are using Windows 64 bit by clicking on the Configure Service batch file. You must run the Configure-Service batch file as an administrator.
Change the Startup type to Automatic. Save the changes.
frevvo will appear under Windows services with the name frevvoforms with a Startup type of Manual. Change Startup Type to Automatic (Delayed Start), then start the service.
Once the two services are installed and started, add a dependency to the Insight server for the frevvoforms service. The dependency ensures that the Insight service is running before the frevvoforms service starts.
From the administrative command prompt, type the following command with the name you gave to the Insight Server service:
sc config frevvoforms depend= <name of the Insight Server service>
Solr should only be accessible to the frevvo server i.e. http://localhost:8983/, and should not be remotely accessible. Most customers don’t allow external http access to a server (only https). Since solr is not exposed over https (at least it shouldn't be from a security perspective), remote code execution vulnerability can be mitigated (a remote attacker cannot exploit this vulnerability as it is not exposed). Another option is to block external access to port 8983, for example using firewall rules.
frevvo accesses solr via the client API and does not use velocity. It also encodes all solr query parameters, so it is not possible to attack via injection.
Indexing related messages are captured in the <frevvo-home>\tomcat\logs\frevvo.YYYY-MM-DD file. For example, if you run the Insight Data Batch process manually or if it runs automatically during an upgrade, messages from the process are found in the frevvo.log.