---
name: "searchmonitor"
section: "8"
platform: "linux"
package: "swish++"
version: "5.7-3"
release: "Debian 3.0 (Woody)"
platforms: ["linux"]
url: "https://new.carta.tech/searchmonitor"
---

# searchmonitor(8)

SWISH++ search daemon monitor

## NAME

searchmonitor - SWISH++ search daemon monitor

## SYNOPSIS

**searchmonitor** \[ **-c** *conf\_file* \] \[ **-s** *search\_path* \]

## DESCRIPTION

**searchmonitor** is a process monitor for **search**(1) when it is running as a daemon. If the process exits because of a condition that restarting might cure, it will automatically be restarted.

**searchmonitor** is typcially called from a system start script such as [**searchd**(8)](/searchd/8.md) (for SysV-like systems) or `rc.local` (for BSD-like systems).

### Restartable Conditions

The following conditions will cause a restart:

- •

  A create, bind, or listen to a TCP or Unix domain socket fails.

- •

  A select or an accept on a socket fails.

- •

  Creating or detaching a thread fails.

- •

  Initializing a thread mutex or condition fails.

- •

  Any unaccounted-for exit status.

Restartable conditions are logged via [**syslogd**(8)](/syslogd/8.md) at the `ERR` level. There is a 5-second sleep before the process is restarted to prevent tight loops.

### Unrestartable Conditions

The following conditions will *not* cause a restart:

- •

  Error in configuration file.

- •

  Error in command-line.

- •

  Reading the index file fails.

- •

  Writing the PID file fails.

- •

  Deleting an old Unix domain socket file fails.

- •

  Changing directory to `/` fails.

- •

  The user or group the process is attempting to change its user and group ID to does not exist.

- •

  The process received a USR2 signal in response to a manual shutdown request.

With the exception of USR2, unrestartable conditions are logged via [**syslogd**(8)](/syslogd/8.md) at the `ALERT` level.

## OPTIONS

-

  - **-c***conf\_file*

  The name of the configuration file, *f*, to use. If none is given, `swish++.conf` is tried both in the current directory and in `/etc`.

- **-s***search\_path*

  The full path to the location of **search**(1). (Default is whereever it was installed. The default for that is `/usr/local/bin/search`.)

## FILES

- `swish++.conf`

  default configuration file

- `/usr/local/bin/search`

  Default location for **search**(1)

## SEE ALSO

**search**(1), [**swish++.conf**(4)](/swish++.conf/4.md), [**searchd**(8)](/searchd/8.md), [**syslogd**(8)](/syslogd/8.md)

## AUTHOR

Paul J. Lucas \<*pauljlucas@mac.com*\>
