summaryrefslogtreecommitdiffstats
path: root/src/go/collectors/go.d.plugin/modules/smartctl/config_schema.json
blob: 273899cd98b68a93da51f6ccfff347252f9fafcf (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
64
65
66
67
{
  "jsonSchema": {
    "$schema": "http://json-schema.org/draft-07/schema#",
    "title": "Smartctl collector configuration.",
    "type": "object",
    "properties": {
      "update_every": {
        "title": "Update every",
        "description": "Interval for updating Netdata charts, measured in seconds. Collector might use cached data if less than **Devices poll interval**.",
        "type": "integer",
        "minimum": 1,
        "default": 10
      },
      "timeout": {
        "title": "Timeout",
        "description": "Timeout for executing the `smartctl` binary, specified in seconds.",
        "type": "number",
        "minimum": 0.5,
        "default": 5
      },
      "scan_every": {
        "title": "Scan interval",
        "description": "Interval for discovering new devices using `smartctl --scan`, measured in seconds.",
        "type": "number",
        "minimum": 1,
        "default": 900
      },
      "poll_devices_every": {
        "title": "Devices poll interval",
        "description": "Interval for gathering data for every device, measured in seconds. Data is cached for this interval.",
        "type": "number",
        "minimum": 1,
        "default": 300
      },
      "no_check_power_mode": {
        "title": "No check power mode",
        "description": "ATA only. Skip data collection when the device is in a low-power mode. Prevents unnecessary disk spin-up.",
        "type": "string",
        "enum": [
          "standby",
          "never",
          "sleep",
          "idle"
        ],
        "default": "standby"
      }
    },
    "additionalProperties": false,
    "patternProperties": {
      "^name$": {}
    }
  },
  "uiSchema": {
    "uiOptions": {
      "fullPage": true
    },
    "timeout": {
      "ui:help": "Accepts decimals for precise control (e.g., type 1.5 for 1.5 seconds)."
    },
    "no_check_power_mode": {
      "ui:widget": "radio",
      "ui:options": {
        "inline": true
      }
    }
  }
}