@cryptotaxi247 / netdata-1 / commits / 101cbcf6b

Update zscores metadata yaml (#15581)

* update zscores metadata * dev * add category * Update collectors/python.d.plugin/zscores/metadata.yaml Co-authored-by: Fotis Voutsas <fotis@netdata.cloud> * fix trailing space --------- Co-authored-by: Fotis Voutsas <fotis@netdata.cloud>

Andrew Maguire committed Jul 28, 2023 at 08:36 UTC 101cbcf6ba882e271529f99885942e91c05ccc2a
1 file changed +145 -35
collectors/python.d.plugin/zscores/metadata.yaml
+145 -35
@@ -1,53 +1,163 @@
1 +# yamllint disable rule:line-length
2 +---
3 meta:
4 plugin_name: python.d.plugin
5 module_name: zscores
6 monitored_instance:
7 name: python.d zscores
6 - link: ''
7 - categories: []
8 - icon_filename: ''
8 + link: https://en.wikipedia.org/wiki/Standard_score
9 + categories:
10 + - data-collection.other
11 + icon_filename: ""
12 related_resources:
13 integrations:
14 list: []
15 info_provided_to_referring_integrations:
13 - description: ''
14 - keywords: []
16 + description: ""
17 + keywords:
18 + - zscore
19 + - z-score
20 + - standard score
21 + - standard deviation
22 + - anomaly detection
23 + - statistical anomaly detection
24 most_popular: false
25 overview:
26 data_collection:
18 - metrics_description: ''
19 - method_description: ''
27 + metrics_description: |
28 + By using smoothed, rolling [Z-Scores](https://en.wikipedia.org/wiki/Standard_score) for selected metrics or charts you can narrow down your focus and shorten root cause analysis.
29 + method_description: |
30 + This collector uses the [Netdata rest api](https://github.com/netdata/netdata/blob/master/web/api/README.md) to get the `mean` and `stddev`
31 + for each dimension on specified charts over a time range (defined by `train_secs` and `offset_secs`).
32 +
33 + For each dimension it will calculate a Z-Score as `z = (x - mean) / stddev` (clipped at `z_clip`). Scores are then smoothed over
34 + time (`z_smooth_n`) and, if `mode: 'per_chart'`, aggregated across dimensions to a smoothed, rolling chart level Z-Score at each time step.
35 supported_platforms:
36 include: []
37 exclude: []
38 multi_instance: true
39 additional_permissions:
25 - description: ''
40 + description: ""
41 default_behavior:
42 auto_detection:
28 - description: ''
43 + description: ""
44 limits:
30 - description: ''
45 + description: ""
46 performance_impact:
32 - description: ''
47 + description: ""
48 setup:
49 prerequisites:
35 - list: []
50 + list:
51 + - title: Python Requirements
52 + description: |
53 + This collector will only work with Python 3 and requires the below packages be installed.
54 +
55 + ```bash
56 + # become netdata user
57 + sudo su -s /bin/bash netdata
58 + # install required packages
59 + pip3 install numpy pandas requests netdata-pandas==0.0.38
60 + ```
61 configuration:
62 file:
38 - name: ''
39 - description: ''
63 + name: python.d/zscores.conf
64 + description: ""
65 options:
41 - description: ''
66 + description: |
67 + There are 2 sections:
68 +
69 + * Global variables
70 + * One or more JOBS that can define multiple different instances to monitor.
71 +
72 + 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.
73 +
74 + Additionally, the following collapsed table contains all the options that can be configured inside a JOB definition.
75 +
76 + Every configuration JOB starts with a `job_name` value which will appear in the dashboard, unless a `name` parameter is specified.
77 folding:
43 - title: ''
78 + title: "Config options"
79 enabled: true
45 - list: []
80 + list:
81 + - name: charts_regex
82 + description: what charts to pull data for - A regex like `system\..*|` or `system\..*|apps.cpu|apps.mem` etc.
83 + default_value: "system\\..*"
84 + required: true
85 + - name: train_secs
86 + description: length of time (in seconds) to base calculations off for mean and stddev.
87 + default_value: 14400
88 + required: true
89 + - name: offset_secs
90 + description: offset (in seconds) preceding latest data to ignore when calculating mean and stddev.
91 + default_value: 300
92 + required: true
93 + - name: train_every_n
94 + description: recalculate the mean and stddev every n steps of the collector.
95 + default_value: 900
96 + required: true
97 + - name: z_smooth_n
98 + description: smooth the z score (to reduce sensitivity to spikes) by averaging it over last n values.
99 + default_value: 15
100 + required: true
101 + - name: z_clip
102 + description: cap absolute value of zscore (before smoothing) for better stability.
103 + default_value: 10
104 + required: true
105 + - name: z_abs
106 + description: "set z_abs: 'true' to make all zscores be absolute values only."
107 + default_value: "true"
108 + required: true
109 + - name: burn_in
110 + description: burn in period in which to initially calculate mean and stddev on every step.
111 + default_value: 2
112 + required: true
113 + - name: mode
114 + description: mode can be to get a zscore 'per_dim' or 'per_chart'.
115 + default_value: per_chart
116 + required: true
117 + - name: per_chart_agg
118 + description: per_chart_agg is how you aggregate from dimension to chart when mode='per_chart'.
119 + default_value: mean
120 + required: true
121 + - name: update_every
122 + description: Sets the default data collection frequency.
123 + default_value: 5
124 + required: false
125 + - name: priority
126 + description: Controls the order of charts at the netdata dashboard.
127 + default_value: 60000
128 + required: false
129 + - name: autodetection_retry
130 + description: Sets the job re-check interval in seconds.
131 + default_value: 0
132 + required: false
133 + - name: penalty
134 + description: Indicates whether to apply penalty to update_every in case of failures.
135 + default_value: yes
136 + required: false
137 examples:
138 folding:
139 enabled: true
49 - title: ''
50 - list: []
140 + title: "Config"
141 + list:
142 + - name: Default
143 + description: Default configuration.
144 + folding:
145 + enabled: false
146 + config: |
147 + local:
148 + name: 'local'
149 + host: '127.0.0.1:19999'
150 + charts_regex: 'system\..*'
151 + charts_to_exclude: 'system.uptime'
152 + train_secs: 14400
153 + offset_secs: 300
154 + train_every_n: 900
155 + z_smooth_n: 15
156 + z_clip: 10
157 + z_abs: 'true'
158 + burn_in: 2
159 + mode: 'per_chart'
160 + per_chart_agg: 'mean'
161 troubleshooting:
162 problems:
163 list: []
@@ -59,19 +169,19 @@ metrics:
169 description: ""
170 availability: []
171 scopes:
62 - - name: global
63 - description: ""
64 - labels: []
65 - metrics:
66 - - name: zscores.z
67 - description: Z Score
68 - unit: "z"
69 - chart_type: line
70 - dimensions:
71 - - name: a dimension per chart or dimension
72 - - name: zscores.3stddev
73 - description: Z Score >3
74 - unit: "count"
75 - chart_type: stacked
76 - dimensions:
77 - - name: a dimension per chart or dimension
172 + - name: global
173 + description: "These metrics refer to the entire monitored application."
174 + labels: []
175 + metrics:
176 + - name: zscores.z
177 + description: Z Score
178 + unit: "z"
179 + chart_type: line
180 + dimensions:
181 + - name: a dimension per chart or dimension
182 + - name: zscores.3stddev
183 + description: Z Score >3
184 + unit: "count"
185 + chart_type: stacked
186 + dimensions:
187 + - name: a dimension per chart or dimension