Troubleshooting
Start with the Dashboard tab: its health verdict names most problems and the fix for each. For problems that stop the Dashboard from opening, check the service and its log file first.
Dashboard warnings
The Dashboard tab lists each condition it detects, most serious first.
| Warning | What it means | What to do |
|---|---|---|
| The search index is empty | The search copy holds no installations, so every search returns nothing. | Run a full reindex from the Index tab on the leader. On a fresh install, configure the SBN Data Server connection first. |
| The search index database is unreachable | SBN-Search cannot read its search copy in PostgreSQL. | Check Connectivity > PostgreSQL and that the PostgreSQL service is running. See PostgreSQL troubleshooting. |
| SBN Server settings are not configured | No SBN Data Server connection is set, so there is nothing to index from. | Fill in Connectivity > SBN Data Server and press Test Connection. |
| PostgreSQL search database is not configured | No search database connection is set. | Fill in Connectivity > PostgreSQL, press Save then Test Connection, and restart the SBN-Search service. |
| Indexing is switched off | Changes made in SBN are not reaching the search copy. | Turn indexing on from the Index tab on the leader. |
| Indexing is on but has never completed a cycle | No indexing cycle has finished yet. | Wait a minute. If it stays, check Last error on the Index tab. |
| The index is falling behind | The last completed cycle was more than 2 minutes ago. | Usually clears on its own. If the delay keeps growing, check the Index tab. |
| The index has stopped updating | The last completed cycle was more than 15 minutes ago; results are stale by at least that much. | Check Last error on the Index tab on the leader. A stopped leader, a stopped PostgreSQL service or an SBN Data Server login failure all cause this. |
| The indexer reported an error | The last indexing cycle failed. The message is shown. | The Logs tab has the context and the service log file has the full detail. The warning clears after the next successful cycle. |
| The leader is not responding | In a farm, the node that runs indexing has stopped sending heartbeats, so nothing is being indexed. | Check the leader server, or use Request leadership on the Index tab to move indexing to this node. |
| This node is a follower | Information only: another node runs indexing and this node serves searches. | No action needed. |
| Insights history is not being saved | Charts work, but their history is lost on restart. | Usually low disk space; free space on the drive that holds SBN-Search. |
| New API keys are waiting to be collected | An upgrade replaced old licenses with API keys; callers using the old credential are refused. | Open the file the warning names, paste each key into the matching caller, then delete the file. |
| A caller has no working API key | A license could not be converted during an upgrade; that caller is refused. | Create an API key with the same name, the Search capability and the same dealer scope, and paste it into the caller. |
The Dashboard does not open
- Check the service is running:
Get-Service sbn-search-*on Windows,systemctl status sbn-search-default-dashboardon Linux. - If it is stopped, start it (
Start-Service sbn-search-default-dashboard, orsudo systemctl start sbn-search-default-dashboard) and read the newest log file if it stops again. See Where the logs are. - Use
https://, nothttp://, and the port chosen during installation (default 9095). - On Windows, the firewall rule created by the installer admits the local subnet only. To reach the Dashboard from another network, re-run the installer with
-FirewallScope Anyor add a rule for the port.
Certificate warnings
The installer creates a self-signed certificate, so browsers warn the first time you open the Dashboard. Accept the warning, or re-run the installer with your own certificate (-PfxPath <file> -PfxPassword <password> on Windows). APIEngine accepts the self-signed certificate.
Signing in to the Dashboard
- The user name is always
admin. The password is the one entered during installation. - "This installation has no dashboard password configured" - re-run the installer on the server to set it. It cannot be set from the sign-in page.
- To change the password, use Account > Account & Security.
APIEngine cannot reach SBN-Search
On the APIEngine server, open APIEngine Settings > Search (sbn-search) and press Test Connection. The test must be run from a browser on the APIEngine server itself.
| Result | What to do |
|---|---|
| No endpoint configured | Add the SBN-Search address and API key, then save. |
| Could not reach the address, or timed out | Check the address and port, that the SBN-Search service is running, and that the firewall on the SBN-Search server admits the APIEngine server. |
| Returned an HTTP error, or its database is unreachable | SBN-Search is running but not healthy. Check its Dashboard tab. |
| Reachable, but no token is set | Paste the API key into the endpoint's token field. |
| The token was rejected (HTTP 401) | The key is wrong, disabled, deleted or rotated. Create or rotate a key on the API Keys tab and paste the new value. |
| Token authenticated but forbidden (HTTP 403) | The key lacks the Search capability. Edit it on the API Keys tab. |
When SBN-Search is disabled in the APIEngine settings, APIEngine performs no installation searches. See Connecting APIEngine to SBN-Search.
Searches return nothing or too little
- Check the Dashboard tab for "The search index is empty" or an indexing warning.
- Results are limited to the acting user's dealers. On the Search tab, enter the user's s#us or user id to see exactly what that user gets.
- An API key scoped to Only selected dealers excludes every other dealer.
- A very broad search term returns a "refine your search" notice instead of results. See Throttling on the Dashboard page.
Installer exit codes
The installer prints the reason and writes install-<date>-<time>.log into a logs folder beside the install script.
| Code | Meaning |
|---|---|
| 0 | Success. |
| 1 | The package is incomplete. Download and extract it again. |
| 2 | Unsupported host, or the PostgreSQL install was declined. |
| 3 | Not run as administrator (Windows) or root (Linux). |
| 4 | Not enough free disk space. |
| 5 | The Dashboard port is already in use by another program. Free the port or choose another. |
| 6 | PostgreSQL is unreachable or its administrator login failed. |
| 7 | PostgreSQL is older than version 13. |
| 8 | PostgreSQL did not start listening on its port. |
| 9 | The PostgreSQL command-line tools were not found. |
| 10 | The answer file is missing or unreadable. |
| 11 | Invalid options, for example the no-prompt upgrade option on a server with no existing installation. The message names the problem. |
| 12 | After installing, the running service did not report the package's version. Check the service and its log. |
| 13 | A required prerequisite (the .NET 8 runtime or PostgreSQL) could not be installed. |
| 14 | A file or service could not be replaced because it is still in use. Stop the process holding it, or restart the server, and run again. |
| 20 | The post-install self-check failed. The installer lists which check. |
For PostgreSQL problems (codes 6 to 9 and 13), see PostgreSQL troubleshooting.
Uninstaller exit codes
| Code | Meaning |
|---|---|
| 0 | Success. |
| 2 | Unsupported host. |
| 3 | Not run as administrator or root. |
| 11 | The confirmation was skipped without naming the instance. Add -MainName (Linux --main-name). |
| 14 | The service did not stop. Restart the server and run again. |
| 20 | Something asked for is still present after the run. The log names it. |
Where the logs are
| What | Windows | Linux |
|---|---|---|
| Service log (one file per day, 14 days kept) | C:\Innovative\sbn-search\log\<yyyy-MM-dd>_SBNSearchDashboard.log | /opt/innovative/sbn-search/log/ |
| Warnings and errors | Windows Application event log, source sbn-search | Service start and stop messages: journalctl -u sbn-search-default-dashboard |
| Installer and uninstaller | logs\install-<date>-<time>.log and logs\uninstall-<date>-<time>.log in the package folder, beside the script | logs/install-<date>-<time>.log and logs/uninstall-<date>-<time>.log beside the script |
If SBN-Search was installed to a different folder, the logs are in its log folder. An installation upgraded from an earlier package keeps the log folder it already had. The Dashboard's Logs tab shows recent lines live when the Innovative NATS service is present.