master
yaml 300 lines 10.6 KB
Raw
1 plugin_name: go.d.plugin
2 modules:
3 - meta:
4 id: collector-go.d.plugin-docker_engine
5 plugin_name: go.d.plugin
6 module_name: docker_engine
7 alternative_monitored_instances: []
8 monitored_instance:
9 name: Docker Engine
10 link: https://docs.docker.com/engine/
11 categories:
12 - data-collection.containers-and-vms
13 icon_filename: docker.svg
14 related_resources:
15 integrations:
16 list: []
17 info_provided_to_referring_integrations:
18 description: ""
19 keywords:
20 - docker
21 - container
22 overview:
23 data_collection:
24 metrics_description: |
25 This collector monitors the activity and health of Docker Engine and Docker Swarm.
26 method_description: |
27 The [built-in](https://docs.docker.com/config/daemon/prometheus/) Prometheus exporter is used to get the metrics.
28 supported_platforms:
29 include: []
30 exclude: []
31 multi_instance: true
32 additional_permissions:
33 description: ""
34 default_behavior:
35 auto_detection:
36 description: |
37 It discovers instances running on localhost by attempting to connect to a known Docker TCP socket: `http://127.0.0.1:9323/metrics`.
38 limits:
39 description: ""
40 performance_impact:
41 description: ""
42 setup:
43 prerequisites:
44 list:
45 - title: Enable built-in Prometheus exporter
46 description: |
47 To enable built-in Prometheus exporter, follow the [official documentation](https://docs.docker.com/config/daemon/prometheus/#configure-docker).
48 configuration:
49 file:
50 name: go.d/docker_engine.conf
51 options:
52 description: |
53 The following options can be defined globally: update_every, autodetection_retry.
54 folding:
55 title: Config options
56 enabled: true
57 list:
58 - name: update_every
59 description: Data collection interval (seconds).
60 default_value: 1
61 required: false
62 group: Collection
63 - name: autodetection_retry
64 description: Autodetection retry interval (seconds). Set 0 to disable.
65 default_value: 0
66 required: false
67 group: Collection
68
69 - name: url
70 description: Target endpoint URL.
71 default_value: http://127.0.0.1:9323/metrics
72 required: true
73 group: Target
74 - name: timeout
75 description: HTTP request timeout (seconds).
76 default_value: 1
77 required: false
78 group: Target
79
80 - name: username
81 description: Username for Basic HTTP authentication.
82 default_value: ""
83 required: false
84 group: HTTP Auth
85 - name: password
86 description: Password for Basic HTTP authentication.
87 default_value: ""
88 required: false
89 group: HTTP Auth
90 - name: bearer_token_file
91 description: "Path to a file containing a bearer token (used for `Authorization: Bearer`)."
92 default_value: ""
93 required: false
94 group: HTTP Auth
95
96 - name: tls_skip_verify
97 description: Skip TLS certificate and hostname verification (insecure).
98 default_value: no
99 required: false
100 group: TLS
101 - name: tls_ca
102 description: Path to CA bundle used to validate the server certificate.
103 default_value: ""
104 required: false
105 group: TLS
106 - name: tls_cert
107 description: Path to client TLS certificate (for mTLS).
108 default_value: ""
109 required: false
110 group: TLS
111 - name: tls_key
112 description: Path to client TLS private key (for mTLS).
113 default_value: ""
114 required: false
115 group: TLS
116
117 - name: proxy_url
118 description: HTTP proxy URL.
119 default_value: ""
120 required: false
121 group: Proxy
122 - name: proxy_username
123 description: Username for proxy Basic HTTP authentication.
124 default_value: ""
125 required: false
126 group: Proxy
127 - name: proxy_password
128 description: Password for proxy Basic HTTP authentication.
129 default_value: ""
130 required: false
131 group: Proxy
132
133 - name: method
134 description: HTTP method to use.
135 default_value: "GET"
136 required: false
137 group: Request
138 - name: body
139 description: Request body (e.g., for POST/PUT).
140 default_value: ""
141 required: false
142 group: Request
143 - name: headers
144 description: "Additional HTTP headers (one per line as key: value)."
145 default_value: ""
146 required: false
147 group: Request
148 - name: not_follow_redirects
149 description: Do not follow HTTP redirects.
150 default_value: no
151 required: false
152 group: Request
153 - name: force_http2
154 description: Force HTTP/2 (including h2c over TCP).
155 default_value: no
156 required: false
157 group: Request
158
159 - name: vnode
160 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).
161 default_value: ""
162 required: false
163 group: Virtual Node
164 examples:
165 folding:
166 title: Config
167 enabled: true
168 list:
169 - name: Basic
170 description: A basic example configuration.
171 folding:
172 enabled: false
173 config: |
174 jobs:
175 - name: local
176 url: http://127.0.0.1:9323/metrics
177 - name: HTTP authentication
178 description: Basic HTTP authentication.
179 config: |
180 jobs:
181 - name: local
182 url: http://127.0.0.1:9323/metrics
183 username: username
184 password: password
185 - name: HTTPS with self-signed certificate
186 description: Configuration with enabled HTTPS and self-signed certificate.
187 config: |
188 jobs:
189 - name: local
190 url: http://127.0.0.1:9323/metrics
191 tls_skip_verify: yes
192 - name: Multi-instance
193 description: |
194 > **Note**: When you define multiple jobs, their names must be unique.
195
196 Collecting metrics from local and remote instances.
197 config: |
198 jobs:
199 - name: local
200 url: http://127.0.0.1:9323/metrics
201
202 - name: remote
203 url: http://192.0.2.1:9323/metrics
204 troubleshooting:
205 problems:
206 list: []
207 alerts: []
208 metrics:
209 folding:
210 title: Metrics
211 enabled: false
212 description: ""
213 availability: []
214 scopes:
215 - name: global
216 description: These metrics refer to the entire monitored application.
217 labels: []
218 metrics:
219 - name: docker_engine.engine_daemon_container_actions
220 description: Container Actions
221 unit: actions/s
222 chart_type: stacked
223 dimensions:
224 - name: changes
225 - name: commit
226 - name: create
227 - name: delete
228 - name: start
229 - name: docker_engine.engine_daemon_container_states_containers
230 description: Containers In Various States
231 unit: containers
232 chart_type: stacked
233 dimensions:
234 - name: running
235 - name: paused
236 - name: stopped
237 - name: docker_engine.builder_builds_failed_total
238 description: Builder Builds Fails By Reason
239 unit: fails/s
240 chart_type: stacked
241 dimensions:
242 - name: build_canceled
243 - name: build_target_not_reachable_error
244 - name: command_not_supported_error
245 - name: dockerfile_empty_error
246 - name: dockerfile_syntax_error
247 - name: error_processing_commands_error
248 - name: missing_onbuild_arguments_error
249 - name: unknown_instruction_error
250 - name: docker_engine.engine_daemon_health_checks_failed_total
251 description: Health Checks
252 unit: events/s
253 chart_type: line
254 dimensions:
255 - name: fails
256 - name: docker_engine.swarm_manager_leader
257 description: Swarm Manager Leader
258 unit: bool
259 chart_type: line
260 dimensions:
261 - name: is_leader
262 - name: docker_engine.swarm_manager_object_store
263 description: Swarm Manager Object Store
264 unit: objects
265 chart_type: stacked
266 dimensions:
267 - name: nodes
268 - name: services
269 - name: tasks
270 - name: networks
271 - name: secrets
272 - name: configs
273 - name: docker_engine.swarm_manager_nodes_per_state
274 description: Swarm Manager Nodes Per State
275 unit: nodes
276 chart_type: stacked
277 dimensions:
278 - name: ready
279 - name: down
280 - name: unknown
281 - name: disconnected
282 - name: docker_engine.swarm_manager_tasks_per_state
283 description: Swarm Manager Tasks Per State
284 unit: tasks
285 chart_type: stacked
286 dimensions:
287 - name: running
288 - name: failed
289 - name: ready
290 - name: rejected
291 - name: starting
292 - name: shutdown
293 - name: new
294 - name: orphaned
295 - name: preparing
296 - name: pending
297 - name: complete
298 - name: remove
299 - name: accepted
300 - name: assigned