> ## Documentation Index
> Fetch the complete documentation index at: https://docs.extractor.live/llms.txt
> Use this file to discover all available pages before exploring further.

# Network Monitor

> Monitors Remote host connectivity / availability with periodic requests

Monitors Remote host connectivity / availability with periodic requests

## Functionality

* Detector sends `type` requests and optionally parses response within specified timeout

* Url (Address) to monitor

* Request type: `GET`, `POST`, `PUT`, `HEAD`, `OPTIONS`, `PING`, `TCP`.

* PING: checks if host is reachable

* TCP: checks if port is reachable

* Cron interval. Refer to [Cron](https://docs.extractor.live/common-configurations#cron) for more details

* Scripts to execute to process response body.

Scripts are executed in the order they are specified. Refer to [Scripts](https://docs.extractor.live/common-configurations#condition-threshold) for more details.

Scripts execution result will be in `result` meta field.

* Request Body (applicable for `HTTP` requests)
* Request Headers
* Max redirects for HTTP request
* Optional `Authorization:` header. This header is added to the list of Headers
* Latency threshold (condition) in milliseconds to receive response.

Refer to [https://docs.extractor.live/](https://docs.extractor.live/) for threshold expression syntax).

Example: `>1000`

* Score condition if Scripts return score. If condition is not matched, Alert is not generated.

If `score` is empty, score is not verified. Refer to [Score](https://docs.extractor.live/common-configurations#condition-threshold) for more details

* Generate Alerts on Errors (in Script execution)
* Alert on every Error. If `unchecked`, only new unique Errors will be alerted and duplicates will be omitted
* Description template for the Alert description. Can use any meta field as placeholder (e.g. `{result}`)

## Configuration

* **Cron** (`cron`, default: `10 min`): Cron expression See [common configuration](/common-configurations#cron).
* **Url** (`url`, default: \`\`): Url to monitor
* **Request type** (`type`, default: `GET`): Request type
* **Request Body** (`body`, default: \`\`): Request Body
* **Headers** (`headers`, default: `None`): Request Headers
* **Max redirects** (`redirects`, default: `2`): Max redirects
* **Authorization header** (`auth`, default: \`\`): Authorization header
* **Scripts** (`script`, default: `[]`): Scripts to execute
* **Track Successful** (`track_ok`, default: `True`): Track Successful Responses as Alerts
* **Track Errors** (`track_err`, default: `True`): Track Errors as Alerts
* **Track Error (always)** (`err_always`, default: `True`): Always Alert on Error
* **Score** (`score`, default: \`\`): Score condition
* **Latency (msec)** (`latency`, default: `>1000`): Response latency threshold (msec)
* **Description** (`desc`, default: `{status} {err}`): Description
* **Severity** (`severity`, default: `-1`): Severity See [common configuration](/common-configurations#severity).

<Note>
  No specific network configuration required (Any network).
</Note>
