Monitoring Funnelback
Background
The Funnelback software can be configured to send out an email indicating if an update has failed or completed successfully. This is built in to the product but requires the server to be configured to send via an SMTP server.
The Funnelback server can also be monitored using a monitoring service such as Nagios.
Monitoring checks should implement any authentication required to gain access to the pages that form part of the check.
Suggested checks
The following are suggested checks:
Service availability
Query service - HTTP
-
Request: HTTP request to
http://<funnelback-server>/s/search.html?collection=<collection-name> -
Response: Check for
HTTP 200 OKresponse code
Query service - HTTPS
-
Request: HTTP request to
https://<funnelback-server>/s/search.html?collection=<collection-name> -
Response: Check for
HTTP 200 OKresponse code
Service response times
-
Request: HTTP/S request to:
-
http/s://<funnelback-server>/s/search.html?collection=<collection-name>&query=<known-query> -
http/s://<funnelback-server>/s/search.json?collection=<collection-name>&query=<known-query> -
http/s://<funnelback-server>/s/search.xml?collection=<collection-name>&query=<known-query> -
http/s://<funnelback-server>/s/search.classic?collection=<collection-name>&query=<known-query>depending on what endpoint you are using.
-
Response: Measure response time
Query check
HTML endpoint
-
Request: HTTP/S request to
http/s://<funnelback-server>/s/search.html?collection=<collection-name>&query=<known-query> -
Response: Check response for presence of an expected result. Eg. for
query=winniea response containing the wordpoohmay be expected.
JSON endpoint
-
Request: HTTP/S request to
http/s://<funnelback-server>/s/search.json?collection=<collection-name>&query=<known-query> -
Response: Check response for presence of an expected result. Eg. for
query=winniea response containing the wordpoohmay be expected.
Index freshness
-
Request: HTTP/S request to
http/s://<funnelback-server>/s/search.xml?collection=<collection-name>&query=<known-query>orhttp/s://<funnelback-server>/s/search.json?collection=<collection-name>&query=<known-query> -
Response: Inspect the response for the value within the
<collectionUpdated>XML field orcollectionUpdatedJSON field.