Monitoring Funnelback
Managed by | Updated .
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 OK
response code
Query service - HTTPS
Request: HTTP request to https://<funnelback-server>/s/search.html?collection=<collection-name>
Response: Check for HTTP 200 OK
response code
Admin service (Classic)
Request: HTTP request to https://<funnelback-server>:8443/search/admin/
Response: Check for HTTP 200 OK
response code
Admin service - Marketing dashboard
Request: HTTP request to https://<funnelback-server>:8443/a/
Response: Check for HTTP 200 OK
response 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=winnie
a response containing the word pooh
may 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=winnie
a response containing the word pooh
may be expected.
XML endpoint
Request: HTTP/S request to http/s://<funnelback-server>/s/search.xml?collection=<collection-name>&query=<known-query>
Response: Check response for presence of an expected result. Eg. for query=winnie
a response containing the word pooh
may be expected.
XML (classic) endpoint
Request: HTTP/S request to http/s://<funnelback-server>/s/search.classic?collection=<collection-name>&query=<known-query>
Response: Check response for presence of an expected result. Eg. for query=winnie
a response containing the word pooh
may be expected.
Index freshness
Request: HTTP/S request to http/s://<funnelback-server>/s/search.xml?collection=<collection-name>&query=<known-query>
or http/s://<funnelback-server>/s/search.json?collection=<collection-name>&query=<known-query>
Response: Inspect the response for the value within the <collectionUpdated>
XML field or collectionUpdated
JSON field.
Push collections
The push API provides a number of API calls designed to assist in the monitoring of push collections. These can be found in the Push API section of the administration interface and are grouped as:
- push-api-health: Funnelback push API for monitoring of push collections.
- push-api-replication-health: Funnelback push API for monitoring of replicated push collections.
Analytics database age
Request: HTTP request to https://<funnelback-server>:8443/search/admin/analytics/Dashboard?collection=<collection-name>
Response: extract Report last updated: DD MMM YYYY value from the page source.
Server attributes
Monitoring of server attributes (disk space, CPU load, memory utilisation etc.) should be performed using standard monitoring procedures.