master
yaml 277 lines 9.4 KB
Raw
1 plugin_name: go.d.plugin
2 modules:
3 - meta:
4 id: collector-go.d.plugin-powerdns_recursor
5 plugin_name: go.d.plugin
6 module_name: powerdns_recursor
7 monitored_instance:
8 name: PowerDNS Recursor
9 link: https://doc.powerdns.com/recursor/
10 icon_filename: powerdns.svg
11 categories:
12 - data-collection.networking
13 keywords:
14 - powerdns
15 - dns
16 related_resources:
17 integrations:
18 list: []
19 info_provided_to_referring_integrations:
20 description: ""
21 overview:
22 data_collection:
23 metrics_description: |
24 This collector monitors PowerDNS Recursor instances.
25
26 It collects metrics from [the internal webserver](https://doc.powerdns.com/recursor/http-api/index.html#built-in-webserver-and-http-api).
27
28 Used endpoints:
29
30 - [`/api/v1/servers/localhost/statistics`](https://doc.powerdns.com/recursor/common/api/endpoint-statistics.html)
31 method_description: ""
32 supported_platforms:
33 include: []
34 exclude: []
35 multi_instance: true
36 additional_permissions:
37 description: ""
38 default_behavior:
39 auto_detection:
40 description: ""
41 limits:
42 description: ""
43 performance_impact:
44 description: ""
45 setup:
46 prerequisites:
47 list:
48 - title: Enable webserver
49 description: |
50 Follow [webserver](https://doc.powerdns.com/recursor/http-api/index.html#webserver) documentation.
51 - title: Enable HTTP API
52 description: |
53 Follow [HTTP API](https://doc.powerdns.com/recursor/http-api/index.html#enabling-the-api) documentation.
54 configuration:
55 file:
56 name: go.d/powerdns_recursor.conf
57 options:
58 description: |
59 The following options can be defined globally: update_every, autodetection_retry.
60 folding:
61 title: Config options
62 enabled: true
63 list:
64 - name: update_every
65 description: Data collection interval (seconds).
66 default_value: 1
67 required: false
68 group: Collection
69 - name: autodetection_retry
70 description: Autodetection retry interval (seconds). Set 0 to disable.
71 default_value: 0
72 required: false
73 group: Collection
74
75 - name: url
76 description: Target endpoint URL.
77 default_value: http://127.0.0.1:8081
78 required: true
79 group: Target
80 - name: timeout
81 description: HTTP request timeout (seconds).
82 default_value: 1
83 required: false
84 group: Target
85
86 - name: username
87 description: Username for Basic HTTP authentication.
88 default_value: ""
89 required: false
90 group: HTTP Auth
91 - name: password
92 description: Password for Basic HTTP authentication.
93 default_value: ""
94 required: false
95 group: HTTP Auth
96 - name: bearer_token_file
97 description: "Path to a file containing a bearer token (used for `Authorization: Bearer`)."
98 default_value: ""
99 required: false
100 group: HTTP Auth
101
102 - name: tls_skip_verify
103 description: Skip TLS certificate and hostname verification (insecure).
104 default_value: no
105 required: false
106 group: TLS
107 - name: tls_ca
108 description: Path to CA bundle used to validate the server certificate.
109 default_value: ""
110 required: false
111 group: TLS
112 - name: tls_cert
113 description: Path to client TLS certificate (for mTLS).
114 default_value: ""
115 required: false
116 group: TLS
117 - name: tls_key
118 description: Path to client TLS private key (for mTLS).
119 default_value: ""
120 required: false
121 group: TLS
122
123 - name: proxy_url
124 description: HTTP proxy URL.
125 default_value: ""
126 required: false
127 group: Proxy
128 - name: proxy_username
129 description: Username for proxy Basic HTTP authentication.
130 default_value: ""
131 required: false
132 group: Proxy
133 - name: proxy_password
134 description: Password for proxy Basic HTTP authentication.
135 default_value: ""
136 required: false
137 group: Proxy
138
139 - name: method
140 description: HTTP method to use.
141 default_value: "GET"
142 required: false
143 group: Request
144 - name: body
145 description: Request body (e.g., for POST/PUT).
146 default_value: ""
147 required: false
148 group: Request
149 - name: headers
150 description: "Additional HTTP headers (one per line as key: value)."
151 default_value: ""
152 required: false
153 group: Request
154 - name: not_follow_redirects
155 description: Do not follow HTTP redirects.
156 default_value: no
157 required: false
158 group: Request
159 - name: force_http2
160 description: Force HTTP/2 (including h2c over TCP).
161 default_value: no
162 required: false
163 group: Request
164
165 - name: vnode
166 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).
167 default_value: ""
168 required: false
169 group: Virtual Node
170 examples:
171 folding:
172 title: Config
173 enabled: true
174 list:
175 - name: Basic
176 description: An example configuration.
177 config: |
178 jobs:
179 - name: local
180 url: http://127.0.0.1:8081
181 - name: HTTP authentication
182 description: Basic HTTP authentication.
183 config: |
184 jobs:
185 - name: local
186 url: http://127.0.0.1:8081
187 username: admin
188 password: password
189 - name: Multi-instance
190 description: |
191 > **Note**: When you define multiple jobs, their names must be unique.
192
193 Local and remote instances.
194 config: |
195 jobs:
196 - name: local
197 url: http://127.0.0.1:8081
198
199 - name: remote
200 url: http://203.0.113.0:8081
201 troubleshooting:
202 problems:
203 list: []
204 alerts: []
205 metrics:
206 folding:
207 title: Metrics
208 enabled: false
209 description: ""
210 availability: []
211 scopes:
212 - name: global
213 description: These metrics refer to the entire monitored application.
214 labels: []
215 metrics:
216 - name: powerdns_recursor.questions_in
217 description: Incoming questions
218 unit: questions/s
219 chart_type: line
220 dimensions:
221 - name: total
222 - name: tcp
223 - name: ipv6
224 - name: powerdns_recursor.questions_out
225 description: Outgoing questions
226 unit: questions/s
227 chart_type: line
228 dimensions:
229 - name: udp
230 - name: tcp
231 - name: ipv6
232 - name: throttled
233 - name: powerdns_recursor.answer_time
234 description: Queries answered within a time range
235 unit: queries/s
236 chart_type: line
237 dimensions:
238 - name: 0-1ms
239 - name: 1-10ms
240 - name: 10-100ms
241 - name: 100-1000ms
242 - name: slow
243 - name: powerdns_recursor.timeouts
244 description: Timeouts on outgoing UDP queries
245 unit: timeouts/s
246 chart_type: line
247 dimensions:
248 - name: total
249 - name: ipv4
250 - name: ipv6
251 - name: powerdns_recursor.drops
252 description: Drops
253 unit: drops/s
254 chart_type: line
255 dimensions:
256 - name: over-capacity-drops
257 - name: query-pipe-full-drops
258 - name: too-old-drops
259 - name: truncated-drops
260 - name: empty-queries
261 - name: powerdns_recursor.cache_usage
262 description: Cache Usage
263 unit: events/s
264 chart_type: line
265 dimensions:
266 - name: cache-hits
267 - name: cache-misses
268 - name: packet-cache-hits
269 - name: packet-cache-misses
270 - name: powerdns_recursor.cache_size
271 description: Cache Size
272 unit: entries
273 chart_type: line
274 dimensions:
275 - name: cache
276 - name: packet-cache
277 - name: negative-cache