Create categories.yaml (#15385)
Fotis Voutsas committed
Jul 14, 2023 at 18:20 UTC
17d271d62be1fe9f301a1907d8aba9638731b46d
3 files changed
+287
-17
collectors/metadata/schemas/definitions.json
+1
-1
@@ -14,7 +14,7 @@
14
},
15
"categories": {
16
"type": "array",
17
- "description": "Categories this integration falls into.",
17
+ "description": "Category IDs that this integration falls into. Category IDs can be found at integrations/categories.yaml.",
18
"items": {
19
"$ref": "#/definitions/category"
20
}
docs/.templates/integration/schema.json
+12
-16
@@ -11,30 +11,26 @@
11
"type": "array",
12
"items": {
13
"type": "object",
14
- "description": "The concept of IDs between categories is used, so we can handle nested categories. That way they will be able to mention their parent, and we should be able to make the structure of categories. Every category's ID will be used by the various integrations too to mention in which category they lie. Along with this, a priority field is needed to define the ordering on a menu-level.",
14
+ "description": "",
15
"properties": {
16
- "name": {
16
+ "id": {
17
"type": "string",
18
- "description": "Name of the category. This is the actual name of the category or subcategory, (e.g. Web Servers, Operating Systems, Databases)."
18
+ "description": "ID of the category, can be found in integrations/categories.yaml for every category."
19
},
20
"description": {
21
"type": "string",
22
- "description": "Text that will be presented below the category title."
22
+ "description": "Text that will be presented below the category title, or that will be accompanying the category in the UI in any form."
23
},
24
"priority": {
25
"type": "integer",
26
- "description": "Priority of the category. A number expressing where the category should be in the menu. The smaller the number the higher the priority, so a category with priority 1 would be above a category with a priority of 50 in terms of menu ordering."
26
+ "description": "Priority of the category. A number expressing where the category should be in the menu. Currently, a static number gets assigned to all categories, with a higher priority one for the most-popular flagged categories."
27
},
28
- "id": {
29
- "type": "string",
30
- "description": "ID of the category that will be used by integrations, this is a unique number for each category that will be used by its children to refer to it as their parent."
31
- },
32
- "parent_id": {
33
- "type": [
34
- "null",
35
- "string"
36
- ],
37
- "description": "The category's parent ID. If this category is a subcategory, then it needs to mention its parent, where it belongs to. Make it null if no parent and this is a top level category."
28
+ "children": {
29
+ "type": "array",
30
+ "description": "an array that recursively has the same elements as the parent.",
31
+ "items": {
32
+ "$ref": "#"
33
+ }
34
}
35
}
36
}
@@ -62,7 +58,7 @@
58
"properties": {
59
"category_id": {
60
"type": "string",
65
- "description": "The category_ID for this integration."
61
+ "description": "The category_ID for this integration. This is the category ID mentioned inside integrations/category.yaml, for the respective category."
62
},
63
"priority": {
64
"type": "integer",
integrations/categories.yaml
new
+274
@@ -0,0 +1,274 @@
1
+- name: deploy
2
+ description: ""
3
+ most-popular: false
4
+ children:
5
+ - id: deploy.operating-systems
6
+ name: Operating Systems
7
+ description: ""
8
+ most-popular: false
9
+ children: []
10
+ - id: deploy.docker-kubernetes
11
+ name: Docker & Kubernetes
12
+ description: ""
13
+ most-popular: false
14
+ children: []
15
+ - id: deploy.provisioning-systems
16
+ parent: deploy
17
+ name: Provisioning Systems
18
+ description: ""
19
+ most-popular: false
20
+ children: []
21
+- name: data-collection
22
+ description: ""
23
+ most-popular: false
24
+ children:
25
+ - id: data-collection.containers-and-vms
26
+ name: Containers and VMs
27
+ description: ""
28
+ most-popular: false
29
+ children: []
30
+ - id: data-collection.database-servers
31
+ name: Database Servers
32
+ description: ""
33
+ most-popular: false
34
+ children: []
35
+ - id: data-collection.kubernetes
36
+ name: Kubernetes
37
+ description: ""
38
+ most-popular: false
39
+ children: []
40
+ - id: data-collection.service-discovery-registry
41
+ name: Service Discovery / Registry
42
+ description: ""
43
+ most-popular: false
44
+ children: []
45
+ - id: data-collection.web-servers-and-web-proxies
46
+ name: Web Servers and Web Proxies
47
+ description: ""
48
+ most-popular: false
49
+ children: []
50
+ - id: data-collection.cloud-provider-managed
51
+ name: Cloud Provider Managed
52
+ description: ""
53
+ most-popular: false
54
+ children: []
55
+ - id: data-collection.windows-systems
56
+ name: Windows Systems
57
+ description: ""
58
+ most-popular: false
59
+ children: []
60
+ - id: data-collection.apm
61
+ name: APM
62
+ description: ""
63
+ most-popular: false
64
+ children: []
65
+ - id: data-collection.hardware-devices-and-sensors
66
+ name: Hardware Devices and Sensors
67
+ description: ""
68
+ most-popular: false
69
+ children: []
70
+ - id: data-collection.macos-systems
71
+ name: macOS Systems
72
+ description: ""
73
+ most-popular: false
74
+ children: []
75
+ - id: data-collection.message-brokers
76
+ name: Message Brokers
77
+ description: ""
78
+ most-popular: false
79
+ children: []
80
+ - id: data-collection.provisioning-systems
81
+ name: Provisioning Systems
82
+ description: ""
83
+ most-popular: false
84
+ children: []
85
+ - id: data-collection.search-engines
86
+ name: Search Engines
87
+ description: ""
88
+ most-popular: false
89
+ children: []
90
+ - id: data-collection.linux-systems
91
+ name: Linux Systems
92
+ description: ""
93
+ most-popular: false
94
+ children: []
95
+ - id: data-collection.notifications
96
+ name: Notifications
97
+ description: ""
98
+ most-popular: false
99
+ children: []
100
+ - id: data-collection.networking-stack-and-network-interfaces
101
+ name: Networking Stack and Network Interfaces
102
+ description: ""
103
+ most-popular: false
104
+ children: []
105
+ - id: data-collection.cloud-provider
106
+ name: Cloud Provider
107
+ description: ""
108
+ most-popular: false
109
+ children: []
110
+ - id: data-collection.synthetic-checks
111
+ name: Synthetic Checks
112
+ description: ""
113
+ most-popular: false
114
+ children: []
115
+ - id: data-collection.storage-mount-points-and-filesystems
116
+ name: Storage Mount Points and Filesystems
117
+ description: ""
118
+ most-popular: false
119
+ children: []
120
+ - id: data-collection.containers-vms
121
+ name: Containers & VMs
122
+ description: ""
123
+ most-popular: false
124
+ children: []
125
+ - id: data-collection.ci-cd-systems
126
+ name: CI/CD Systems
127
+ description: ""
128
+ most-popular: false
129
+ children: []
130
+ - id: data-collection.ups
131
+ name: UPS
132
+ description: ""
133
+ most-popular: false
134
+ children: []
135
+ - id: data-collection.freebsd-systems
136
+ name: FreeBSD Systems
137
+ description: ""
138
+ most-popular: false
139
+ children: []
140
+ - id: data-collection.logs-servers
141
+ name: Logs Servers
142
+ description: ""
143
+ most-popular: false
144
+ children: []
145
+ - id: data-collection.security-systems
146
+ name: Security Systems
147
+ description: ""
148
+ most-popular: false
149
+ children: []
150
+ - id: data-collection.observability
151
+ name: Observability
152
+ description: ""
153
+ most-popular: false
154
+ children: []
155
+ - id: data-collection.gaming
156
+ name: Gaming
157
+ description: ""
158
+ most-popular: false
159
+ children: []
160
+ - id: data-collection.iot-devices
161
+ name: IoT Devices
162
+ description: ""
163
+ most-popular: false
164
+ children: []
165
+ - id: data-collection.media-streaming-servers
166
+ name: Media Streaming Servers
167
+ description: ""
168
+ most-popular: false
169
+ children: []
170
+ - id: data-collection.authentication-and-authorization
171
+ name: Authentication and Authorization
172
+ description: ""
173
+ most-popular: false
174
+ children: []
175
+ - id: data-collection.project-management
176
+ name: Project Management
177
+ description: ""
178
+ most-popular: false
179
+ children: []
180
+ - id: data-collection.application-servers
181
+ name: Application Servers
182
+ description: ""
183
+ most-popular: false
184
+ children: []
185
+ - id: data-collection.export
186
+ name: Export
187
+ description: ""
188
+ most-popular: false
189
+ children: []
190
+ - id: data-collection.dns-and-dhcp-servers
191
+ name: DNS and DHCP Servers
192
+ description: ""
193
+ most-popular: false
194
+ children: []
195
+ - id: data-collection.mail-servers
196
+ name: Mail Servers
197
+ description: ""
198
+ most-popular: false
199
+ children: []
200
+ - id: data-collection.processes-and-system-services
201
+ name: Processes and System Services
202
+ description: ""
203
+ most-popular: false
204
+ children: []
205
+ - id: data-collection.storage-mount-points-and-filesystems
206
+ name: Storage, Mount Points and Filesystems
207
+ description: ""
208
+ most-popular: false
209
+ children: []
210
+ - id: data-collection.systemd
211
+ name: Systemd
212
+ description: ""
213
+ most-popular: false
214
+ children: []
215
+ - id: data-collection.telephony-servers
216
+ name: Telephony Servers
217
+ description: ""
218
+ most-popular: false
219
+ children: []
220
+ - id: data-collection.vpns
221
+ name: VPNs
222
+ description: ""
223
+ most-popular: false
224
+ children: []
225
+ - id: data-collection.blockchain-servers
226
+ name: Blockchain Servers
227
+ description: ""
228
+ most-popular: false
229
+ children: []
230
+ - id: data-collection.distributed-computing-systems
231
+ name: Distributed Computing Systems
232
+ description: ""
233
+ most-popular: false
234
+ children: []
235
+ - id: data-collection.generic-data-collection
236
+ name: Generic Data Collection
237
+ description: ""
238
+ most-popular: false
239
+ children: []
240
+ - id: data-collection.p2p
241
+ name: P2P
242
+ description: ""
243
+ most-popular: false
244
+ children: []
245
+ - id: data-collection.snmp-and-networked-devices
246
+ name: SNMP and Networked Devices
247
+ description: ""
248
+ most-popular: false
249
+ children: []
250
+ - id: data-collection.system-clock-and-ntp
251
+ name: System Clock and NTP
252
+ description: ""
253
+ most-popular: false
254
+ children: []
255
+ - id: data-collection.nas
256
+ name: NAS
257
+ description: ""
258
+ most-popular: false
259
+ children: []
260
+ - id: data-collection.api-gateways
261
+ name: API Gateways
262
+ description: ""
263
+ most-popular: false
264
+ children: []
265
+ - id: data-collection.task-queues
266
+ name: Task Queues
267
+ description: ""
268
+ most-popular: false
269
+ children: []
270
+ - id: data-collection.ftp-servers
271
+ name: FTP Servers
272
+ description: ""
273
+ most-popular: false
274
+ children: []