summaryrefslogtreecommitdiffstats
path: root/src/go/collectors/go.d.plugin/modules/portcheck/config_schema.json
blob: 27c0185606c2d45de722cb8d96e825bde80fe85e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
{
  "jsonSchema": {
    "$schema": "http://json-schema.org/draft-07/schema#",
    "title": "Portcheck collector configuration.",
    "description": "Collector for monitoring TCP service availability and response time.",
    "type": "object",
    "properties": {
      "update_every": {
        "title": "Update every",
        "description": "Data collection interval, measured in seconds.",
        "type": "integer",
        "minimum": 1,
        "default": 5
      },
      "timeout": {
        "title": "Timeout",
        "description": "Timeout for establishing a connection, including domain name resolution, in seconds.",
        "type": "number",
        "minimum": 0.5,
        "default": 2
      },
      "host": {
        "title": "Network host",
        "description": "The IP address or domain name of the network host.",
        "type": "string"
      },
      "ports": {
        "title": "Ports",
        "description": "A list of ports to monitor for TCP service availability and response time.",
        "type": [
          "array",
          "null"
        ],
        "items": {
          "title": "Port",
          "type": "integer",
          "minimum": 1
        },
        "minItems": 1,
        "uniqueItems": true
      }
    },
    "required": [
      "host",
      "ports"
    ],
    "additionalProperties": false
  },
  "uiSchema": {
    "uiOptions": {
      "fullPage": true
    },
    "timeout": {
      "ui:help": "Accepts decimals for precise control (e.g., type 1.5 for 1.5 seconds)."
    },
    "host": {
      "ui:placeholder": "127.0.0.1"
    },
    "ports": {
      "ui:listFlavour": "list"
    }
  }
}