master
json 263 lines 7.53 KB
Raw
1 {
2 "jsonSchema": {
3 "$schema": "http://json-schema.org/draft-07/schema#",
4 "title": "Couchbase collector configuration.",
5 "type": "object",
6 "properties": {
7 "update_every": {
8 "title": "Update every",
9 "description": "Data collection interval, measured in seconds.",
10 "type": "integer",
11 "minimum": 1,
12 "default": 5
13 },
14 "autodetection_retry": {
15 "title": "Detection retry",
16 "description": "Recheck interval in seconds. Zero means no recheck will be scheduled.",
17 "type": "integer",
18 "minimum": 0,
19 "default": 60
20 },
21 "url": {
22 "title": "URL",
23 "description": "The URL of the Couchbase REST API.",
24 "type": "string",
25 "default": "http://127.0.0.1:8091",
26 "format": "uri"
27 },
28 "query_url": {
29 "title": "Query URL",
30 "description": "Optional. The URL of the Couchbase Query (N1QL) service. If not set, defaults to the same host as URL on port 8093.",
31 "type": "string",
32 "format": "uri"
33 },
34 "timeout": {
35 "title": "Timeout",
36 "description": "The timeout in seconds for the HTTP request.",
37 "type": "number",
38 "minimum": 0.5,
39 "default": 1
40 },
41 "functions": {
42 "title": "Functions",
43 "description": "Configuration for Netdata functions exposed by this collector.",
44 "type": "object",
45 "properties": {
46 "top_queries": {
47 "title": "Top Queries",
48 "description": "Configuration for the top-queries function.",
49 "type": "object",
50 "properties": {
51 "disabled": {
52 "title": "Disabled",
53 "description": "Disable the top-queries function.",
54 "type": "boolean",
55 "default": false
56 },
57 "timeout": {
58 "title": "Timeout",
59 "description": "Query timeout in seconds. Set to 0 to use the collector's timeout.",
60 "type": "number",
61 "minimum": 0
62 },
63 "limit": {
64 "title": "Limit",
65 "description": "Maximum number of queries to return. Set to 0 to use the default (500).",
66 "type": "integer",
67 "minimum": 0,
68 "maximum": 5000,
69 "default": 500
70 }
71 }
72 }
73 }
74 },
75 "not_follow_redirects": {
76 "title": "Not follow redirects",
77 "description": "If set, the client will not follow HTTP redirects automatically.",
78 "type": "boolean"
79 },
80 "vnode": {
81 "title": "Vnode",
82 "description": "Associates this data collection job with a [Virtual Node](https://learn.netdata.cloud/docs/netdata-agent/configuration/organize-systems-metrics-and-alerts#virtual-nodes).",
83 "type": "string"
84 },
85 "username": {
86 "title": "Username",
87 "description": "The username for basic authentication.",
88 "type": "string",
89 "sensitive": true
90 },
91 "password": {
92 "title": "Password",
93 "description": "The password for basic authentication.",
94 "type": "string",
95 "sensitive": true
96 },
97 "bearer_token_file": {
98 "title": "Bearer Token File",
99 "description": "Path to a file containing a bearer token for HTTP authentication.",
100 "type": "string"
101 },
102 "force_http2": {
103 "title": "Force HTTP2",
104 "description": "If set, forces the use of HTTP/2 protocol for all requests, even over plain TCP (h2c).",
105 "type": "boolean"
106 },
107 "proxy_url": {
108 "title": "Proxy URL",
109 "description": "The URL of the proxy server.",
110 "type": "string"
111 },
112 "proxy_username": {
113 "title": "Proxy username",
114 "description": "The username for proxy authentication.",
115 "type": "string",
116 "sensitive": true
117 },
118 "proxy_password": {
119 "title": "Proxy password",
120 "description": "The password for proxy authentication.",
121 "type": "string",
122 "sensitive": true
123 },
124 "headers": {
125 "title": "Headers",
126 "description": "Additional HTTP headers to include in the request.",
127 "type": [
128 "object",
129 "null"
130 ],
131 "additionalProperties": {
132 "type": "string"
133 }
134 },
135 "tls_skip_verify": {
136 "title": "Skip TLS verification",
137 "description": "If set, TLS certificate verification will be skipped.",
138 "type": "boolean"
139 },
140 "tls_ca": {
141 "title": "TLS CA",
142 "description": "The path to the CA certificate file for TLS verification.",
143 "type": "string",
144 "pattern": "^$|^/"
145 },
146 "tls_cert": {
147 "title": "TLS certificate",
148 "description": "The path to the client certificate file for TLS authentication.",
149 "type": "string",
150 "pattern": "^$|^/"
151 },
152 "tls_key": {
153 "title": "TLS key",
154 "description": "The path to the client key file for TLS authentication.",
155 "type": "string",
156 "pattern": "^$|^/"
157 },
158 "body": {
159 "title": "Body",
160 "type": "string"
161 },
162 "method": {
163 "title": "Method",
164 "type": "string"
165 }
166 },
167 "required": [
168 "url"
169 ]
170 },
171 "uiSchema": {
172 "ui:flavour": "tabs",
173 "ui:options": {
174 "tabs": [
175 {
176 "title": "Base",
177 "fields": [
178 "update_every",
179 "autodetection_retry",
180 "url",
181 "query_url",
182 "timeout",
183 "not_follow_redirects",
184 "vnode"
185 ]
186 },
187 {
188 "title": "Auth",
189 "fields": [
190 "username",
191 "password"
192 ]
193 },
194 {
195 "title": "TLS",
196 "fields": [
197 "tls_skip_verify",
198 "tls_ca",
199 "tls_cert",
200 "tls_key"
201 ]
202 },
203 {
204 "title": "Proxy",
205 "fields": [
206 "proxy_url",
207 "proxy_username",
208 "proxy_password"
209 ]
210 },
211 {
212 "title": "Headers",
213 "fields": [
214 "headers"
215 ]
216 },
217 {
218 "title": "Functions",
219 "fields": [
220 "functions"
221 ]
222 }
223 ]
224 },
225 "uiOptions": {
226 "fullPage": true
227 },
228 "body": {
229 "ui:widget": "hidden"
230 },
231 "method": {
232 "ui:widget": "hidden"
233 },
234 "bearer_token_file": {
235 "ui:help": "The token is sent in the Authorization header as `Bearer <token>`. **Takes priority over basic authentication**.",
236 "ui:widget": "hidden"
237 },
238 "force_http2": {
239 "ui:widget": "hidden"
240 },
241 "autodetection_retry": {
242 "ui:help": "This option determines how frequently (in seconds) Netdata will retry data collection jobs that failed initially, with the value of 60 meaning it retries to start data collection jobs every 60 seconds, while setting it to 0 disables this retry mechanism entirely."
243 },
244 "vnode": {
245 "ui:placeholder": "To use this option, first create a Virtual Node and then reference its name here."
246 },
247 "timeout": {
248 "ui:help": "Accepts decimals for precise control (e.g., type 1.5 for 1.5 seconds)."
249 },
250 "username": {
251 "ui:widget": "password"
252 },
253 "proxy_username": {
254 "ui:widget": "password"
255 },
256 "password": {
257 "ui:widget": "password"
258 },
259 "proxy_password": {
260 "ui:widget": "password"
261 }
262 }
263 }