@cryptotaxi247 / netdata-1 / commits / c2bb10570

Python collector yaml updates (#15517)

update collector metadata for monit, spigotmc, hddtemp, nsd

Fotis Voutsas committed Jul 25, 2023 at 20:56 UTC c2bb105702320499179af3d5dd10b5636b33587d
5 files changed +706 -307
collectors/python.d.plugin/hddtemp/metadata.yaml
+119 -30
@@ -3,52 +3,141 @@ meta:
3 module_name: hddtemp
4 monitored_instance:
5 name: HDD temperature
6 - link: ''
6 + link: https://linux.die.net/man/8/hddtemp
7 categories:
8 - - data-collection.hardware-devices-and-sensors
9 - icon_filename: 'hard-drive.svg'
8 + - data-collection.hardware-devices-and-sensors
9 + icon_filename: "hard-drive.svg"
10 related_resources:
11 integrations:
12 list: []
13 info_provided_to_referring_integrations:
14 - description: ''
15 - keywords: []
14 + description: ""
15 + keywords:
16 + - hardware
17 + - hdd temperature
18 + - disk temperature
19 + - temperature
20 most_popular: false
21 overview:
22 data_collection:
19 - metrics_description: 'Monitor HDD temperature metrics for maintaining optimal hard drive health. Keep tabs on drive temperatures, read/write speeds, and error rates to ensure hard drive longevity.'
20 - method_description: ''
23 + metrics_description: |
24 + This collector monitors disk temperatures.
25 + method_description: |
26 + It uses the `hddtemp` daemon to gather the metrics.
27 supported_platforms:
22 - include: []
28 + include:
29 + - Linux
30 exclude: []
31 multi_instance: true
32 additional_permissions:
26 - description: ''
33 + description: ""
34 default_behavior:
35 auto_detection:
29 - description: ''
36 + description: By default, this collector will attempt to connect to the `hddtemp` daemon on `127.0.0.1:7634`
37 limits:
31 - description: ''
38 + description: ""
39 performance_impact:
33 - description: ''
40 + description: ""
41 setup:
42 prerequisites:
36 - list: []
43 + list:
44 + - title: Run `hddtemp` in daemon mode
45 + description: |
46 + You can execute `hddtemp` in TCP/IP daemon mode by using the `-d` argument.
47 +
48 + So running `hddtemp -d` would run the daemon, by default on port 7634.
49 configuration:
50 file:
39 - name: ''
40 - description: ''
51 + name: "python.d/hddtemp.conf"
52 options:
42 - description: ''
53 + description: |
54 + There are 2 sections:
55 +
56 + * Global variables
57 + * One or more JOBS that can define multiple different instances to monitor.
58 +
59 + The following options can be defined globally: priority, penalty, autodetection_retry, update_every, but can also be defined per JOB to override the global values.
60 +
61 + Additionally, the following collapsed table contains all the options that can be configured inside a JOB definition.
62 +
63 + Every configuration JOB starts with a `job_name` value which will appear in the dashboard, unless a `name` parameter is specified.
64 +
65 + By default this collector will try to autodetect disks (autodetection works only for disk which names start with "sd"). However this can be overridden by setting the option `disks` to an array of desired disks.
66 folding:
44 - title: ''
67 + title: "Config options"
68 enabled: true
46 - list: []
69 + list:
70 + - name: update_every
71 + description: Sets the default data collection frequency.
72 + default_value: 1
73 + required: false
74 + - name: priority
75 + description: Controls the order of charts at the netdata dashboard.
76 + default_value: 60000
77 + required: false
78 + - name: autodetection_retry
79 + description: Sets the job re-check interval in seconds.
80 + default_value: 0
81 + required: false
82 + - name: penalty
83 + description: Indicates whether to apply penalty to update_every in case of failures.
84 + default_value: yes
85 + required: false
86 + - name: name
87 + description: >
88 + Job name. This value will overwrite the `job_name` value. JOBS with the same name are mutually exclusive. Only one of them will be allowed running at any time. This allows autodetection to try several alternatives and pick the one that works.
89 + default_value: "local"
90 + required: false
91 + - name: devices
92 + description: Array of desired disks to detect, in case their name doesn't start with `sd`.
93 + default_value: ""
94 + required: false
95 + - name: host
96 + description: The IP or HOSTNAME to connect to.
97 + default_value: "localhost"
98 + required: true
99 + - name: port
100 + description: The port to connect to.
101 + default_value: 7634
102 + required: false
103 examples:
104 folding:
105 enabled: true
50 - title: ''
51 - list: []
106 + title: ""
107 + list:
108 + - name: Basic
109 + description: A basic example configuration.
110 + folding:
111 + enabled: false
112 + config: |
113 + localhost:
114 + name: 'local'
115 + host: '127.0.0.1'
116 + port: 7634
117 + - name: Custom disk names
118 + description: An example defining the disk names to detect.
119 + config: |
120 + localhost:
121 + name: 'local'
122 + host: '127.0.0.1'
123 + port: 7634
124 + devices:
125 + - customdisk1
126 + - customdisk2
127 + - name: Multi-instance
128 + description: |
129 + > **Note**: When you define multiple jobs, their names must be unique.
130 +
131 + Collecting metrics from local and remote instances.
132 + config: |
133 + localhost:
134 + name: 'local'
135 + host: '127.0.0.1'
136 + port: 7634
137 +
138 + remote_job:
139 + name : 'remote'
140 + host : 'http://192.0.2.1:2812'
141 troubleshooting:
142 problems:
143 list: []
@@ -60,13 +149,13 @@ metrics:
149 description: ""
150 availability: []
151 scopes:
63 - - name: global
64 - description: ""
65 - labels: []
66 - metrics:
67 - - name: hddtemp.temperatures
68 - description: Disk Temperatures
69 - unit: "Celsius"
70 - chart_type: line
71 - dimensions:
72 - - name: a dimension per disk
152 + - name: global
153 + description: "These metrics refer to the entire monitored application."
154 + labels: []
155 + metrics:
156 + - name: hddtemp.temperatures
157 + description: Disk Temperatures
158 + unit: "Celsius"
159 + chart_type: line
160 + dimensions:
161 + - name: a dimension per disk
collectors/python.d.plugin/monit/metadata.yaml
+171 -94
@@ -3,52 +3,129 @@ meta:
3 module_name: monit
4 monitored_instance:
5 name: Monit
6 - link: ''
6 + link: https://mmonit.com/monit/
7 categories:
8 - - data-collection.synthetic-checks
9 - icon_filename: 'monit.png'
8 + - data-collection.synthetic-checks
9 + icon_filename: "monit.png"
10 related_resources:
11 integrations:
12 list: []
13 info_provided_to_referring_integrations:
14 - description: ''
15 - keywords: []
14 + description: ""
15 + keywords:
16 + - monit
17 + - mmonit
18 + - supervision tool
19 + - monitrc
20 most_popular: false
21 overview:
22 data_collection:
19 - metrics_description: 'Monitor Monit performance for optimal system monitoring operations. Monitor system status, process health, and error rates to maintain system stability.'
20 - method_description: ''
23 + metrics_description: |
24 + This collector monitors Monit targets such as filesystems, directories, files, FIFO pipes and more.
25 + method_description: |
26 + It gathers data from Monit's XML interface.
27 supported_platforms:
28 include: []
29 exclude: []
30 multi_instance: true
31 additional_permissions:
26 - description: ''
32 + description: ""
33 default_behavior:
34 auto_detection:
29 - description: ''
35 + description: By default, this collector will attempt to connect to Monit at `http://localhost:2812`
36 limits:
31 - description: ''
37 + description: ""
38 performance_impact:
33 - description: ''
39 + description: ""
40 setup:
41 prerequisites:
42 list: []
43 configuration:
44 file:
39 - name: ''
40 - description: ''
45 + name: "python.d/monit.conf"
46 options:
42 - description: ''
47 + description: |
48 + There are 2 sections:
49 +
50 + * Global variables
51 + * One or more JOBS that can define multiple different instances to monitor.
52 +
53 + The following options can be defined globally: priority, penalty, autodetection_retry, update_every, but can also be defined per JOB to override the global values.
54 +
55 + Additionally, the following collapsed table contains all the options that can be configured inside a JOB definition.
56 +
57 + Every configuration JOB starts with a `job_name` value which will appear in the dashboard, unless a `name` parameter is specified.
58 folding:
44 - title: ''
59 + title: "Config options"
60 enabled: true
46 - list: []
61 + list:
62 + - name: update_every
63 + description: Sets the default data collection frequency.
64 + default_value: 1
65 + required: false
66 + - name: priority
67 + description: Controls the order of charts at the netdata dashboard.
68 + default_value: 60000
69 + required: false
70 + - name: autodetection_retry
71 + description: Sets the job re-check interval in seconds.
72 + default_value: 0
73 + required: false
74 + - name: penalty
75 + description: Indicates whether to apply penalty to update_every in case of failures.
76 + default_value: yes
77 + required: false
78 + - name: name
79 + description: >
80 + Job name. This value will overwrite the `job_name` value. JOBS with the same name are mutually exclusive. Only one of them will be allowed running at any time. This allows autodetection to try several alternatives and pick the one that works.
81 + default_value: "local"
82 + required: false
83 + - name: url
84 + description: The URL to fetch Monit's metrics.
85 + default_value: http://localhost:2812
86 + required: true
87 + - name: user
88 + description: Username in case the URL is password protected.
89 + default_value: ""
90 + required: false
91 + - name: pass
92 + description: Password in case the URL is password protected.
93 + default_value: ""
94 + required: false
95 examples:
96 folding:
97 enabled: true
50 - title: ''
51 - list: []
98 + title: "Config"
99 + list:
100 + - name: Basic
101 + description: A basic configuration example.
102 + folding:
103 + enabled: false
104 + config: |
105 + localhost:
106 + name : 'local'
107 + url : 'http://localhost:2812'
108 + - name: Basic Authentication
109 + description: Example using basic username and password in order to authenticate.
110 + config: |
111 + localhost:
112 + name : 'local'
113 + url : 'http://localhost:2812'
114 + user: 'foo'
115 + pass: 'bar'
116 + - name: Multi-instance
117 + description: |
118 + > **Note**: When you define multiple jobs, their names must be unique.
119 +
120 + Collecting metrics from local and remote instances.
121 + config: |
122 + localhost:
123 + name: 'local'
124 + url: 'http://localhost:2812'
125 +
126 + remote_job:
127 + name: 'remote'
128 + url: 'http://192.0.2.1:2812'
129 troubleshooting:
130 problems:
131 list: []
@@ -60,79 +137,79 @@ metrics:
137 description: ""
138 availability: []
139 scopes:
63 - - name: global
64 - description: ""
65 - labels: []
66 - metrics:
67 - - name: monit.filesystems
68 - description: Filesystems
69 - unit: "filesystems"
70 - chart_type: line
71 - dimensions:
72 - - name: a dimension per target
73 - - name: monit.directories
74 - description: Directories
75 - unit: "directories"
76 - chart_type: line
77 - dimensions:
78 - - name: a dimension per target
79 - - name: monit.files
80 - description: Files
81 - unit: "files"
82 - chart_type: line
83 - dimensions:
84 - - name: a dimension per target
85 - - name: monit.fifos
86 - description: Pipes (fifo)
87 - unit: "pipes"
88 - chart_type: line
89 - dimensions:
90 - - name: a dimension per target
91 - - name: monit.programs
92 - description: Programs statuses
93 - unit: "programs"
94 - chart_type: line
95 - dimensions:
96 - - name: a dimension per target
97 - - name: monit.services
98 - description: Processes statuses
99 - unit: "processes"
100 - chart_type: line
101 - dimensions:
102 - - name: a dimension per target
103 - - name: monit.process_uptime
104 - description: Processes uptime
105 - unit: "seconds"
106 - chart_type: line
107 - dimensions:
108 - - name: a dimension per target
109 - - name: monit.process_threads
110 - description: Processes threads
111 - unit: "threads"
112 - chart_type: line
113 - dimensions:
114 - - name: a dimension per target
115 - - name: monit.process_childrens
116 - description: Child processes
117 - unit: "children"
118 - chart_type: line
119 - dimensions:
120 - - name: a dimension per target
121 - - name: monit.hosts
122 - description: Hosts
123 - unit: "hosts"
124 - chart_type: line
125 - dimensions:
126 - - name: a dimension per target
127 - - name: monit.host_latency
128 - description: Hosts latency
129 - unit: "milliseconds"
130 - chart_type: line
131 - dimensions:
132 - - name: a dimension per target
133 - - name: monit.networks
134 - description: Network interfaces and addresses
135 - unit: "interfaces"
136 - chart_type: line
137 - dimensions:
138 - - name: a dimension per target
140 + - name: global
141 + description: "These metrics refer to the entire monitored application."
142 + labels: []
143 + metrics:
144 + - name: monit.filesystems
145 + description: Filesystems
146 + unit: "filesystems"
147 + chart_type: line
148 + dimensions:
149 + - name: a dimension per target
150 + - name: monit.directories
151 + description: Directories
152 + unit: "directories"
153 + chart_type: line
154 + dimensions:
155 + - name: a dimension per target
156 + - name: monit.files
157 + description: Files
158 + unit: "files"
159 + chart_type: line
160 + dimensions:
161 + - name: a dimension per target
162 + - name: monit.fifos
163 + description: Pipes (fifo)
164 + unit: "pipes"
165 + chart_type: line
166 + dimensions:
167 + - name: a dimension per target
168 + - name: monit.programs
169 + description: Programs statuses
170 + unit: "programs"
171 + chart_type: line
172 + dimensions:
173 + - name: a dimension per target
174 + - name: monit.services
175 + description: Processes statuses
176 + unit: "processes"
177 + chart_type: line
178 + dimensions:
179 + - name: a dimension per target
180 + - name: monit.process_uptime
181 + description: Processes uptime
182 + unit: "seconds"
183 + chart_type: line
184 + dimensions:
185 + - name: a dimension per target
186 + - name: monit.process_threads
187 + description: Processes threads
188 + unit: "threads"
189 + chart_type: line
190 + dimensions:
191 + - name: a dimension per target
192 + - name: monit.process_childrens
193 + description: Child processes
194 + unit: "children"
195 + chart_type: line
196 + dimensions:
197 + - name: a dimension per target
198 + - name: monit.hosts
199 + description: Hosts
200 + unit: "hosts"
201 + chart_type: line
202 + dimensions:
203 + - name: a dimension per target
204 + - name: monit.host_latency
205 + description: Hosts latency
206 + unit: "milliseconds"
207 + chart_type: line
208 + dimensions:
209 + - name: a dimension per target
210 + - name: monit.networks
211 + description: Network interfaces and addresses
212 + unit: "interfaces"
213 + chart_type: line
214 + dimensions:
215 + - name: a dimension per target
collectors/python.d.plugin/nsd/metadata.yaml
+155 -83
@@ -2,53 +2,125 @@ meta:
2 plugin_name: python.d.plugin
3 module_name: nsd
4 monitored_instance:
5 - name: NSD
6 - link: ''
5 + name: Name Server Daemon
6 + link: https://nsd.docs.nlnetlabs.nl/en/latest/#
7 categories:
8 - - data-collection.dns-and-dhcp-servers
9 - icon_filename: 'nsd.svg'
8 + - data-collection.dns-and-dhcp-servers
9 + icon_filename: "nsd.svg"
10 related_resources:
11 integrations:
12 list: []
13 info_provided_to_referring_integrations:
14 - description: ''
15 - keywords: []
14 + description: ""
15 + keywords:
16 + - nsd
17 + - name server daemon
18 most_popular: false
19 overview:
20 data_collection:
19 - metrics_description: 'Monitor NSD performance for optimal authoritative DNS server operations. Monitor query rates, response times, and error rates to ensure reliable DNS service delivery.'
20 - method_description: ''
21 + metrics_description: |
22 + This collector monitors NSD statistics like queries, zones, protocols, query types and more.
23 + method_description: |
24 + It uses the `nsd-control stats_noreset` command to gather metrics.
25 supported_platforms:
26 include: []
27 exclude: []
24 - multi_instance: true
28 + multi_instance: false
29 additional_permissions:
26 - description: ''
30 + description: ""
31 default_behavior:
32 auto_detection:
29 - description: ''
33 + description: If permissions are satisfied, the collector will be able to run `nsd-control stats_noreset`, thus collecting metrics.
34 limits:
31 - description: ''
35 + description: ""
36 performance_impact:
33 - description: ''
37 + description: ""
38 setup:
39 prerequisites:
36 - list: []
40 + list:
41 + - title: Provide Netdata the permissions to run the command
42 + description: |
43 + Netdata must have permissions to run the `nsd-control stats_noreset` command.
44 +
45 + You can:
46 +
47 + - Add "netdata" user to "nsd" group:
48 + ```
49 + usermod -aG nsd netdata
50 + ```
51 + - Add Netdata to sudoers
52 + 1. Edit the sudoers file:
53 + ```
54 + visudo -f /etc/sudoers.d/netdata
55 + ```
56 + 2. Add the entry:
57 + ```
58 + Defaults:netdata !requiretty
59 + netdata ALL=(ALL) NOPASSWD: /usr/sbin/nsd-control stats_noreset
60 + ```
61 +
62 + > Note that you will need to set the `command` option to `sudo /usr/sbin/nsd-control stats_noreset` if you use this method.
63 +
64 configuration:
65 file:
39 - name: ''
40 - description: ''
66 + name: "python.d/nsd.conf"
67 options:
42 - description: ''
68 + description: |
69 + This particular collector does not need further configuration to work if permissions are satisfied, but you can always customize it's data collection behavior.
70 +
71 + There are 2 sections:
72 +
73 + * Global variables
74 + * One or more JOBS that can define multiple different instances to monitor.
75 +
76 + The following options can be defined globally: priority, penalty, autodetection_retry, update_every, but can also be defined per JOB to override the global values.
77 +
78 + Additionally, the following collapsed table contains all the options that can be configured inside a JOB definition.
79 +
80 + Every configuration JOB starts with a `job_name` value which will appear in the dashboard, unless a `name` parameter is specified.
81 folding:
44 - title: ''
82 + title: "Config options"
83 enabled: true
46 - list: []
84 + list:
85 + - name: update_every
86 + description: Sets the default data collection frequency.
87 + default_value: 30
88 + required: false
89 + - name: priority
90 + description: Controls the order of charts at the netdata dashboard.
91 + default_value: 60000
92 + required: false
93 + - name: autodetection_retry
94 + description: Sets the job re-check interval in seconds.
95 + default_value: 0
96 + required: false
97 + - name: penalty
98 + description: Indicates whether to apply penalty to update_every in case of failures.
99 + default_value: yes
100 + required: false
101 + - name: name
102 + description: >
103 + Job name. This value will overwrite the `job_name` value. JOBS with the same name are mutually exclusive. Only one of them will be allowed
104 + running at any time. This allows autodetection to try several alternatives and pick the one that works.
105 + default_value: ""
106 + required: false
107 + - name: command
108 + description: The command to run
109 + default_value: "nsd-control stats_noreset"
110 + required: false
111 examples:
112 folding:
113 enabled: true
50 - title: ''
51 - list: []
114 + title: "Config"
115 + list:
116 + - name: Basic
117 + description: A basic configuration example.
118 + folding:
119 + enabled: false
120 + config: |
121 + local:
122 + name: 'nsd_local'
123 + command: 'nsd-control stats_noreset'
124 troubleshooting:
125 problems:
126 list: []
@@ -60,65 +132,65 @@ metrics:
132 description: ""
133 availability: []
134 scopes:
63 - - name: global
64 - description: ""
65 - labels: []
66 - metrics:
67 - - name: nsd.queries
68 - description: queries
69 - unit: "queries/s"
70 - chart_type: line
71 - dimensions:
72 - - name: queries
73 - - name: nsd.zones
74 - description: zones
75 - unit: "zones"
76 - chart_type: stacked
77 - dimensions:
78 - - name: master
79 - - name: slave
80 - - name: nsd.protocols
81 - description: protocol
82 - unit: "queries/s"
83 - chart_type: stacked
84 - dimensions:
85 - - name: udp
86 - - name: udp6
87 - - name: tcp
88 - - name: tcp6
89 - - name: nsd.type
90 - description: query type
91 - unit: "queries/s"
92 - chart_type: stacked
93 - dimensions:
94 - - name: A
95 - - name: NS
96 - - name: CNAME
97 - - name: SOA
98 - - name: PTR
99 - - name: HINFO
100 - - name: MX
101 - - name: NAPTR
102 - - name: TXT
103 - - name: AAAA
104 - - name: SRV
105 - - name: ANY
106 - - name: nsd.transfer
107 - description: transfer
108 - unit: "queries/s"
109 - chart_type: stacked
110 - dimensions:
111 - - name: NOTIFY
112 - - name: AXFR
113 - - name: nsd.rcode
114 - description: return code
115 - unit: "queries/s"
116 - chart_type: stacked
117 - dimensions:
118 - - name: NOERROR
119 - - name: FORMERR
120 - - name: SERVFAIL
121 - - name: NXDOMAIN
122 - - name: NOTIMP
123 - - name: REFUSED
124 - - name: YXDOMAIN
135 + - name: global
136 + description: "These metrics refer to the entire monitored application."
137 + labels: []
138 + metrics:
139 + - name: nsd.queries
140 + description: queries
141 + unit: "queries/s"
142 + chart_type: line
143 + dimensions:
144 + - name: queries
145 + - name: nsd.zones
146 + description: zones
147 + unit: "zones"
148 + chart_type: stacked
149 + dimensions:
150 + - name: master
151 + - name: slave
152 + - name: nsd.protocols
153 + description: protocol
154 + unit: "queries/s"
155 + chart_type: stacked
156 + dimensions:
157 + - name: udp
158 + - name: udp6
159 + - name: tcp
160 + - name: tcp6
161 + - name: nsd.type
162 + description: query type
163 + unit: "queries/s"
164 + chart_type: stacked
165 + dimensions:
166 + - name: A
167 + - name: NS
168 + - name: CNAME
169 + - name: SOA
170 + - name: PTR
171 + - name: HINFO
172 + - name: MX
173 + - name: NAPTR
174 + - name: TXT
175 + - name: AAAA
176 + - name: SRV
177 + - name: ANY
178 + - name: nsd.transfer
179 + description: transfer
180 + unit: "queries/s"
181 + chart_type: stacked
182 + dimensions:
183 + - name: NOTIFY
184 + - name: AXFR
185 + - name: nsd.rcode
186 + description: return code
187 + unit: "queries/s"
188 + chart_type: stacked
189 + dimensions:
190 + - name: NOERROR
191 + - name: FORMERR
192 + - name: SERVFAIL
193 + - name: NXDOMAIN
194 + - name: NOTIMP
195 + - name: REFUSED
196 + - name: YXDOMAIN
collectors/python.d.plugin/spigotmc/metadata.yaml
+132 -46
@@ -3,52 +3,138 @@ meta:
3 module_name: spigotmc
4 monitored_instance:
5 name: SpigotMC
6 - link: ''
6 + link: ""
7 categories:
8 - - data-collection.gaming
9 - icon_filename: 'spigot.jfif'
8 + - data-collection.gaming
9 + icon_filename: "spigot.jfif"
10 related_resources:
11 integrations:
12 list: []
13 info_provided_to_referring_integrations:
14 - description: ''
15 - keywords: []
14 + description: ""
15 + keywords:
16 + - minecraft server
17 + - spigotmc server
18 + - spigot
19 most_popular: false
20 overview:
21 data_collection:
19 - metrics_description: 'Monitor SpigotMC performance with Netdata for optimal Minecraft server operations. Improve your gaming experience with real-time server performance insights.'
20 - method_description: ''
22 + metrics_description: |
23 + This collector monitors SpigotMC server performance, in the form of ticks per second average, memory utilization, and active users.
24 + method_description: |
25 + It sends the `tps`, `list` and `online` commands to the Server, and gathers the metrics from the responses.
26 supported_platforms:
22 - include: []
27 + include:
28 + - Linux
29 exclude: []
30 multi_instance: true
31 additional_permissions:
26 - description: ''
32 + description: ""
33 default_behavior:
34 auto_detection:
29 - description: ''
35 + description: By default, this collector will attempt to connect to a Spigot server running on the local host on port `25575`.
36 limits:
31 - description: ''
37 + description: ""
38 performance_impact:
33 - description: ''
39 + description: ""
40 setup:
41 prerequisites:
36 - list: []
42 + list:
43 + - title: Enable the Remote Console Protocol
44 + description: |
45 + Under your SpigotMC server's `server.properties` configuration file, you should set `enable-rcon` to `true`.
46 +
47 + This will allow the Server to listen and respond to queries over the rcon protocol.
48 configuration:
49 file:
39 - name: ''
40 - description: ''
50 + name: "python.d/spigotmc.conf"
51 options:
42 - description: ''
52 + description: |
53 + There are 2 sections:
54 +
55 + * Global variables
56 + * One or more JOBS that can define multiple different instances to monitor.
57 +
58 + The following options can be defined globally: priority, penalty, autodetection_retry, update_every, but can also be defined per JOB to override the global values.
59 +
60 + Additionally, the following collapsed table contains all the options that can be configured inside a JOB definition.
61 +
62 + Every configuration JOB starts with a `job_name` value which will appear in the dashboard, unless a `name` parameter is specified.
63 folding:
44 - title: ''
64 + title: "Config options"
65 enabled: true
46 - list: []
66 + list:
67 + - name: update_every
68 + description: Sets the default data collection frequency.
69 + default_value: 1
70 + required: false
71 + - name: priority
72 + description: Controls the order of charts at the netdata dashboard.
73 + default_value: 60000
74 + required: false
75 + - name: autodetection_retry
76 + description: Sets the job re-check interval in seconds.
77 + default_value: 0
78 + required: false
79 + - name: penalty
80 + description: Indicates whether to apply penalty to update_every in case of failures.
81 + default_value: yes
82 + required: false
83 + - name: name
84 + description: >
85 + Job name. This value will overwrite the `job_name` value. JOBS with the same name are mutually exclusive. Only one of them will be allowed
86 + running at any time. This allows autodetection to try several alternatives and pick the one that works.
87 + default_value: ""
88 + required: false
89 + - name: host
90 + description: The host's IP to connect to.
91 + default_value: localhost
92 + required: true
93 + - name: port
94 + description: The port the remote console is listening on.
95 + default_value: 25575
96 + required: true
97 + - name: password
98 + description: Remote console password if any.
99 + default_value: ""
100 + required: false
101 examples:
102 folding:
103 enabled: true
50 - title: ''
51 - list: []
104 + title: "Config"
105 + list:
106 + - name: Basic
107 + description: A basic configuration example.
108 + folding:
109 + enabled: false
110 + config: |
111 + local:
112 + name: local_server
113 + url: 127.0.0.1
114 + port: 25575
115 + - name: Basic Authentication
116 + description: An example using basic password for authentication with the remote console.
117 + config: |
118 + local:
119 + name: local_server_pass
120 + url: 127.0.0.1
121 + port: 25575
122 + password: 'foobar'
123 + - name: Multi-instance
124 + description: |
125 + > **Note**: When you define multiple jobs, their names must be unique.
126 +
127 + Collecting metrics from local and remote instances.
128 + config: |
129 + local_server:
130 + name : my_local_server
131 + url : 127.0.0.1
132 + port: 25575
133 +
134 + remote_server:
135 + name : another_remote_server
136 + url : 192.0.2.1
137 + port: 25575
138 troubleshooting:
139 problems:
140 list: []
@@ -60,29 +146,29 @@ metrics:
146 description: ""
147 availability: []
148 scopes:
63 - - name: global
64 - description: ""
65 - labels: []
66 - metrics:
67 - - name: spigotmc.tps
68 - description: Spigot Ticks Per Second
69 - unit: "ticks"
70 - chart_type: line
71 - dimensions:
72 - - name: 1 Minute Average
73 - - name: 5 Minute Average
74 - - name: 15 Minute Average
75 - - name: spigotmc.users
76 - description: Minecraft Users
77 - unit: "users"
78 - chart_type: area
79 - dimensions:
80 - - name: Users
81 - - name: spigotmc.mem
82 - description: Minecraft Memory Usage
83 - unit: "MiB"
84 - chart_type: line
85 - dimensions:
86 - - name: used
87 - - name: allocated
88 - - name: max
149 + - name: global
150 + description: "These metrics refer to the entire monitored application."
151 + labels: []
152 + metrics:
153 + - name: spigotmc.tps
154 + description: Spigot Ticks Per Second
155 + unit: "ticks"
156 + chart_type: line
157 + dimensions:
158 + - name: 1 Minute Average
159 + - name: 5 Minute Average
160 + - name: 15 Minute Average
161 + - name: spigotmc.users
162 + description: Minecraft Users
163 + unit: "users"
164 + chart_type: area
165 + dimensions:
166 + - name: Users
167 + - name: spigotmc.mem
168 + description: Minecraft Memory Usage
169 + unit: "MiB"
170 + chart_type: line
171 + dimensions:
172 + - name: used
173 + - name: allocated
174 + - name: max
collectors/python.d.plugin/squid/metadata.yaml
+129 -54
@@ -3,53 +3,128 @@ meta:
3 module_name: squid
4 monitored_instance:
5 name: Squid
6 - link: ''
6 + link: "http://www.squid-cache.org/"
7 categories:
8 - - data-collection.web-servers-and-web-proxies
9 - icon_filename: 'squid.png'
8 + - data-collection.web-servers-and-web-proxies
9 + icon_filename: "squid.png"
10 related_resources:
11 integrations:
12 list: []
13 info_provided_to_referring_integrations:
14 - description: ''
15 - keywords: []
14 + description: ""
15 + keywords:
16 + - squid
17 + - web delivery
18 + - squid caching proxy
19 most_popular: false
20 overview:
21 data_collection:
19 - metrics_description: 'Monitor Squid metrics with Netdata for efficient caching proxy for the Web performance. Improve your web caching efficiency with real-time Squid metrics.'
20 - method_description: ''
22 + metrics_description: |
23 + This collector monitors statistics about the Squid Clients and Servers, like bandwidth and requests.
24 + method_description: "It collects metrics from the endpoint where Squid exposes its `counters` data."
25 supported_platforms:
26 include: []
27 exclude: []
28 multi_instance: true
29 additional_permissions:
26 - description: ''
30 + description: ""
31 default_behavior:
32 auto_detection:
29 - description: ''
33 + description: "By default, this collector will try to autodetect where Squid presents its `counters` data, by trying various configurations."
34 limits:
31 - description: ''
35 + description: ""
36 performance_impact:
33 - description: ''
37 + description: ""
38 setup:
39 prerequisites:
36 - list: []
40 + list:
41 + - title: Configure Squid's Cache Manager
42 + description: |
43 + Take a look at [Squid's official documentation](https://wiki.squid-cache.org/Features/CacheManager/Index#controlling-access-to-the-cache-manager) on how to configure access to the Cache Manager.
44 configuration:
45 file:
39 - name: ''
40 - description: ''
46 + name: "python.d/squid.conf"
47 options:
42 - description: ''
48 + description: |
49 + There are 2 sections:
50 +
51 + * Global variables
52 + * One or more JOBS that can define multiple different instances to monitor.
53 +
54 + The following options can be defined globally: priority, penalty, autodetection_retry, update_every, but can also be defined per JOB to override the global values.
55 +
56 + Additionally, the following collapsed table contains all the options that can be configured inside a JOB definition.
57 +
58 + Every configuration JOB starts with a `job_name` value which will appear in the dashboard, unless a `name` parameter is specified.
59 folding:
44 - title: ''
60 + title: "Config options"
61 enabled: true
46 - list: []
62 + list:
63 + - name: update_every
64 + description: Sets the default data collection frequency.
65 + default_value: 1
66 + required: false
67 + - name: priority
68 + description: Controls the order of charts at the netdata dashboard.
69 + default_value: 60000
70 + required: false
71 + - name: autodetection_retry
72 + description: Sets the job re-check interval in seconds.
73 + default_value: 0
74 + required: false
75 + - name: penalty
76 + description: Indicates whether to apply penalty to update_every in case of failures.
77 + default_value: yes
78 + required: false
79 + - name: name
80 + description: >
81 + Job name. This value will overwrite the `job_name` value. JOBS with the same name are mutually exclusive. Only one of them will be allowed running at any time. This allows autodetection to try several alternatives and pick the one that works.
82 + default_value: "local"
83 + required: false
84 + - name: host
85 + description: The host to connect to.
86 + default_value: ""
87 + required: true
88 + - name: port
89 + description: The port to connect to.
90 + default_value: ""
91 + required: true
92 + - name: request
93 + description: The URL to request from Squid.
94 + default_value: ""
95 + required: true
96 examples:
97 folding:
98 enabled: true
50 - title: ''
51 - list: []
52 -troubleshooting:
99 + title: "Config"
100 + list:
101 + - name: Basic
102 + description: A basic configuration example.
103 + folding:
104 + enabled: false
105 + config: |
106 + example_job_name:
107 + name: 'local'
108 + host: 'localhost'
109 + port: 3128
110 + request: 'cache_object://localhost:3128/counters'
111 + - name: Multi-instance
112 + description: |
113 + > **Note**: When you define multiple jobs, their names must be unique.
114 +
115 + Collecting metrics from local and remote instances.
116 + config: |
117 + local_job:
118 + name: 'local'
119 + host: '127.0.0.1'
120 + port: 3128
121 + request: 'cache_object://127.0.0.1:3128/counters'
122 +
123 + remote_job:
124 + name: 'remote'
125 + host: '192.0.2.1'
126 + port: 3128
127 + request: 'cache_object://192.0.2.1:3128/counters'
128 problems:
129 list: []
130 alerts: []
@@ -60,37 +135,37 @@ metrics:
135 description: ""
136 availability: []
137 scopes:
63 - - name: squid instance
64 - description: ""
65 - labels: []
66 - metrics:
67 - - name: squid.clients_net
68 - description: Squid Client Bandwidth
69 - unit: "kilobits/s"
70 - chart_type: area
71 - dimensions:
72 - - name: in
73 - - name: out
74 - - name: hits
75 - - name: squid.clients_requests
76 - description: Squid Client Requests
77 - unit: "requests/s"
78 - chart_type: line
79 - dimensions:
80 - - name: requests
81 - - name: hits
82 - - name: errors
83 - - name: squid.servers_net
84 - description: Squid Server Bandwidth
85 - unit: "kilobits/s"
86 - chart_type: area
87 - dimensions:
88 - - name: in
89 - - name: out
90 - - name: squid.servers_requests
91 - description: Squid Server Requests
92 - unit: "requests/s"
93 - chart_type: line
94 - dimensions:
95 - - name: requests
96 - - name: errors
138 + - name: Squid instance
139 + description: "These metrics refer to each monitored Squid instance."
140 + labels: []
141 + metrics:
142 + - name: squid.clients_net
143 + description: Squid Client Bandwidth
144 + unit: "kilobits/s"
145 + chart_type: area
146 + dimensions:
147 + - name: in
148 + - name: out
149 + - name: hits
150 + - name: squid.clients_requests
151 + description: Squid Client Requests
152 + unit: "requests/s"
153 + chart_type: line
154 + dimensions:
155 + - name: requests
156 + - name: hits
157 + - name: errors
158 + - name: squid.servers_net
159 + description: Squid Server Bandwidth
160 + unit: "kilobits/s"
161 + chart_type: area
162 + dimensions:
163 + - name: in
164 + - name: out
165 + - name: squid.servers_requests
166 + description: Squid Server Requests
167 + unit: "requests/s"
168 + chart_type: line
169 + dimensions:
170 + - name: requests
171 + - name: errors