ebbf3f649468daea415c457d1d637a49998a5c8d
[dcaegen2.git] / docs / sections / design-components / DCAE-MOD / Sample-Input-Files / Request-body-of-Sample-Component_v3.json
1  {
2    "spec":
3
4 {
5     "self": {
6         "version": "1.10.1",
7         "name": "dcae-ves-collector",
8         "description": "Collector for receiving VES events through restful interface",
9         "component_type": "docker"
10     },
11     "streams": {
12         "subscribes": [],
13         "publishes": [{
14                 "format": "VES_specification",
15                 "version": "5.28.4",
16                 "type": "message router",
17                 "config_key": "ves-fault"
18             },
19             {
20                 "format": "VES_specification",
21                 "version": "5.28.4",
22                 "type": "message router",
23                 "config_key": "ves-measurement"
24             },
25             {
26                 "format": "VES_specification",
27                 "version": "5.28.4",
28                 "type": "message router",
29                 "config_key": "ves-syslog"
30             },
31             {
32                 "format": "VES_specification",
33                 "version": "5.28.4",
34                 "type": "message router",
35                 "config_key": "ves-heartbeat"
36             },
37             {
38                 "format": "VES_specification",
39                 "version": "7.30.2",
40                 "type": "message router",
41                 "config_key": "ves-other"
42             },
43             {
44                 "format": "VES_specification",
45                 "version": "5.28.4",
46                 "type": "message router",
47                 "config_key": "ves-mobileflow"
48             },
49             {
50                 "format": "VES_specification",
51                 "version": "5.28.4",
52                 "type": "message router",
53                 "config_key": "ves-statechange"
54             },
55             {
56                 "format": "VES_specification",
57                 "version": "5.28.4",
58                 "type": "message router",
59                 "config_key": "ves-thresholdCrossingAlert"
60             },
61             {
62                 "format": "VES_specification",
63                 "version": "5.28.4",
64                 "type": "message router",
65                 "config_key": "ves-voicequality"
66             },
67             {
68                 "format": "VES_specification",
69                 "version": "5.28.4",
70                 "type": "message router",
71                 "config_key": "ves-sipsignaling"
72             },
73             {
74                 "format": "VES_specification",
75                 "version": "7.30.2",
76                 "type": "message router",
77                 "config_key": "ves-pnfRegistration"
78             },
79             {
80                 "format": "VES_specification",
81                 "version": "7.30.2",
82                 "type": "message router",
83                 "config_key": "ves-notification"
84             },
85             {
86                 "format": "VES_specification",
87                 "version": "7.30.2",
88                 "type": "message router",
89                 "config_key": "ves-perf3gpp"
90             },
91             {
92                 "format": "VES_specification",
93                 "version": "7.30.2",
94                 "type": "message router",
95                 "config_key": "ves-3gpp-fault-supervision"
96             },
97             {
98                 "format": "VES_specification",
99                 "version": "7.30.2",
100                 "type": "message router",
101                 "config_key": "ves-3gpp-provisioning"
102             },
103             {
104                 "format": "VES_specification",
105                 "version": "7.30.2",
106                 "type": "message router",
107                 "config_key": "ves-3gpp-heartbeat"
108             },
109             {
110                 "format": "VES_specification",
111                 "version": "7.30.2",
112                 "type": "message router",
113                 "config_key": "ves-3gpp-performance-assurance"
114             }
115         ]
116     },
117     "services": {
118         "calls": [],
119         "provides": [{
120                 "route": "/eventListener/v1",
121                 "verb": "POST",
122                 "request": {
123                     "format": "VES_specification",
124                     "version": "4.27.2"
125                 },
126                 "response": {
127                     "format": "ves.coll.response",
128                     "version": "1.0.0"
129                 }
130             },
131             {
132                 "route": "/eventListener/v2",
133                 "verb": "POST",
134                 "request": {
135                     "format": "VES_specification",
136                     "version": "4.27.2"
137                 },
138                 "response": {
139                     "format": "ves.coll.response",
140                     "version": "1.0.0"
141                 }
142             },
143             {
144                 "route": "/eventListener/v3",
145                 "verb": "POST",
146                 "request": {
147                     "format": "VES_specification",
148                     "version": "4.27.2"
149                 },
150                 "response": {
151                     "format": "ves.coll.response",
152                     "version": "1.0.0"
153                 }
154             },
155             {
156                 "route": "/eventListener/v4",
157                 "verb": "POST",
158                 "request": {
159                     "format": "VES_specification",
160                     "version": "4.27.2"
161                 },
162                 "response": {
163                     "format": "ves.coll.response",
164                     "version": "1.0.0"
165                 }
166             },
167             {
168                 "route": "/eventListener/v5",
169                 "verb": "POST",
170                 "request": {
171                     "format": "VES_specification",
172                     "version": "5.28.4"
173                 },
174                 "response": {
175                     "format": "ves.coll.response",
176                     "version": "1.0.0"
177                 }
178             },
179             {
180                 "route": "/eventListener/v7",
181                 "verb": "POST",
182                 "request": {
183                     "format": "VES_specification",
184                     "version": "7.30.2"
185                 },
186                 "response": {
187                     "format": "ves.coll.response",
188                     "version": "1.0.0"
189                 }
190             }
191         ]
192     },
193     "parameters": [{
194             "name": "streams_publishes",
195             "value": "{\"ves-3gpp-fault-supervision\":{\"dmaap_info\":{\"topic_url\":\"http:\/\/message-router:3904\/events\/unauthenticated.SEC_3GPP_FAULTSUPERVISION_OUTPUT\"},\"type\":\"message_router\"},\"ves-3gpp-heartbeat\":{\"dmaap_info\":{\"topic_url\":\"http:\/\/message-router:3904\/events\/unauthenticated.SEC_3GPP_HEARTBEAT_OUTPUT\"},\"type\":\"message_router\"},\"ves-3gpp-performance-assurance\":{\"dmaap_info\":{\"topic_url\":\"http:\/\/message-router:3904\/events\/unauthenticated.SEC_3GPP_PERFORMANCEASSURANCE_OUTPUT\"},\"type\":\"message_router\"},\"ves-3gpp-provisioning\":{\"dmaap_info\":{\"topic_url\":\"http:\/\/message-router:3904\/events\/unauthenticated.SEC_3GPP_PROVISIONING_OUTPUT\"},\"type\":\"message_router\"},\"ves-fault\":{\"dmaap_info\":{\"topic_url\":\"http:\/\/message-router:3904\/events\/unauthenticated.SEC_FAULT_OUTPUT\"},\"type\":\"message_router\"},\"ves-heartbeat\":{\"dmaap_info\":{\"topic_url\":\"http:\/\/message-router:3904\/events\/unauthenticated.SEC_HEARTBEAT_OUTPUT\"},\"type\":\"message_router\"},\"ves-measurement\":{\"dmaap_info\":{\"topic_url\":\"http:\/\/message-router:3904\/events\/unauthenticated.VES_MEASUREMENT_OUTPUT\"},\"type\":\"message_router\"},\"ves-notification\":{\"dmaap_info\":{\"topic_url\":\"http:\/\/message-router:3904\/events\/unauthenticated.VES_NOTIFICATION_OUTPUT\"},\"type\":\"message_router\"},\"ves-other\":{\"dmaap_info\":{\"topic_url\":\"http:\/\/message-router:3904\/events\/unauthenticated.SEC_OTHER_OUTPUT\"},\"type\":\"message_router\"},\"ves-pnfRegistration\":{\"dmaap_info\":{\"topic_url\":\"http:\/\/message-router:3904\/events\/unauthenticated.VES_PNFREG_OUTPUT\"},\"type\":\"message_router\"}}",
196             "description": "standard http port collector will open for listening;",
197             "sourced_at_deployment": false,
198             "policy_editable": false,
199             "designer_editable": false
200         },
201         {
202             "name": "collector.service.port",
203             "value": 8080,
204             "description": "standard http port collector will open for listening;",
205             "sourced_at_deployment": false,
206             "policy_editable": false,
207             "designer_editable": false
208         },
209         {
210             "name": "collector.service.secure.port",
211             "value": 8443,
212             "description": "secure http port collector will open for listening ",
213             "sourced_at_deployment": false,
214             "policy_editable": false,
215             "designer_editable": true
216         },
217         {
218             "name": "collector.keystore.file.location",
219             "value": "/opt/app/dcae-certificate/cert.jks",
220             "description": "fs location of keystore file in vm",
221             "sourced_at_deployment": false,
222             "policy_editable": false,
223             "designer_editable": false
224         },
225         {
226             "name": "collector.keystore.passwordfile",
227             "value": "/opt/app/dcae-certificate/jks.pass",
228             "description": "location of keystore password file in vm",
229             "sourced_at_deployment": false,
230             "policy_editable": false,
231             "designer_editable": false
232         },
233         {
234             "name": "collector.truststore.file.location",
235             "value": "/opt/app/dcae-certificate/trust.jks",
236             "description": "fs location of truststore file in vm",
237             "sourced_at_deployment": false,
238             "policy_editable": false,
239             "designer_editable": false
240         },
241         {
242             "name": "collector.truststore.passwordfile",
243             "value": "/opt/app/dcae-certificate/trust.pass",
244             "description": "location of truststore password file in vm",
245             "sourced_at_deployment": false,
246             "policy_editable": false,
247             "designer_editable": false
248         },
249         {
250             "name": "collector.dmaap.streamid",
251             "value": "fault=ves-fault|syslog=ves-syslog|heartbeat=ves-heartbeat|measurementsForVfScaling=ves-measurement|mobileFlow=ves-mobileflow|other=ves-other|stateChange=ves-statechange|thresholdCrossingAlert=ves-thresholdCrossingAlert|voiceQuality=ves-voicequality|sipSignaling=ves-sipsignaling|notification=ves-notification|pnfRegistration=ves-pnfRegistration|3GPP-FaultSupervision=ves-3gpp-fault-supervision|3GPP-Heartbeat=ves-3gpp-heartbeat|3GPP-Provisioning=ves-3gpp-provisioning|3GPP-PerformanceAssurance=ves-3gpp-performance-assurance",
252             "description": "domain-to-streamid mapping used by VESCollector to distributes events based on domain. Both primary and secondary config_key are included for resilency (multiple streamid can be included commma separated). The streamids MUST match to topic config_keys. For single site without resiliency deployment - configkeys with -secondary suffix can be removed",
253             "sourced_at_deployment": true,
254             "policy_editable": false,
255             "designer_editable": false
256         },
257         {
258             "name": "auth.method",
259             "value": "noAuth",
260             "description": "Property to manage application mode, possible configurations: noAuth - default option - no security (http) , certOnly - auth by certificate (https), basicAuth - auth by basic auth username and password (https),certBasicAuth - auth by certificate and basic auth username / password (https),",
261             "sourced_at_deployment": false,
262             "policy_editable": false,
263             "designer_editable": false
264         },
265         {
266             "name": "header.authlist",
267             "value": "sample1,$2a$10$pgjaxDzSuc6XVFEeqvxQ5u90DKJnM/u7TJTcinAlFJVaavXMWf/Zi|userid1,$2a$10$61gNubgJJl9lh3nvQvY9X.x4e5ETWJJ7ao7ZhJEvmfJigov26Z6uq|userid2,$2a$10$G52y/3uhuhWAMy.bx9Se8uzWinmbJa.dlm1LW6bYPdPkkywLDPLiy",
268             "description": "List of id and base 64 encoded password.For each onboarding VNF - unique userid and password should be assigned and communicated to VNF owner. Password value should be base64 encoded in config here",
269             "policy_editable": false,
270             "sourced_at_deployment": true,
271             "designer_editable": true
272         },
273         {
274             "name": "collector.schema.checkflag",
275             "value": 1,
276             "description": "Schema check validation flag. When enabled, collector will validate input VES events against VES Schema defined on collector.schema.file ",
277             "sourced_at_deployment": false,
278             "policy_editable": false,
279             "designer_editable": false
280         },
281         {
282             "name": "collector.schema.file",
283             "value": "{\"v1\":\"./etc/CommonEventFormat_27.2.json\",\"v2\":\"./etc/CommonEventFormat_27.2.json\",\"v3\":\"./etc/CommonEventFormat_27.2.json\",\"v4\":\"./etc/CommonEventFormat_27.2.json\",\"v5\":\"./etc/CommonEventFormat_28.4.1.json\",\"v7\":\"./etc/CommonEventFormat_30.2.1_ONAP.json\"}",
284             "description": "VES schema file name per version used for validation",
285             "designer_editable": true,
286             "sourced_at_deployment": false,
287             "policy_editable": false
288         },
289         {
290             "name": "event.transform.flag",
291             "value": 1,
292             "description": "flag to enable tranformation rules defined under eventTransform.json; this is applicable when event tranformation rules preset should be activated for transforming <VES5.4 events to 5.4",
293             "sourced_at_deployment": false,
294             "policy_editable": false,
295             "designer_editable": false
296         },
297         {
298             "name": "tomcat.maxthreads",
299             "value": "200",
300             "description": "Tomcat control for concurrent request",
301             "sourced_at_deployment": false,
302             "policy_editable": false,
303             "designer_editable": false
304         },
305         {
306             "name": "collector.externalSchema.checkflag",
307             "value": 1,
308             "description": "Schema stndDefined validation flag. When enabled, collector will validate stndDefined fields in stndDefined domain events against mapped local schemas listed in file from property collector.externalSchema.mappingFileLocation.",
309             "sourced_at_deployment": false,
310             "policy_editable": false,
311             "designer_editable": true
312         },
313         {
314             "name": "collector.externalSchema.schemasLocation",
315             "value": "./etc/externalRepo/",
316             "description": "External schemas repository. Path to schemas storage directory.",
317             "sourced_at_deployment": false,
318             "policy_editable": false,
319             "designer_editable": false
320         },
321         {
322             "name": "collector.externalSchema.mappingFileLocation",
323             "value": "./etc/externalRepo/schema-map.json",
324             "description": "Path to JSON file containing mapping of externally located stndDefined schemas to local schema files.",
325             "sourced_at_deployment": false,
326             "policy_editable": false,
327             "designer_editable": false
328         },
329         {
330             "name": "event.externalSchema.schemaRefPath",
331             "value": "$.event.stndDefinedFields.schemaReference",
332             "description": "An internal path from validated JSON. Defines which field is taken as public schema reference, which is later mapped.",
333             "sourced_at_deployment": false,
334             "policy_editable": false,
335             "designer_editable": false
336         },
337         {
338             "name": "event.externalSchema.stndDefinedDataPath",
339             "value": "$.event.stndDefinedFields.data",
340             "description": "An internal path from validated JSON. Defines which field of event will be validated during stndDefined validation.",
341             "sourced_at_deployment": false,
342             "policy_editable": false,
343             "designer_editable": false
344         },
345         {
346             "name": "collector.description.api.version.location",
347             "value": "etc/api_version_description.json",
348             "description": "Path to the file containing description of api versions",
349             "sourced_at_deployment": false,
350             "policy_editable": false,
351             "designer_editable": false
352         }
353     ],
354     "auxilary": {
355         "helm": {
356             "service": {
357                 "type": "NodePort",
358                 "name": "dcae-ves-collector",
359                 "has_internal_only_ports": true,
360                 "ports": [{
361                     "name": "http",
362                     "port": 8443,
363                     "plain_port": 8080,
364                     "port_protocol": "http",
365                     "nodePort": 17,
366                     "useNodePortExt": true
367                 }]
368             }
369         },
370         "healthcheck": {
371             "type": "HTTP",
372             "interval": "15s",
373             "timeout": "1s",
374             "port": 8080,
375             "endpoint": "/healthcheck"
376         },
377         "volumes": [{
378             "config_volume": {
379                 "name": "dcae-external-repo-configmap-schema-map"
380             },
381             "container": {
382                 "bind": "/opt/app/VESCollector/etc/externalRepo/"
383             }
384         }, {
385             "config_volume": {
386                 "name": "dcae-external-repo-configmap-sa88-rel16"
387             },
388             "container": {
389                 "bind": "/opt/app/VESCollector/etc/externalRepo/3gpp/rep/sa5/MnS/blob/SA88-Rel16/OpenAPI/"
390             }
391         }],
392         "ports": [
393             "8080:0",
394             "8443:0"
395         ],
396         "log_info": {
397             "log_directory": "/opt/app/VESCollector/logs/"
398         },
399         "tls_info": {
400             "cert_directory": "/opt/app/dcae-certificate/",
401             "use_tls": true,
402             "use_external_tls": false
403         }
404     },
405     "artifacts": [{
406         "type": "docker image",
407         "uri": "onap/org.onap.dcaegen2.collectors.ves.vescollector:1.10.1"
408     }]
409 }
410 ,
411    "owner": "onboard_dev"
412  }