{% assign m = site.data.monitors | sort: 'name' %}
The types of monitor available are:
<ul>
{% for monitor in m %}
<li><a href="#{{monitor.name}}">{{monitor.name}}</a>: {{monitor.oneline}}</li>
{% endfor %}
</ul>

All monitor types share the following configuration options:

| setting | description | required | default|
|---|---|---|---|
| type| One of the types from the above list | yes | |
| runon| A hostname (as returned from Python’s `socket.gethostname()`) on which the monitor should run. All other hosts will ignore this monitor completely. If unset (default) all hosts will run the monitor. | no | |
| depend| A comma-separated list of other monitors on which this one depends. If one of the dependencies fails (or is skipped), this monitor will also skip. A skip does not trigger an alert. | no | |
| tolerance| The number of times a monitor can fail before it’s actually considered failed (and generates an alert). Handy for things which intermittently fail to poll (the host monitor is guilty of this). This also interacts with the limit option on alerters. | no | 1 (i.e. on first failure) |
| urgent| If this monitor is urgent or not. Non-urgent monitors cannot trigger urgent alerters (e.g. the SMS alerter). Set to 0 to make a monitor non-urgent. | no | 1 |
| gap| The number of seconds gap between polls for this monitor. Setting this lower than the global interval will have no effect. Use it to make a monitor poll only once an hour, for example. | no | 0 |
| remote_alert| This monitor wants a remote host to handle alerting instead of the local host. Set to 1 to enable. This is a good candidate for putting in defaults if you want to use remote alerting for all your monitors. | no | 0 |
| recover_command| A command to execute once when this monitor fails. It could, for example, restart a service if an HTTP check fails. | no | |
| recovered_command| A command to execute once when this monitor succeeds the first time after being failed. | no | |
| group | The group the monitor belongs to. Alerters and Loggers will only fire for monitors which appear in their groups. | no | `default` |
| notify | If the monitor should alert at all | no | 1 |
| failure_doc | Information to include in alerts on failure (e.g. a URL to a runbook) | no | |
| gps | comma-separated latitude, longitude of this morning, for the HTML logger's map | no | |
{% for monitor in m %}
<a name="{{monitor.name}}"></a>

## {{monitor.name}}
{{monitor.oneline}}

{% if monitor.params %}
<table>
<tr>
<th>setting</th>
<th>description</th>
<th>required</th>
<th>default</th>
</tr>
{% for param in monitor.params %}
<tr>
<td>{{param.name}}</td>
<td>{{param.desc | markdownify}}</td>
<td>{{param.required}}</td>
<td>{% if param.default != nil %}{{param.default | markdownify}}{% endif %}</td>
</tr>
{% endfor %}
</table>
{% else %}
This monitor has no additional parameters.
{% endif %}
{{monitor.notes}}

{% endfor %}
