1 .. This work is licensed under a Creative Commons Attribution 4.0 International License.
2 .. SPDX-License-Identifier: CC-BY-4.0
3 .. Copyright (C) 2021 AT&T Intellectual Property. All rights reserved.
9 PM REST Manager library follows `VES Event Listener 7.1 <https://docs.onap.org/projects/onap-vnfrqts-requirements/en/latest/Chapter8/ves7_1spec.html#>`_
14 **Datatype: commonEventHeader**
36 - Unique id generated from combination of multiple fields, selection of fields configurable via mapping config file.
42 - value configurable via mapping config file.
48 - value configurable via mapping config file.
49 * - reportingEntityName
54 - value configurable via mapping config file.
55 * - startEpochMicrosec
60 - System time at the moment of notification generation
66 - System time at the moment of notification generation
72 - incremental per line on csv file. Each file will start processing will start from sequence 0.
78 - value configurable via mapping config file.
84 - Library only enforces mandatory fields for 4.1 version
85 * - vesEventListenerVersion
90 - Library only enforces mandatory fields for 7.1 version
114 - value configurable via mapping config file.
115 * - reportingEntityId
117 - ONAP-NF-OAM-SOME-VENDOR-ADAPTER
120 - value configurable via mapping config file.
121 * - internalHeader Fields
141 **Datatype: measurementFields**
157 - values configurable via mapping config file.
158 * - additionalMeasurements
163 - values configurable via mapping config file.
164 * - measurementInterval
169 - value configurable via mapping config file.
170 * - measurementFieldsVersion
177 REST PM Configuration
178 ---------------------
180 **Rest Adapter configuration**
182 Configuration file **application.yml** contains global definitions required to be consumed by PM REST adapters services.
184 - **token-api-username** Defines the username to be used for login
185 - **synchronization-time-start** Defines the time for execution of pull of PM files and forwarding as VES Message
186 - **synchronization-time-frequency** Defines the time for execution of pull of PM files and forwarding as VES Message
187 - **mapping-config-path** Defines the path where mapping configuration file is located
189 **Rest SB Client Adapter configuration**
191 - **ran-token-endpoint** Defines rand endpoint from where token will be obtained
192 - **ran-pm-endpoint:** Defines rand endpoint from where ZIP with PM files will be GET.
193 - **ran-time-zone-offset-endpoint** Defines rand endpoint from where we GET the timezone from the device.
195 .. literalinclude:: pm-rest-manager.yaml
198 Mapping Configuration
199 ---------------------
201 Configuration file **pm-ves-message-mapping.yaml** contains all definitions required to define the mapping
202 from ZIP file with collection of csv files information to VES Message format
205 File name can be changed as long it matches with configured **mapping-config-path** and file is in yaml format
207 - **reporting-entity-name** Reporting entity name assigned to the event
208 - **reporting-entity-id** Reporting entity id assigned to the event
209 - **nf-vendor-name** Vendor name assigned to the event
210 - **event-source-type** Source type assigned to the event
211 - **event-name** Event name assigned to the event
212 - **measurement-interval** Interval over which measurements are being reported in seconds
213 - **priority** Priority assigned to the event
216 - **source-name** Column names containing containing information
217 - **source-name-regex** The regular expression to which source-name string value is to be matched and removed
218 - **event-id** Collection of columns names to generate an uniqueID
219 - **additional-fields** Collection of columns names containing information to be attached
220 - **additional-measurements-name** Name assigned to AdditionalMeasurement array
221 - **additional-measurements** Collection of columns names containing information to be attached
222 - **batch-size** File will be processed and send in small batches event notifications. Size define the number of events which will contain each notification
224 .. literalinclude:: pm-ves-message-mapping.yaml
227 PM Adapter Configuration
228 ------------------------
230 PM Adapters can be instantiated at runtime
232 **Create a PM Adapter**
234 **POST** ``https://<SERVICE_IP>:<SERVICE_PORT>/adapters/adapter``
236 .. literalinclude:: create-adapter.json
241 **GET** ``https://<SERVICE_IP>:<SERVICE_PORT>/adapters/``
243 .. literalinclude:: get-adapters.json
247 **Delete PM Adapter**
249 **DELETE** ``https://<SERVICE_IP>:<SERVICE_PORT>/adapters/adapter/10.53.40.50``