diff options
35 files changed, 4475 insertions, 837 deletions
diff --git a/docs/development/devtools/apex-s3p-results/apex_metrics_after_72h.txt b/docs/development/devtools/apex-s3p-results/apex_metrics_after_72h.txt index 38fe5054..56f13907 100644 --- a/docs/development/devtools/apex-s3p-results/apex_metrics_after_72h.txt +++ b/docs/development/devtools/apex-s3p-results/apex_metrics_after_72h.txt @@ -1,173 +1,316 @@ -# HELP jvm_info VM version info -# TYPE jvm_info gauge -jvm_info{runtime="OpenJDK Runtime Environment",vendor="Alpine",version="11.0.9+11-alpine-r1",} 1.0 +# HELP jvm_threads_current Current thread count of a JVM +# TYPE jvm_threads_current gauge +jvm_threads_current 32.0 +# HELP jvm_threads_daemon Daemon thread count of a JVM +# TYPE jvm_threads_daemon gauge +jvm_threads_daemon 17.0 +# HELP jvm_threads_peak Peak thread count of a JVM +# TYPE jvm_threads_peak gauge +jvm_threads_peak 81.0 +# HELP jvm_threads_started_total Started thread count of a JVM +# TYPE jvm_threads_started_total counter +jvm_threads_started_total 423360.0 +# HELP jvm_threads_deadlocked Cycles of JVM-threads that are in deadlock waiting to acquire object monitors or ownable synchronizers +# TYPE jvm_threads_deadlocked gauge +jvm_threads_deadlocked 0.0 +# HELP jvm_threads_deadlocked_monitor Cycles of JVM-threads that are in deadlock waiting to acquire object monitors +# TYPE jvm_threads_deadlocked_monitor gauge +jvm_threads_deadlocked_monitor 0.0 +# HELP jvm_threads_state Current count of threads by state +# TYPE jvm_threads_state gauge +jvm_threads_state{state="BLOCKED",} 0.0 +jvm_threads_state{state="TIMED_WAITING",} 11.0 +jvm_threads_state{state="NEW",} 0.0 +jvm_threads_state{state="RUNNABLE",} 7.0 +jvm_threads_state{state="TERMINATED",} 0.0 +jvm_threads_state{state="WAITING",} 14.0 +# HELP process_cpu_seconds_total Total user and system CPU time spent in seconds. +# TYPE process_cpu_seconds_total counter +process_cpu_seconds_total 16418.06 +# HELP process_start_time_seconds Start time of the process since unix epoch in seconds. +# TYPE process_start_time_seconds gauge +process_start_time_seconds 1.651077494162E9 +# HELP process_open_fds Number of open file descriptors. +# TYPE process_open_fds gauge +process_open_fds 357.0 +# HELP process_max_fds Maximum number of open file descriptors. +# TYPE process_max_fds gauge +process_max_fds 1048576.0 +# HELP process_virtual_memory_bytes Virtual memory size in bytes. +# TYPE process_virtual_memory_bytes gauge +process_virtual_memory_bytes 1.0165403648E10 +# HELP process_resident_memory_bytes Resident memory size in bytes. +# TYPE process_resident_memory_bytes gauge +process_resident_memory_bytes 5.58034944E8 +# HELP pdpa_engine_event_executions Total number of APEX events processed by the engine. +# TYPE pdpa_engine_event_executions gauge +pdpa_engine_event_executions{engine_instance_id="NSOApexEngine-1:0.0.1",} 30743.0 +pdpa_engine_event_executions{engine_instance_id="NSOApexEngine-4:0.0.1",} 30766.0 +pdpa_engine_event_executions{engine_instance_id="NSOApexEngine-3:0.0.1",} 30722.0 +pdpa_engine_event_executions{engine_instance_id="NSOApexEngine-0:0.0.1",} 30727.0 +pdpa_engine_event_executions{engine_instance_id="NSOApexEngine-2:0.0.1",} 30742.0 +# HELP jvm_buffer_pool_used_bytes Used bytes of a given JVM buffer pool. +# TYPE jvm_buffer_pool_used_bytes gauge +jvm_buffer_pool_used_bytes{pool="mapped",} 0.0 +jvm_buffer_pool_used_bytes{pool="direct",} 3.3833905E7 +# HELP jvm_buffer_pool_capacity_bytes Bytes capacity of a given JVM buffer pool. +# TYPE jvm_buffer_pool_capacity_bytes gauge +jvm_buffer_pool_capacity_bytes{pool="mapped",} 0.0 +jvm_buffer_pool_capacity_bytes{pool="direct",} 3.3833904E7 +# HELP jvm_buffer_pool_used_buffers Used buffers of a given JVM buffer pool. +# TYPE jvm_buffer_pool_used_buffers gauge +jvm_buffer_pool_used_buffers{pool="mapped",} 0.0 +jvm_buffer_pool_used_buffers{pool="direct",} 15.0 +# HELP pdpa_policy_executions_total The total number of TOSCA policy executions. +# TYPE pdpa_policy_executions_total counter +# HELP pdpa_policy_deployments_total The total number of policy deployments. +# TYPE pdpa_policy_deployments_total counter +pdpa_policy_deployments_total{operation="deploy",status="TOTAL",} 5.0 +pdpa_policy_deployments_total{operation="undeploy",status="TOTAL",} 5.0 +pdpa_policy_deployments_total{operation="undeploy",status="SUCCESS",} 5.0 +pdpa_policy_deployments_total{operation="deploy",status="SUCCESS",} 5.0 +# HELP pdpa_engine_average_execution_time_seconds Average time taken to execute an APEX policy in seconds. +# TYPE pdpa_engine_average_execution_time_seconds gauge +pdpa_engine_average_execution_time_seconds{engine_instance_id="NSOApexEngine-1:0.0.1",} 0.00515235988680349 +pdpa_engine_average_execution_time_seconds{engine_instance_id="NSOApexEngine-4:0.0.1",} 0.00521845543782099 +pdpa_engine_average_execution_time_seconds{engine_instance_id="NSOApexEngine-3:0.0.1",} 0.005200800729119198 +pdpa_engine_average_execution_time_seconds{engine_instance_id="NSOApexEngine-0:0.0.1",} 0.005191785725908804 +pdpa_engine_average_execution_time_seconds{engine_instance_id="NSOApexEngine-2:0.0.1",} 0.0051784854596317684 +# HELP pdpa_engine_state State of the APEX engine as integers mapped as - 0:UNDEFINED, 1:STOPPED, 2:READY, 3:EXECUTING, 4:STOPPING +# TYPE pdpa_engine_state gauge +pdpa_engine_state{engine_instance_id="NSOApexEngine-1:0.0.1",} 1.0 +pdpa_engine_state{engine_instance_id="NSOApexEngine-4:0.0.1",} 1.0 +pdpa_engine_state{engine_instance_id="NSOApexEngine-3:0.0.1",} 1.0 +pdpa_engine_state{engine_instance_id="NSOApexEngine-0:0.0.1",} 1.0 +pdpa_engine_state{engine_instance_id="NSOApexEngine-2:0.0.1",} 1.0 +# HELP jvm_gc_collection_seconds Time spent in a given JVM garbage collector in seconds. +# TYPE jvm_gc_collection_seconds summary +jvm_gc_collection_seconds_count{gc="Copy",} 5883.0 +jvm_gc_collection_seconds_sum{gc="Copy",} 97.808 +jvm_gc_collection_seconds_count{gc="MarkSweepCompact",} 3.0 +jvm_gc_collection_seconds_sum{gc="MarkSweepCompact",} 0.357 +# HELP pdpa_engine_last_start_timestamp_epoch Epoch timestamp of the instance when engine was last started. +# TYPE pdpa_engine_last_start_timestamp_epoch gauge +pdpa_engine_last_start_timestamp_epoch{engine_instance_id="NSOApexEngine-1:0.0.1",} 0.0 +pdpa_engine_last_start_timestamp_epoch{engine_instance_id="NSOApexEngine-4:0.0.1",} 0.0 +pdpa_engine_last_start_timestamp_epoch{engine_instance_id="NSOApexEngine-3:0.0.1",} 0.0 +pdpa_engine_last_start_timestamp_epoch{engine_instance_id="NSOApexEngine-0:0.0.1",} 0.0 +pdpa_engine_last_start_timestamp_epoch{engine_instance_id="NSOApexEngine-2:0.0.1",} 0.0 +# HELP jvm_memory_pool_allocated_bytes_total Total bytes allocated in a given JVM memory pool. Only updated after GC, not continuously. +# TYPE jvm_memory_pool_allocated_bytes_total counter +jvm_memory_pool_allocated_bytes_total{pool="Eden Space",} 8.29800936264E11 +jvm_memory_pool_allocated_bytes_total{pool="CodeHeap 'profiled nmethods'",} 4.839232E7 +jvm_memory_pool_allocated_bytes_total{pool="CodeHeap 'non-profiled nmethods'",} 3.5181056E7 +jvm_memory_pool_allocated_bytes_total{pool="Compressed Class Space",} 8194120.0 +jvm_memory_pool_allocated_bytes_total{pool="Metaspace",} 7.7729144E7 +jvm_memory_pool_allocated_bytes_total{pool="Tenured Gen",} 1.41180272E8 +jvm_memory_pool_allocated_bytes_total{pool="Survivor Space",} 4.78761928E8 +jvm_memory_pool_allocated_bytes_total{pool="CodeHeap 'non-nmethods'",} 1392128.0 +# HELP pdpa_engine_uptime Time elapsed since the engine was started. +# TYPE pdpa_engine_uptime gauge +pdpa_engine_uptime{engine_instance_id="NSOApexEngine-1:0.0.1",} 259200.522 +pdpa_engine_uptime{engine_instance_id="NSOApexEngine-4:0.0.1",} 259200.751 +pdpa_engine_uptime{engine_instance_id="NSOApexEngine-3:0.0.1",} 259200.678 +pdpa_engine_uptime{engine_instance_id="NSOApexEngine-0:0.0.1",} 259200.439 +pdpa_engine_uptime{engine_instance_id="NSOApexEngine-2:0.0.1",} 259200.601 +# HELP pdpa_engine_last_execution_time Time taken to execute the last APEX policy in seconds. +# TYPE pdpa_engine_last_execution_time histogram +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-1:0.0.1",le="0.005",} 24726.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-1:0.0.1",le="0.01",} 50195.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-1:0.0.1",le="0.025",} 70836.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-1:0.0.1",le="0.05",} 71947.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-1:0.0.1",le="0.075",} 71996.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-1:0.0.1",le="0.1",} 72001.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-1:0.0.1",le="0.25",} 72002.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-1:0.0.1",le="0.5",} 72002.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-1:0.0.1",le="0.75",} 72002.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-1:0.0.1",le="1.0",} 72002.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-1:0.0.1",le="2.5",} 72002.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-1:0.0.1",le="5.0",} 72002.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-1:0.0.1",le="7.5",} 72002.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-1:0.0.1",le="10.0",} 72002.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-1:0.0.1",le="+Inf",} 72002.0 +pdpa_engine_last_execution_time_count{engine_instance_id="NSOApexEngine-1:0.0.1",} 72002.0 +pdpa_engine_last_execution_time_sum{engine_instance_id="NSOApexEngine-1:0.0.1",} 609.1939999998591 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-4:0.0.1",le="0.005",} 24512.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-4:0.0.1",le="0.01",} 50115.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-4:0.0.1",le="0.025",} 70746.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-4:0.0.1",le="0.05",} 71918.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-4:0.0.1",le="0.075",} 71966.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-4:0.0.1",le="0.1",} 71967.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-4:0.0.1",le="0.25",} 71967.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-4:0.0.1",le="0.5",} 71967.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-4:0.0.1",le="0.75",} 71967.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-4:0.0.1",le="1.0",} 71967.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-4:0.0.1",le="2.5",} 71967.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-4:0.0.1",le="5.0",} 71967.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-4:0.0.1",le="7.5",} 71967.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-4:0.0.1",le="10.0",} 71967.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-4:0.0.1",le="+Inf",} 71967.0 +pdpa_engine_last_execution_time_count{engine_instance_id="NSOApexEngine-4:0.0.1",} 71967.0 +pdpa_engine_last_execution_time_sum{engine_instance_id="NSOApexEngine-4:0.0.1",} 610.3469999998522 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-3:0.0.1",le="0.005",} 24607.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-3:0.0.1",le="0.01",} 50182.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-3:0.0.1",le="0.025",} 70791.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-3:0.0.1",le="0.05",} 71929.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-3:0.0.1",le="0.075",} 71965.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-3:0.0.1",le="0.1",} 71970.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-3:0.0.1",le="0.25",} 71970.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-3:0.0.1",le="0.5",} 71970.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-3:0.0.1",le="0.75",} 71970.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-3:0.0.1",le="1.0",} 71970.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-3:0.0.1",le="2.5",} 71970.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-3:0.0.1",le="5.0",} 71970.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-3:0.0.1",le="7.5",} 71970.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-3:0.0.1",le="10.0",} 71970.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-3:0.0.1",le="+Inf",} 71970.0 +pdpa_engine_last_execution_time_count{engine_instance_id="NSOApexEngine-3:0.0.1",} 71970.0 +pdpa_engine_last_execution_time_sum{engine_instance_id="NSOApexEngine-3:0.0.1",} 608.8539999998619 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-0:0.0.1",le="0.005",} 24623.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-0:0.0.1",le="0.01",} 50207.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-0:0.0.1",le="0.025",} 70783.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-0:0.0.1",le="0.05",} 71934.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-0:0.0.1",le="0.075",} 71981.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-0:0.0.1",le="0.1",} 71986.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-0:0.0.1",le="0.25",} 71988.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-0:0.0.1",le="0.5",} 71988.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-0:0.0.1",le="0.75",} 71988.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-0:0.0.1",le="1.0",} 71988.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-0:0.0.1",le="2.5",} 71988.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-0:0.0.1",le="5.0",} 71988.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-0:0.0.1",le="7.5",} 71988.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-0:0.0.1",le="10.0",} 71988.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-0:0.0.1",le="+Inf",} 71988.0 +pdpa_engine_last_execution_time_count{engine_instance_id="NSOApexEngine-0:0.0.1",} 71988.0 +pdpa_engine_last_execution_time_sum{engine_instance_id="NSOApexEngine-0:0.0.1",} 610.5579999998558 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-2:0.0.1",le="0.005",} 24594.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-2:0.0.1",le="0.01",} 50131.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-2:0.0.1",le="0.025",} 70816.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-2:0.0.1",le="0.05",} 71905.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-2:0.0.1",le="0.075",} 71959.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-2:0.0.1",le="0.1",} 71961.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-2:0.0.1",le="0.25",} 71962.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-2:0.0.1",le="0.5",} 71962.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-2:0.0.1",le="0.75",} 71962.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-2:0.0.1",le="1.0",} 71962.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-2:0.0.1",le="2.5",} 71962.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-2:0.0.1",le="5.0",} 71962.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-2:0.0.1",le="7.5",} 71962.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-2:0.0.1",le="10.0",} 71962.0 +pdpa_engine_last_execution_time_bucket{engine_instance_id="NSOApexEngine-2:0.0.1",le="+Inf",} 71962.0 +pdpa_engine_last_execution_time_count{engine_instance_id="NSOApexEngine-2:0.0.1",} 71962.0 +pdpa_engine_last_execution_time_sum{engine_instance_id="NSOApexEngine-2:0.0.1",} 608.3549999998555 # HELP jvm_memory_objects_pending_finalization The number of objects waiting in the finalizer queue. # TYPE jvm_memory_objects_pending_finalization gauge jvm_memory_objects_pending_finalization 0.0 # HELP jvm_memory_bytes_used Used bytes of a given JVM memory area. # TYPE jvm_memory_bytes_used gauge -jvm_memory_bytes_used{area="heap",} 1.8570308E8 -jvm_memory_bytes_used{area="nonheap",} 1.1990352E8 +jvm_memory_bytes_used{area="heap",} 1.90274552E8 +jvm_memory_bytes_used{area="nonheap",} 1.16193856E8 # HELP jvm_memory_bytes_committed Committed (bytes) of a given JVM memory area. # TYPE jvm_memory_bytes_committed gauge -jvm_memory_bytes_committed{area="heap",} 2.55655936E8 -jvm_memory_bytes_committed{area="nonheap",} 1.65216256E8 +jvm_memory_bytes_committed{area="heap",} 5.10984192E8 +jvm_memory_bytes_committed{area="nonheap",} 1.56127232E8 # HELP jvm_memory_bytes_max Max (bytes) of a given JVM memory area. # TYPE jvm_memory_bytes_max gauge -jvm_memory_bytes_max{area="heap",} 4.064673792E9 +jvm_memory_bytes_max{area="heap",} 8.151564288E9 jvm_memory_bytes_max{area="nonheap",} -1.0 # HELP jvm_memory_bytes_init Initial bytes of a given JVM memory area. # TYPE jvm_memory_bytes_init gauge -jvm_memory_bytes_init{area="heap",} 2.64241152E8 +jvm_memory_bytes_init{area="heap",} 5.28482304E8 jvm_memory_bytes_init{area="nonheap",} 7667712.0 # HELP jvm_memory_pool_bytes_used Used bytes of a given JVM memory pool. # TYPE jvm_memory_pool_bytes_used gauge -jvm_memory_pool_bytes_used{pool="CodeHeap 'non-nmethods'",} 1357312.0 -jvm_memory_pool_bytes_used{pool="Metaspace",} 8.2427648E7 -jvm_memory_pool_bytes_used{pool="Tenured Gen",} 1.5998668E8 -jvm_memory_pool_bytes_used{pool="CodeHeap 'profiled nmethods'",} 4413696.0 -jvm_memory_pool_bytes_used{pool="Eden Space",} 2.1659816E7 -jvm_memory_pool_bytes_used{pool="Survivor Space",} 4056584.0 -jvm_memory_pool_bytes_used{pool="Compressed Class Space",} 8293152.0 -jvm_memory_pool_bytes_used{pool="CodeHeap 'non-profiled nmethods'",} 2.3411712E7 +jvm_memory_pool_bytes_used{pool="CodeHeap 'non-nmethods'",} 1353600.0 +jvm_memory_pool_bytes_used{pool="Metaspace",} 7.7729144E7 +jvm_memory_pool_bytes_used{pool="Tenured Gen",} 1.41180272E8 +jvm_memory_pool_bytes_used{pool="CodeHeap 'profiled nmethods'",} 4831104.0 +jvm_memory_pool_bytes_used{pool="Eden Space",} 4.5145032E7 +jvm_memory_pool_bytes_used{pool="Survivor Space",} 3949248.0 +jvm_memory_pool_bytes_used{pool="Compressed Class Space",} 8194120.0 +jvm_memory_pool_bytes_used{pool="CodeHeap 'non-profiled nmethods'",} 2.4085888E7 # HELP jvm_memory_pool_bytes_committed Committed bytes of a given JVM memory pool. # TYPE jvm_memory_pool_bytes_committed gauge jvm_memory_pool_bytes_committed{pool="CodeHeap 'non-nmethods'",} 2555904.0 -jvm_memory_pool_bytes_committed{pool="Metaspace",} 9.4896128E7 -jvm_memory_pool_bytes_committed{pool="Tenured Gen",} 1.76160768E8 -jvm_memory_pool_bytes_committed{pool="CodeHeap 'profiled nmethods'",} 3.2309248E7 -jvm_memory_pool_bytes_committed{pool="Eden Space",} 7.0713344E7 -jvm_memory_pool_bytes_committed{pool="Survivor Space",} 8781824.0 -jvm_memory_pool_bytes_committed{pool="Compressed Class Space",} 1.0223616E7 -jvm_memory_pool_bytes_committed{pool="CodeHeap 'non-profiled nmethods'",} 2.523136E7 +jvm_memory_pool_bytes_committed{pool="Metaspace",} 8.5348352E7 +jvm_memory_pool_bytes_committed{pool="Tenured Gen",} 3.52321536E8 +jvm_memory_pool_bytes_committed{pool="CodeHeap 'profiled nmethods'",} 3.3030144E7 +jvm_memory_pool_bytes_committed{pool="Eden Space",} 1.41033472E8 +jvm_memory_pool_bytes_committed{pool="Survivor Space",} 1.7629184E7 +jvm_memory_pool_bytes_committed{pool="Compressed Class Space",} 9175040.0 +jvm_memory_pool_bytes_committed{pool="CodeHeap 'non-profiled nmethods'",} 2.6017792E7 # HELP jvm_memory_pool_bytes_max Max bytes of a given JVM memory pool. # TYPE jvm_memory_pool_bytes_max gauge jvm_memory_pool_bytes_max{pool="CodeHeap 'non-nmethods'",} 5828608.0 jvm_memory_pool_bytes_max{pool="Metaspace",} -1.0 -jvm_memory_pool_bytes_max{pool="Tenured Gen",} 2.803236864E9 +jvm_memory_pool_bytes_max{pool="Tenured Gen",} 5.621809152E9 jvm_memory_pool_bytes_max{pool="CodeHeap 'profiled nmethods'",} 1.22912768E8 -jvm_memory_pool_bytes_max{pool="Eden Space",} 1.12132096E9 -jvm_memory_pool_bytes_max{pool="Survivor Space",} 1.40115968E8 +jvm_memory_pool_bytes_max{pool="Eden Space",} 2.248671232E9 +jvm_memory_pool_bytes_max{pool="Survivor Space",} 2.81083904E8 jvm_memory_pool_bytes_max{pool="Compressed Class Space",} 1.073741824E9 jvm_memory_pool_bytes_max{pool="CodeHeap 'non-profiled nmethods'",} 1.22916864E8 # HELP jvm_memory_pool_bytes_init Initial bytes of a given JVM memory pool. # TYPE jvm_memory_pool_bytes_init gauge jvm_memory_pool_bytes_init{pool="CodeHeap 'non-nmethods'",} 2555904.0 jvm_memory_pool_bytes_init{pool="Metaspace",} 0.0 -jvm_memory_pool_bytes_init{pool="Tenured Gen",} 1.76160768E8 +jvm_memory_pool_bytes_init{pool="Tenured Gen",} 3.52321536E8 jvm_memory_pool_bytes_init{pool="CodeHeap 'profiled nmethods'",} 2555904.0 -jvm_memory_pool_bytes_init{pool="Eden Space",} 7.0516736E7 -jvm_memory_pool_bytes_init{pool="Survivor Space",} 8781824.0 +jvm_memory_pool_bytes_init{pool="Eden Space",} 1.41033472E8 +jvm_memory_pool_bytes_init{pool="Survivor Space",} 1.7563648E7 jvm_memory_pool_bytes_init{pool="Compressed Class Space",} 0.0 jvm_memory_pool_bytes_init{pool="CodeHeap 'non-profiled nmethods'",} 2555904.0 # HELP jvm_memory_pool_collection_used_bytes Used bytes after last collection of a given JVM memory pool. # TYPE jvm_memory_pool_collection_used_bytes gauge -jvm_memory_pool_collection_used_bytes{pool="Tenured Gen",} 1.00182296E8 +jvm_memory_pool_collection_used_bytes{pool="Tenured Gen",} 3.853812E7 jvm_memory_pool_collection_used_bytes{pool="Eden Space",} 0.0 -jvm_memory_pool_collection_used_bytes{pool="Survivor Space",} 4056584.0 +jvm_memory_pool_collection_used_bytes{pool="Survivor Space",} 3949248.0 # HELP jvm_memory_pool_collection_committed_bytes Committed after last collection bytes of a given JVM memory pool. # TYPE jvm_memory_pool_collection_committed_bytes gauge -jvm_memory_pool_collection_committed_bytes{pool="Tenured Gen",} 1.76357376E8 -jvm_memory_pool_collection_committed_bytes{pool="Eden Space",} 7.0713344E7 -jvm_memory_pool_collection_committed_bytes{pool="Survivor Space",} 8781824.0 +jvm_memory_pool_collection_committed_bytes{pool="Tenured Gen",} 3.52321536E8 +jvm_memory_pool_collection_committed_bytes{pool="Eden Space",} 1.41033472E8 +jvm_memory_pool_collection_committed_bytes{pool="Survivor Space",} 1.7629184E7 # HELP jvm_memory_pool_collection_max_bytes Max bytes after last collection of a given JVM memory pool. # TYPE jvm_memory_pool_collection_max_bytes gauge -jvm_memory_pool_collection_max_bytes{pool="Tenured Gen",} 2.803236864E9 -jvm_memory_pool_collection_max_bytes{pool="Eden Space",} 1.12132096E9 -jvm_memory_pool_collection_max_bytes{pool="Survivor Space",} 1.40115968E8 +jvm_memory_pool_collection_max_bytes{pool="Tenured Gen",} 5.621809152E9 +jvm_memory_pool_collection_max_bytes{pool="Eden Space",} 2.248671232E9 +jvm_memory_pool_collection_max_bytes{pool="Survivor Space",} 2.81083904E8 # HELP jvm_memory_pool_collection_init_bytes Initial after last collection bytes of a given JVM memory pool. # TYPE jvm_memory_pool_collection_init_bytes gauge -jvm_memory_pool_collection_init_bytes{pool="Tenured Gen",} 1.76160768E8 -jvm_memory_pool_collection_init_bytes{pool="Eden Space",} 7.0516736E7 -jvm_memory_pool_collection_init_bytes{pool="Survivor Space",} 8781824.0 -# HELP jvm_memory_pool_allocated_bytes_total Total bytes allocated in a given JVM memory pool. Only updated after GC, not continuously. -# TYPE jvm_memory_pool_allocated_bytes_total counter -jvm_memory_pool_allocated_bytes_total{pool="Eden Space",} 7.81369756592E11 -jvm_memory_pool_allocated_bytes_total{pool="CodeHeap 'profiled nmethods'",} 5.1833472E7 -jvm_memory_pool_allocated_bytes_total{pool="CodeHeap 'non-profiled nmethods'",} 3.6370048E7 -jvm_memory_pool_allocated_bytes_total{pool="Compressed Class Space",} 8986056.0 -jvm_memory_pool_allocated_bytes_total{pool="Metaspace",} 8.6383264E7 -jvm_memory_pool_allocated_bytes_total{pool="Tenured Gen",} 3.84983864E8 -jvm_memory_pool_allocated_bytes_total{pool="Survivor Space",} 1.506631592E9 -jvm_memory_pool_allocated_bytes_total{pool="CodeHeap 'non-nmethods'",} 1439232.0 -# HELP jvm_gc_collection_seconds Time spent in a given JVM garbage collector in seconds. -# TYPE jvm_gc_collection_seconds summary -jvm_gc_collection_seconds_count{gc="Copy",} 11053.0 -jvm_gc_collection_seconds_sum{gc="Copy",} 90.383 -jvm_gc_collection_seconds_count{gc="MarkSweepCompact",} 6.0 -jvm_gc_collection_seconds_sum{gc="MarkSweepCompact",} 1.44 -# HELP jvm_threads_current Current thread count of a JVM -# TYPE jvm_threads_current gauge -jvm_threads_current 31.0 -# HELP jvm_threads_daemon Daemon thread count of a JVM -# TYPE jvm_threads_daemon gauge -jvm_threads_daemon 16.0 -# HELP jvm_threads_peak Peak thread count of a JVM -# TYPE jvm_threads_peak gauge -jvm_threads_peak 80.0 -# HELP jvm_threads_started_total Started thread count of a JVM -# TYPE jvm_threads_started_total counter -jvm_threads_started_total 320599.0 -# HELP jvm_threads_deadlocked Cycles of JVM-threads that are in deadlock waiting to acquire object monitors or ownable synchronizers -# TYPE jvm_threads_deadlocked gauge -jvm_threads_deadlocked 0.0 -# HELP jvm_threads_deadlocked_monitor Cycles of JVM-threads that are in deadlock waiting to acquire object monitors -# TYPE jvm_threads_deadlocked_monitor gauge -jvm_threads_deadlocked_monitor 0.0 -# HELP jvm_threads_state Current count of threads by state -# TYPE jvm_threads_state gauge -jvm_threads_state{state="BLOCKED",} 0.0 -jvm_threads_state{state="WAITING",} 13.0 -jvm_threads_state{state="RUNNABLE",} 7.0 -jvm_threads_state{state="TIMED_WAITING",} 11.0 -jvm_threads_state{state="TERMINATED",} 0.0 -jvm_threads_state{state="NEW",} 0.0 -# HELP jvm_buffer_pool_used_bytes Used bytes of a given JVM buffer pool. -# TYPE jvm_buffer_pool_used_bytes gauge -jvm_buffer_pool_used_bytes{pool="mapped",} 0.0 -jvm_buffer_pool_used_bytes{pool="direct",} 3.385029E7 -# HELP jvm_buffer_pool_capacity_bytes Bytes capacity of a given JVM buffer pool. -# TYPE jvm_buffer_pool_capacity_bytes gauge -jvm_buffer_pool_capacity_bytes{pool="mapped",} 0.0 -jvm_buffer_pool_capacity_bytes{pool="direct",} 3.3850289E7 -# HELP jvm_buffer_pool_used_buffers Used buffers of a given JVM buffer pool. -# TYPE jvm_buffer_pool_used_buffers gauge -jvm_buffer_pool_used_buffers{pool="mapped",} 0.0 -jvm_buffer_pool_used_buffers{pool="direct",} 16.0 +jvm_memory_pool_collection_init_bytes{pool="Tenured Gen",} 3.52321536E8 +jvm_memory_pool_collection_init_bytes{pool="Eden Space",} 1.41033472E8 +jvm_memory_pool_collection_init_bytes{pool="Survivor Space",} 1.7563648E7 # HELP jvm_classes_loaded The number of classes that are currently loaded in the JVM # TYPE jvm_classes_loaded gauge -jvm_classes_loaded 11238.0 +jvm_classes_loaded 11386.0 # HELP jvm_classes_loaded_total The total number of classes that have been loaded since the JVM has started execution # TYPE jvm_classes_loaded_total counter -jvm_classes_loaded_total 12239.0 +jvm_classes_loaded_total 11448.0 # HELP jvm_classes_unloaded_total The total number of classes that have been unloaded since the JVM has started execution # TYPE jvm_classes_unloaded_total counter -jvm_classes_unloaded_total 1001.0 -# HELP process_cpu_seconds_total Total user and system CPU time spent in seconds. -# TYPE process_cpu_seconds_total counter -process_cpu_seconds_total 9308.0 -# HELP process_start_time_seconds Start time of the process since unix epoch in seconds. -# TYPE process_start_time_seconds gauge -process_start_time_seconds 1.633111663176E9 -# HELP process_open_fds Number of open file descriptors. -# TYPE process_open_fds gauge -process_open_fds 354.0 -# HELP process_max_fds Maximum number of open file descriptors. -# TYPE process_max_fds gauge -process_max_fds 1048576.0 -# HELP process_virtual_memory_bytes Virtual memory size in bytes. -# TYPE process_virtual_memory_bytes gauge -process_virtual_memory_bytes 5.933633536E9 -# HELP process_resident_memory_bytes Resident memory size in bytes. -# TYPE process_resident_memory_bytes gauge -process_resident_memory_bytes 5.2523008E8 +jvm_classes_unloaded_total 62.0 +# HELP jvm_info VM version info +# TYPE jvm_info gauge +jvm_info{runtime="OpenJDK Runtime Environment",vendor="Alpine",version="11.0.9+11-alpine-r1",} 1.0 # HELP jvm_memory_pool_allocated_bytes_created Total bytes allocated in a given JVM memory pool. Only updated after GC, not continuously. # TYPE jvm_memory_pool_allocated_bytes_created gauge -jvm_memory_pool_allocated_bytes_created{pool="Eden Space",} 1.633111669968E9 -jvm_memory_pool_allocated_bytes_created{pool="CodeHeap 'profiled nmethods'",} 1.633111669942E9 -jvm_memory_pool_allocated_bytes_created{pool="CodeHeap 'non-profiled nmethods'",} 1.633111669968E9 -jvm_memory_pool_allocated_bytes_created{pool="Compressed Class Space",} 1.633111669968E9 -jvm_memory_pool_allocated_bytes_created{pool="Metaspace",} 1.633111669968E9 -jvm_memory_pool_allocated_bytes_created{pool="Tenured Gen",} 1.633111669968E9 -jvm_memory_pool_allocated_bytes_created{pool="Survivor Space",} 1.633111669968E9 -jvm_memory_pool_allocated_bytes_created{pool="CodeHeap 'non-nmethods'",} 1.633111669968E9 +jvm_memory_pool_allocated_bytes_created{pool="Eden Space",} 1.651077501662E9 +jvm_memory_pool_allocated_bytes_created{pool="CodeHeap 'profiled nmethods'",} 1.651077501657E9 +jvm_memory_pool_allocated_bytes_created{pool="CodeHeap 'non-profiled nmethods'",} 1.651077501662E9 +jvm_memory_pool_allocated_bytes_created{pool="Compressed Class Space",} 1.651077501662E9 +jvm_memory_pool_allocated_bytes_created{pool="Metaspace",} 1.651077501662E9 +jvm_memory_pool_allocated_bytes_created{pool="Tenured Gen",} 1.651077501662E9 +jvm_memory_pool_allocated_bytes_created{pool="Survivor Space",} 1.651077501662E9 +jvm_memory_pool_allocated_bytes_created{pool="CodeHeap 'non-nmethods'",} 1.651077501662E9 +# HELP pdpa_engine_last_execution_time_created Time taken to execute the last APEX policy in seconds. +# TYPE pdpa_engine_last_execution_time_created gauge +pdpa_engine_last_execution_time_created{engine_instance_id="NSOApexEngine-1:0.0.1",} 1.651080501294E9 +pdpa_engine_last_execution_time_created{engine_instance_id="NSOApexEngine-4:0.0.1",} 1.651080501295E9 +pdpa_engine_last_execution_time_created{engine_instance_id="NSOApexEngine-3:0.0.1",} 1.651080501295E9 +pdpa_engine_last_execution_time_created{engine_instance_id="NSOApexEngine-0:0.0.1",} 1.651080501294E9 +pdpa_engine_last_execution_time_created{engine_instance_id="NSOApexEngine-2:0.0.1",} 1.651080501294E9 +# HELP pdpa_policy_deployments_created The total number of policy deployments. +# TYPE pdpa_policy_deployments_created gauge +pdpa_policy_deployments_created{operation="deploy",status="TOTAL",} 1.651080501289E9 +pdpa_policy_deployments_created{operation="undeploy",status="TOTAL",} 1.651081148331E9 +pdpa_policy_deployments_created{operation="undeploy",status="SUCCESS",} 1.651081148331E9 +pdpa_policy_deployments_created{operation="deploy",status="SUCCESS",} 1.651080501289E9 diff --git a/docs/development/devtools/apex-s3p-results/apex_metrics_before_72h.txt b/docs/development/devtools/apex-s3p-results/apex_metrics_before_72h.txt index 551bd824..4a3d8835 100644 --- a/docs/development/devtools/apex-s3p-results/apex_metrics_before_72h.txt +++ b/docs/development/devtools/apex-s3p-results/apex_metrics_before_72h.txt @@ -1,173 +1,175 @@ -# HELP jvm_info VM version info -# TYPE jvm_info gauge -jvm_info{runtime="OpenJDK Runtime Environment",vendor="Alpine",version="11.0.9+11-alpine-r1",} 1.0 +# HELP jvm_threads_current Current thread count of a JVM +# TYPE jvm_threads_current gauge +jvm_threads_current 31.0 +# HELP jvm_threads_daemon Daemon thread count of a JVM +# TYPE jvm_threads_daemon gauge +jvm_threads_daemon 16.0 +# HELP jvm_threads_peak Peak thread count of a JVM +# TYPE jvm_threads_peak gauge +jvm_threads_peak 31.0 +# HELP jvm_threads_started_total Started thread count of a JVM +# TYPE jvm_threads_started_total counter +jvm_threads_started_total 32.0 +# HELP jvm_threads_deadlocked Cycles of JVM-threads that are in deadlock waiting to acquire object monitors or ownable synchronizers +# TYPE jvm_threads_deadlocked gauge +jvm_threads_deadlocked 0.0 +# HELP jvm_threads_deadlocked_monitor Cycles of JVM-threads that are in deadlock waiting to acquire object monitors +# TYPE jvm_threads_deadlocked_monitor gauge +jvm_threads_deadlocked_monitor 0.0 +# HELP jvm_threads_state Current count of threads by state +# TYPE jvm_threads_state gauge +jvm_threads_state{state="BLOCKED",} 0.0 +jvm_threads_state{state="TIMED_WAITING",} 11.0 +jvm_threads_state{state="NEW",} 0.0 +jvm_threads_state{state="RUNNABLE",} 7.0 +jvm_threads_state{state="TERMINATED",} 0.0 +jvm_threads_state{state="WAITING",} 13.0 +# HELP jvm_gc_collection_seconds Time spent in a given JVM garbage collector in seconds. +# TYPE jvm_gc_collection_seconds summary +jvm_gc_collection_seconds_count{gc="Copy",} 2.0 +jvm_gc_collection_seconds_sum{gc="Copy",} 0.059 +jvm_gc_collection_seconds_count{gc="MarkSweepCompact",} 2.0 +jvm_gc_collection_seconds_sum{gc="MarkSweepCompact",} 0.185 +# HELP process_cpu_seconds_total Total user and system CPU time spent in seconds. +# TYPE process_cpu_seconds_total counter +process_cpu_seconds_total 38.14 +# HELP process_start_time_seconds Start time of the process since unix epoch in seconds. +# TYPE process_start_time_seconds gauge +process_start_time_seconds 1.651077494162E9 +# HELP process_open_fds Number of open file descriptors. +# TYPE process_open_fds gauge +process_open_fds 355.0 +# HELP process_max_fds Maximum number of open file descriptors. +# TYPE process_max_fds gauge +process_max_fds 1048576.0 +# HELP process_virtual_memory_bytes Virtual memory size in bytes. +# TYPE process_virtual_memory_bytes gauge +process_virtual_memory_bytes 1.0070171648E10 +# HELP process_resident_memory_bytes Resident memory size in bytes. +# TYPE process_resident_memory_bytes gauge +process_resident_memory_bytes 2.9052928E8 +# HELP jvm_buffer_pool_used_bytes Used bytes of a given JVM buffer pool. +# TYPE jvm_buffer_pool_used_bytes gauge +jvm_buffer_pool_used_bytes{pool="mapped",} 0.0 +jvm_buffer_pool_used_bytes{pool="direct",} 187432.0 +# HELP jvm_buffer_pool_capacity_bytes Bytes capacity of a given JVM buffer pool. +# TYPE jvm_buffer_pool_capacity_bytes gauge +jvm_buffer_pool_capacity_bytes{pool="mapped",} 0.0 +jvm_buffer_pool_capacity_bytes{pool="direct",} 187432.0 +# HELP jvm_buffer_pool_used_buffers Used buffers of a given JVM buffer pool. +# TYPE jvm_buffer_pool_used_buffers gauge +jvm_buffer_pool_used_buffers{pool="mapped",} 0.0 +jvm_buffer_pool_used_buffers{pool="direct",} 9.0 +# HELP jvm_memory_pool_allocated_bytes_total Total bytes allocated in a given JVM memory pool. Only updated after GC, not continuously. +# TYPE jvm_memory_pool_allocated_bytes_total counter +jvm_memory_pool_allocated_bytes_total{pool="Eden Space",} 3.035482E8 +jvm_memory_pool_allocated_bytes_total{pool="CodeHeap 'profiled nmethods'",} 9772800.0 +jvm_memory_pool_allocated_bytes_total{pool="CodeHeap 'non-profiled nmethods'",} 2152064.0 +jvm_memory_pool_allocated_bytes_total{pool="Compressed Class Space",} 4912232.0 +jvm_memory_pool_allocated_bytes_total{pool="Metaspace",} 4.1337744E7 +jvm_memory_pool_allocated_bytes_total{pool="Tenured Gen",} 2.8136056E7 +jvm_memory_pool_allocated_bytes_total{pool="Survivor Space",} 6813240.0 +jvm_memory_pool_allocated_bytes_total{pool="CodeHeap 'non-nmethods'",} 1272320.0 +# HELP pdpa_policy_deployments_total The total number of policy deployments. +# TYPE pdpa_policy_deployments_total counter # HELP jvm_memory_objects_pending_finalization The number of objects waiting in the finalizer queue. # TYPE jvm_memory_objects_pending_finalization gauge jvm_memory_objects_pending_finalization 0.0 # HELP jvm_memory_bytes_used Used bytes of a given JVM memory area. # TYPE jvm_memory_bytes_used gauge -jvm_memory_bytes_used{area="heap",} 4.7930528E7 -jvm_memory_bytes_used{area="nonheap",} 5.3899512E7 +jvm_memory_bytes_used{area="heap",} 9.5900224E7 +jvm_memory_bytes_used{area="nonheap",} 6.0285288E7 # HELP jvm_memory_bytes_committed Committed (bytes) of a given JVM memory area. # TYPE jvm_memory_bytes_committed gauge -jvm_memory_bytes_committed{area="heap",} 2.555904E8 -jvm_memory_bytes_committed{area="nonheap",} 5.8589184E7 +jvm_memory_bytes_committed{area="heap",} 5.10984192E8 +jvm_memory_bytes_committed{area="nonheap",} 6.3922176E7 # HELP jvm_memory_bytes_max Max (bytes) of a given JVM memory area. # TYPE jvm_memory_bytes_max gauge -jvm_memory_bytes_max{area="heap",} 4.064673792E9 +jvm_memory_bytes_max{area="heap",} 8.151564288E9 jvm_memory_bytes_max{area="nonheap",} -1.0 # HELP jvm_memory_bytes_init Initial bytes of a given JVM memory area. # TYPE jvm_memory_bytes_init gauge -jvm_memory_bytes_init{area="heap",} 2.64241152E8 +jvm_memory_bytes_init{area="heap",} 5.28482304E8 jvm_memory_bytes_init{area="nonheap",} 7667712.0 # HELP jvm_memory_pool_bytes_used Used bytes of a given JVM memory pool. # TYPE jvm_memory_pool_bytes_used gauge -jvm_memory_pool_bytes_used{pool="CodeHeap 'non-nmethods'",} 1271680.0 -jvm_memory_pool_bytes_used{pool="Metaspace",} 4.0208712E7 -jvm_memory_pool_bytes_used{pool="Tenured Gen",} 2.8176296E7 -jvm_memory_pool_bytes_used{pool="CodeHeap 'profiled nmethods'",} 5948416.0 -jvm_memory_pool_bytes_used{pool="Eden Space",} 1.780424E7 -jvm_memory_pool_bytes_used{pool="Survivor Space",} 1949992.0 -jvm_memory_pool_bytes_used{pool="Compressed Class Space",} 4855216.0 -jvm_memory_pool_bytes_used{pool="CodeHeap 'non-profiled nmethods'",} 1615488.0 +jvm_memory_pool_bytes_used{pool="CodeHeap 'non-nmethods'",} 1272320.0 +jvm_memory_pool_bytes_used{pool="Metaspace",} 4.1681312E7 +jvm_memory_pool_bytes_used{pool="Tenured Gen",} 2.8136056E7 +jvm_memory_pool_bytes_used{pool="CodeHeap 'profiled nmethods'",} 1.0006912E7 +jvm_memory_pool_bytes_used{pool="Eden Space",} 6.5005376E7 +jvm_memory_pool_bytes_used{pool="Survivor Space",} 2758792.0 +jvm_memory_pool_bytes_used{pool="Compressed Class Space",} 4913352.0 +jvm_memory_pool_bytes_used{pool="CodeHeap 'non-profiled nmethods'",} 2411392.0 # HELP jvm_memory_pool_bytes_committed Committed bytes of a given JVM memory pool. # TYPE jvm_memory_pool_bytes_committed gauge jvm_memory_pool_bytes_committed{pool="CodeHeap 'non-nmethods'",} 2555904.0 -jvm_memory_pool_bytes_committed{pool="Metaspace",} 4.194304E7 -jvm_memory_pool_bytes_committed{pool="Tenured Gen",} 1.76160768E8 -jvm_memory_pool_bytes_committed{pool="CodeHeap 'profiled nmethods'",} 6029312.0 -jvm_memory_pool_bytes_committed{pool="Eden Space",} 7.0647808E7 -jvm_memory_pool_bytes_committed{pool="Survivor Space",} 8781824.0 +jvm_memory_pool_bytes_committed{pool="Metaspace",} 4.32128E7 +jvm_memory_pool_bytes_committed{pool="Tenured Gen",} 3.52321536E8 +jvm_memory_pool_bytes_committed{pool="CodeHeap 'profiled nmethods'",} 1.0092544E7 +jvm_memory_pool_bytes_committed{pool="Eden Space",} 1.41033472E8 +jvm_memory_pool_bytes_committed{pool="Survivor Space",} 1.7629184E7 jvm_memory_pool_bytes_committed{pool="Compressed Class Space",} 5505024.0 jvm_memory_pool_bytes_committed{pool="CodeHeap 'non-profiled nmethods'",} 2555904.0 # HELP jvm_memory_pool_bytes_max Max bytes of a given JVM memory pool. # TYPE jvm_memory_pool_bytes_max gauge jvm_memory_pool_bytes_max{pool="CodeHeap 'non-nmethods'",} 5828608.0 jvm_memory_pool_bytes_max{pool="Metaspace",} -1.0 -jvm_memory_pool_bytes_max{pool="Tenured Gen",} 2.803236864E9 +jvm_memory_pool_bytes_max{pool="Tenured Gen",} 5.621809152E9 jvm_memory_pool_bytes_max{pool="CodeHeap 'profiled nmethods'",} 1.22912768E8 -jvm_memory_pool_bytes_max{pool="Eden Space",} 1.12132096E9 -jvm_memory_pool_bytes_max{pool="Survivor Space",} 1.40115968E8 +jvm_memory_pool_bytes_max{pool="Eden Space",} 2.248671232E9 +jvm_memory_pool_bytes_max{pool="Survivor Space",} 2.81083904E8 jvm_memory_pool_bytes_max{pool="Compressed Class Space",} 1.073741824E9 jvm_memory_pool_bytes_max{pool="CodeHeap 'non-profiled nmethods'",} 1.22916864E8 # HELP jvm_memory_pool_bytes_init Initial bytes of a given JVM memory pool. # TYPE jvm_memory_pool_bytes_init gauge jvm_memory_pool_bytes_init{pool="CodeHeap 'non-nmethods'",} 2555904.0 jvm_memory_pool_bytes_init{pool="Metaspace",} 0.0 -jvm_memory_pool_bytes_init{pool="Tenured Gen",} 1.76160768E8 +jvm_memory_pool_bytes_init{pool="Tenured Gen",} 3.52321536E8 jvm_memory_pool_bytes_init{pool="CodeHeap 'profiled nmethods'",} 2555904.0 -jvm_memory_pool_bytes_init{pool="Eden Space",} 7.0516736E7 -jvm_memory_pool_bytes_init{pool="Survivor Space",} 8781824.0 +jvm_memory_pool_bytes_init{pool="Eden Space",} 1.41033472E8 +jvm_memory_pool_bytes_init{pool="Survivor Space",} 1.7563648E7 jvm_memory_pool_bytes_init{pool="Compressed Class Space",} 0.0 jvm_memory_pool_bytes_init{pool="CodeHeap 'non-profiled nmethods'",} 2555904.0 # HELP jvm_memory_pool_collection_used_bytes Used bytes after last collection of a given JVM memory pool. # TYPE jvm_memory_pool_collection_used_bytes gauge -jvm_memory_pool_collection_used_bytes{pool="Tenured Gen",} 2.8176296E7 +jvm_memory_pool_collection_used_bytes{pool="Tenured Gen",} 2.8136056E7 jvm_memory_pool_collection_used_bytes{pool="Eden Space",} 0.0 -jvm_memory_pool_collection_used_bytes{pool="Survivor Space",} 1949992.0 +jvm_memory_pool_collection_used_bytes{pool="Survivor Space",} 2758792.0 # HELP jvm_memory_pool_collection_committed_bytes Committed after last collection bytes of a given JVM memory pool. # TYPE jvm_memory_pool_collection_committed_bytes gauge -jvm_memory_pool_collection_committed_bytes{pool="Tenured Gen",} 1.76160768E8 -jvm_memory_pool_collection_committed_bytes{pool="Eden Space",} 7.0647808E7 -jvm_memory_pool_collection_committed_bytes{pool="Survivor Space",} 8781824.0 +jvm_memory_pool_collection_committed_bytes{pool="Tenured Gen",} 3.52321536E8 +jvm_memory_pool_collection_committed_bytes{pool="Eden Space",} 1.41033472E8 +jvm_memory_pool_collection_committed_bytes{pool="Survivor Space",} 1.7629184E7 # HELP jvm_memory_pool_collection_max_bytes Max bytes after last collection of a given JVM memory pool. # TYPE jvm_memory_pool_collection_max_bytes gauge -jvm_memory_pool_collection_max_bytes{pool="Tenured Gen",} 2.803236864E9 -jvm_memory_pool_collection_max_bytes{pool="Eden Space",} 1.12132096E9 -jvm_memory_pool_collection_max_bytes{pool="Survivor Space",} 1.40115968E8 +jvm_memory_pool_collection_max_bytes{pool="Tenured Gen",} 5.621809152E9 +jvm_memory_pool_collection_max_bytes{pool="Eden Space",} 2.248671232E9 +jvm_memory_pool_collection_max_bytes{pool="Survivor Space",} 2.81083904E8 # HELP jvm_memory_pool_collection_init_bytes Initial after last collection bytes of a given JVM memory pool. # TYPE jvm_memory_pool_collection_init_bytes gauge -jvm_memory_pool_collection_init_bytes{pool="Tenured Gen",} 1.76160768E8 -jvm_memory_pool_collection_init_bytes{pool="Eden Space",} 7.0516736E7 -jvm_memory_pool_collection_init_bytes{pool="Survivor Space",} 8781824.0 -# HELP jvm_memory_pool_allocated_bytes_total Total bytes allocated in a given JVM memory pool. Only updated after GC, not continuously. -# TYPE jvm_memory_pool_allocated_bytes_total counter -jvm_memory_pool_allocated_bytes_total{pool="Eden Space",} 1.62790696E8 -jvm_memory_pool_allocated_bytes_total{pool="CodeHeap 'profiled nmethods'",} 5150080.0 -jvm_memory_pool_allocated_bytes_total{pool="CodeHeap 'non-profiled nmethods'",} 1428864.0 -jvm_memory_pool_allocated_bytes_total{pool="Compressed Class Space",} 4785752.0 -jvm_memory_pool_allocated_bytes_total{pool="Metaspace",} 3.9463568E7 -jvm_memory_pool_allocated_bytes_total{pool="Tenured Gen",} 2.8176296E7 -jvm_memory_pool_allocated_bytes_total{pool="Survivor Space",} 5422680.0 -jvm_memory_pool_allocated_bytes_total{pool="CodeHeap 'non-nmethods'",} 1271680.0 -# HELP jvm_gc_collection_seconds Time spent in a given JVM garbage collector in seconds. -# TYPE jvm_gc_collection_seconds summary -jvm_gc_collection_seconds_count{gc="Copy",} 3.0 -jvm_gc_collection_seconds_sum{gc="Copy",} 0.076 -jvm_gc_collection_seconds_count{gc="MarkSweepCompact",} 2.0 -jvm_gc_collection_seconds_sum{gc="MarkSweepCompact",} 0.126 -# HELP jvm_threads_current Current thread count of a JVM -# TYPE jvm_threads_current gauge -jvm_threads_current 31.0 -# HELP jvm_threads_daemon Daemon thread count of a JVM -# TYPE jvm_threads_daemon gauge -jvm_threads_daemon 16.0 -# HELP jvm_threads_peak Peak thread count of a JVM -# TYPE jvm_threads_peak gauge -jvm_threads_peak 31.0 -# HELP jvm_threads_started_total Started thread count of a JVM -# TYPE jvm_threads_started_total counter -jvm_threads_started_total 32.0 -# HELP jvm_threads_deadlocked Cycles of JVM-threads that are in deadlock waiting to acquire object monitors or ownable synchronizers -# TYPE jvm_threads_deadlocked gauge -jvm_threads_deadlocked 0.0 -# HELP jvm_threads_deadlocked_monitor Cycles of JVM-threads that are in deadlock waiting to acquire object monitors -# TYPE jvm_threads_deadlocked_monitor gauge -jvm_threads_deadlocked_monitor 0.0 -# HELP jvm_threads_state Current count of threads by state -# TYPE jvm_threads_state gauge -jvm_threads_state{state="BLOCKED",} 0.0 -jvm_threads_state{state="WAITING",} 13.0 -jvm_threads_state{state="RUNNABLE",} 7.0 -jvm_threads_state{state="TIMED_WAITING",} 11.0 -jvm_threads_state{state="TERMINATED",} 0.0 -jvm_threads_state{state="NEW",} 0.0 -# HELP jvm_buffer_pool_used_bytes Used bytes of a given JVM buffer pool. -# TYPE jvm_buffer_pool_used_bytes gauge -jvm_buffer_pool_used_bytes{pool="mapped",} 0.0 -jvm_buffer_pool_used_bytes{pool="direct",} 187392.0 -# HELP jvm_buffer_pool_capacity_bytes Bytes capacity of a given JVM buffer pool. -# TYPE jvm_buffer_pool_capacity_bytes gauge -jvm_buffer_pool_capacity_bytes{pool="mapped",} 0.0 -jvm_buffer_pool_capacity_bytes{pool="direct",} 187392.0 -# HELP jvm_buffer_pool_used_buffers Used buffers of a given JVM buffer pool. -# TYPE jvm_buffer_pool_used_buffers gauge -jvm_buffer_pool_used_buffers{pool="mapped",} 0.0 -jvm_buffer_pool_used_buffers{pool="direct",} 8.0 +jvm_memory_pool_collection_init_bytes{pool="Tenured Gen",} 3.52321536E8 +jvm_memory_pool_collection_init_bytes{pool="Eden Space",} 1.41033472E8 +jvm_memory_pool_collection_init_bytes{pool="Survivor Space",} 1.7563648E7 # HELP jvm_classes_loaded The number of classes that are currently loaded in the JVM # TYPE jvm_classes_loaded gauge -jvm_classes_loaded 7287.0 +jvm_classes_loaded 7378.0 # HELP jvm_classes_loaded_total The total number of classes that have been loaded since the JVM has started execution # TYPE jvm_classes_loaded_total counter -jvm_classes_loaded_total 7287.0 +jvm_classes_loaded_total 7378.0 # HELP jvm_classes_unloaded_total The total number of classes that have been unloaded since the JVM has started execution # TYPE jvm_classes_unloaded_total counter jvm_classes_unloaded_total 0.0 -# HELP process_cpu_seconds_total Total user and system CPU time spent in seconds. -# TYPE process_cpu_seconds_total counter -process_cpu_seconds_total 19.23 -# HELP process_start_time_seconds Start time of the process since unix epoch in seconds. -# TYPE process_start_time_seconds gauge -process_start_time_seconds 1.633111663176E9 -# HELP process_open_fds Number of open file descriptors. -# TYPE process_open_fds gauge -process_open_fds 350.0 -# HELP process_max_fds Maximum number of open file descriptors. -# TYPE process_max_fds gauge -process_max_fds 1048576.0 -# HELP process_virtual_memory_bytes Virtual memory size in bytes. -# TYPE process_virtual_memory_bytes gauge -process_virtual_memory_bytes 5.825941504E9 -# HELP process_resident_memory_bytes Resident memory size in bytes. -# TYPE process_resident_memory_bytes gauge -process_resident_memory_bytes 2.13909504E8 +# HELP jvm_info VM version info +# TYPE jvm_info gauge +jvm_info{runtime="OpenJDK Runtime Environment",vendor="Alpine",version="11.0.9+11-alpine-r1",} 1.0 # HELP jvm_memory_pool_allocated_bytes_created Total bytes allocated in a given JVM memory pool. Only updated after GC, not continuously. # TYPE jvm_memory_pool_allocated_bytes_created gauge -jvm_memory_pool_allocated_bytes_created{pool="Eden Space",} 1.633111669968E9 -jvm_memory_pool_allocated_bytes_created{pool="CodeHeap 'profiled nmethods'",} 1.633111669942E9 -jvm_memory_pool_allocated_bytes_created{pool="CodeHeap 'non-profiled nmethods'",} 1.633111669968E9 -jvm_memory_pool_allocated_bytes_created{pool="Compressed Class Space",} 1.633111669968E9 -jvm_memory_pool_allocated_bytes_created{pool="Metaspace",} 1.633111669968E9 -jvm_memory_pool_allocated_bytes_created{pool="Tenured Gen",} 1.633111669968E9 -jvm_memory_pool_allocated_bytes_created{pool="Survivor Space",} 1.633111669968E9 -jvm_memory_pool_allocated_bytes_created{pool="CodeHeap 'non-nmethods'",} 1.633111669968E9 +jvm_memory_pool_allocated_bytes_created{pool="Eden Space",} 1.651077501662E9 +jvm_memory_pool_allocated_bytes_created{pool="CodeHeap 'profiled nmethods'",} 1.651077501657E9 +jvm_memory_pool_allocated_bytes_created{pool="CodeHeap 'non-profiled nmethods'",} 1.651077501662E9 +jvm_memory_pool_allocated_bytes_created{pool="Compressed Class Space",} 1.651077501662E9 +jvm_memory_pool_allocated_bytes_created{pool="Metaspace",} 1.651077501662E9 +jvm_memory_pool_allocated_bytes_created{pool="Tenured Gen",} 1.651077501662E9 +jvm_memory_pool_allocated_bytes_created{pool="Survivor Space",} 1.651077501662E9 +jvm_memory_pool_allocated_bytes_created{pool="CodeHeap 'non-nmethods'",} 1.651077501662E9 diff --git a/docs/development/devtools/apex-s3p-results/apex_perf_jmeter_results.jpg b/docs/development/devtools/apex-s3p-results/apex_perf_jmeter_results.jpg Binary files differdeleted file mode 100644 index 89447874..00000000 --- a/docs/development/devtools/apex-s3p-results/apex_perf_jmeter_results.jpg +++ /dev/null diff --git a/docs/development/devtools/apex-s3p-results/apex_perf_jmeter_results.png b/docs/development/devtools/apex-s3p-results/apex_perf_jmeter_results.png Binary files differnew file mode 100644 index 00000000..c17d3a6c --- /dev/null +++ b/docs/development/devtools/apex-s3p-results/apex_perf_jmeter_results.png diff --git a/docs/development/devtools/apex-s3p-results/apex_stability_jmeter_results.jpg b/docs/development/devtools/apex-s3p-results/apex_stability_jmeter_results.jpg Binary files differdeleted file mode 100644 index 1cdabb7e..00000000 --- a/docs/development/devtools/apex-s3p-results/apex_stability_jmeter_results.jpg +++ /dev/null diff --git a/docs/development/devtools/apex-s3p-results/apex_stability_jmeter_results.png b/docs/development/devtools/apex-s3p-results/apex_stability_jmeter_results.png Binary files differnew file mode 100644 index 00000000..e092d77c --- /dev/null +++ b/docs/development/devtools/apex-s3p-results/apex_stability_jmeter_results.png diff --git a/docs/development/devtools/apex-s3p-results/apex_top_after_72h.jpg b/docs/development/devtools/apex-s3p-results/apex_top_after_72h.jpg Binary files differdeleted file mode 100644 index e51b942a..00000000 --- a/docs/development/devtools/apex-s3p-results/apex_top_after_72h.jpg +++ /dev/null diff --git a/docs/development/devtools/apex-s3p-results/apex_top_after_72h.png b/docs/development/devtools/apex-s3p-results/apex_top_after_72h.png Binary files differnew file mode 100644 index 00000000..dafc7002 --- /dev/null +++ b/docs/development/devtools/apex-s3p-results/apex_top_after_72h.png diff --git a/docs/development/devtools/apex-s3p-results/apex_top_before_72h.jpg b/docs/development/devtools/apex-s3p-results/apex_top_before_72h.jpg Binary files differdeleted file mode 100644 index cc2da54f..00000000 --- a/docs/development/devtools/apex-s3p-results/apex_top_before_72h.jpg +++ /dev/null diff --git a/docs/development/devtools/apex-s3p-results/apex_top_before_72h.png b/docs/development/devtools/apex-s3p-results/apex_top_before_72h.png Binary files differnew file mode 100644 index 00000000..2e2e7574 --- /dev/null +++ b/docs/development/devtools/apex-s3p-results/apex_top_before_72h.png diff --git a/docs/development/devtools/apex-s3p.rst b/docs/development/devtools/apex-s3p.rst index a4759f5c..9575277c 100644 --- a/docs/development/devtools/apex-s3p.rst +++ b/docs/development/devtools/apex-s3p.rst @@ -12,16 +12,58 @@ Policy APEX PDP component Both the Stability and the Performance tests were executed in a full ONAP OOM deployment in Nordix lab. - Setup Details +++++++++++++ -- APEX-PDP along with all policy components deployed as part of a full ONAP OOM deployment. -- Policy-models-simulator is deployed to use CDS and DMaaP simulators during policy execution. +Deploying ONAP using OOM +------------------------ + +APEX-PDP along with all policy components are deployed as part of a full ONAP OOM deployment. +At a minimum, the following ONAP components are needed: policy, mariadb-galera, aai, cassandra, aaf, and dmaap. + +Before deploying, the values.yaml files are changed to use NodePort instead of ClusterIP for policy-api, +policy-pap, and policy-apex-pdp, so that they are accessible from jmeter:: + + policy-apex-pdp NodePort 10.43.70.176 <none> 6969:30237/TCP + policy-api NodePort 10.43.2.99 <none> 6969:30240/TCP + policy-pap NodePort 10.43.203.178 <none> 6969:30442/TCP + +The node ports (30237, 30240 and 30442 above) are used in JMeter. The HOSTNAME for JMeter is set to the IP returned by running kubectl cluster-info. + +Set up policy-models-simulator +------------------------------ + +Policy-models-simulator is deployed to use CDS and DMaaP simulators during policy execution. Simulator configurations used are available in apex-pdp repository: testsuites/apex-pdp-stability/src/main/resources/simulatorConfig/ -- Two APEX policies are executed in the APEX-PDP engine, and are triggered by multiple threads during the tests. -- Both tests were run via jMeter. + +It is run as a docker image from a node accessible to the kubernetes cluster:: + + docker run -d --rm --publish 6680:6680 --publish 31054:3905 \ + --volume "apex-pdp/testsuites/apex-pdp-stability/src/main/resources/simulatorConfig:/opt/app/policy/simulators/etc/mounted" \ + nexus3.onap.org:10001/onap/policy-models-simulator:2.6-SNAPSHOT-latest + +The published ports 6680 and 31054 are used in JMeter for CDS and DMaaP simulators. + +Creation of VNF & PNF in AAI +---------------------------- + +In order for APEX-PDP engine to fetch the resource details from AAI during runtime execution, we need to create dummy +VNF & PNF entities in AAI. In a real control loop flow, the entities in AAI will be either created during orchestration +phase or provisioned in AAI separately. + +Download & execute the steps in postman collection for creating the entities along with it’s dependencies. +The steps needs to be performed sequentially one after another. And no input is required from user. + +:download:`Create VNF & PNF in AAI for Apex S3P <postman/create-vnf-pnf-aai-for-apex-s3p.postman_collection.json>` + +Make sure to skip the delete VNF & PNF steps. + +JMeter Tests +------------ + +Two APEX policies are executed in the APEX-PDP engine, and are triggered by multiple threads during the tests. +Both tests were run via jMeter. Stability test script is available in apex-pdp repository: testsuites/apex-pdp-stability/src/main/resources/apexPdpStabilityTestPlan.jmx @@ -85,6 +127,8 @@ Only one thread is in action and this step is done only once after the Main phas - **Delete Policy onap.policies.apex.Simplecontrolloop** - delete the first APEX policy using policy/api component. - **Delete Policy onap.policies.apex.Example** - delete the second APEX policy also using policy/api component. +Test Configuration +------------------ The following steps can be used to configure the parameters of test plan. @@ -97,8 +141,11 @@ The following steps can be used to configure the parameters of test plan. =================== =============================================================================== HOSTNAME IP Address or host name to access the components PAP_PORT Port number of PAP for making REST API calls such as deploy/undeploy of policy - API_PORT Port number of API for making REST API calls such as create/ delete of policy + API_PORT Port number of API for making REST API calls such as create/delete of policy APEX_PORT Port number of APEX for making REST API calls such as healthcheck/metrics + SIM_HOST IP Address or hostname running policy-models-simulator + DMAAP_PORT Port number of DMaaP simulator for making REST API calls such as reading notification events + CDS_PORT Port number of CDS simulator wait Wait time if required after a request (in milliseconds) threads Number of threads to run test cases in parallel threadsTimeOutInMs Synchronization timer for threads running in parallel (in milliseconds) @@ -111,7 +158,7 @@ The test was run in the background via "nohup", to prevent it from being interru .. code-block:: bash - nohup ./apache-jmeter-5.4.1/bin/jmeter.sh -n -t apexPdpStabilityTestPlan.jmx -l stabilityTestResults.jtl + nohup ./apache-jmeter-5.4.3/bin/jmeter.sh -n -t apexPdpStabilityTestPlan.jmx -l stabilityTestResults.jtl Test Results ------------ @@ -126,7 +173,7 @@ Stability test plan was triggered for 72 hours. There were no failures during th ======================= ================= ================== ================================== **Total # of requests** **Success %** **Error %** **Average time taken per request** ======================= ================= ================== ================================== -428661 100 % 0.00 % 162 ms +430331 100 % 0.00 % 152 ms ======================= ================= ================== ================================== .. Note:: @@ -135,7 +182,7 @@ Stability test plan was triggered for 72 hours. There were no failures during th **JMeter Screenshot** -.. image:: apex-s3p-results/apex_stability_jmeter_results.jpg +.. image:: apex-s3p-results/apex_stability_jmeter_results.png **Memory and CPU usage** @@ -145,13 +192,13 @@ Prometheus metrics is also collected before and after the test execution. Memory and CPU usage before test execution: -.. image:: apex-s3p-results/apex_top_before_72h.jpg +.. image:: apex-s3p-results/apex_top_before_72h.png :download:`Prometheus metrics before 72h test <apex-s3p-results/apex_metrics_before_72h.txt>` Memory and CPU usage after test execution: -.. image:: apex-s3p-results/apex_top_after_72h.jpg +.. image:: apex-s3p-results/apex_top_after_72h.png :download:`Prometheus metrics after 72h test <apex-s3p-results/apex_metrics_after_72h.txt>` @@ -182,7 +229,7 @@ Run Test .. code-block:: bash - nohup ./apache-jmeter-5.4.1/bin/jmeter.sh -n -t apexPdpPerformanceTestPlan.jmx -l perftestresults.jtl + nohup ./apache-jmeter-5.4.3/bin/jmeter.sh -n -t apexPdpPerformanceTestPlan.jmx -l perftestresults.jtl Test Results @@ -195,12 +242,12 @@ Test results are shown as below. ======================= ================= ================== ================================== **Total # of requests** **Success %** **Error %** **Average time taken per request** ======================= ================= ================== ================================== -46946 100 % 0.00 % 198 ms +47586 100 % 0.00 % 163 ms ======================= ================= ================== ================================== **JMeter Screenshot** -.. image:: apex-s3p-results/apex_perf_jmeter_results.jpg +.. image:: apex-s3p-results/apex_perf_jmeter_results.png Summary +++++++ diff --git a/docs/development/devtools/clamp-dcae.rst b/docs/development/devtools/clamp-dcae.rst index aeba21fd..0d48c2bc 100644 --- a/docs/development/devtools/clamp-dcae.rst +++ b/docs/development/devtools/clamp-dcae.rst @@ -27,7 +27,7 @@ The worker VM hosting the policy components has the following spec: The ONAP components used during the pairwise tests are: -- CLAMP control loop runtime, policy participant, kubernetes participant. +- CLAMP acm runtime, policy participant, kubernetes participant. - DCAE for running dcaegen2-service via kubernetes participant. - ChartMuseum service from platform, initialised with DCAE helm charts. - DMaaP for the communication between Automation Composition runtime and participants. @@ -57,11 +57,13 @@ Creation of the Automation Composition: --------------------------------------- An Automation Composition is created by commissioning a Tosca template with Automation Composition definitions and instantiating the Automation Composition with the state "UNINITIALISED". -- Upload a TOSCA template from the POLICY GUI. The definitions include a kubernetes participant and control loop elements that deploys and configures a microservice in the kubernetes cluster. +- Upload a TOSCA template from the POLICY GUI. The definitions include a kubernetes participant and automation composition elements that deploys and configures a microservice in the kubernetes cluster. Automation Composition element for kubernetes participant includes a helm chart information of DCAE microservice and the element for Http Participant includes the configuration entity for the microservice. :download:`Sample Tosca template <tosca/pairwise-testing.yml>` - .. image:: images/cl-commission.png + .. image:: images/ac-commission.png + + .. image:: images/ac-upload.png Verification: The template is commissioned successfully without errors. @@ -73,16 +75,16 @@ An Automation Composition is created by commissioning a Tosca template with Auto .. image:: images/update-instance.png - Verification: The control loop is created with default state "UNINITIALISED" without errors. + Verification: The Automation composition is created with default state "UNINITIALISED" without errors. - .. image:: images/cl-instantiation.png + .. image:: images/ac-instantiation.png Deployment and Configuration of DCAE microservice (PMSH): --------------------------------------------------------- The Automation Composition state is changed from "UNINITIALISED" to "PASSIVE" from the Policy Gui. The kubernetes participant deploys the PMSH helm chart from the DCAE chartMuseum server. -.. image:: images/cl-passive.png +.. image:: images/ac-passive.png Verification: @@ -94,14 +96,14 @@ Verification: - The overall state of the Automation Composition is changed to "PASSIVE" in the Policy Gui. -.. image:: images/cl-create.png +.. image:: images/ac-create.png Undeployment of DCAE microservice (PMSH): ----------------------------------------- The Automation Composition state is changed from "PASSIVE" to "UNINITIALISED" from the Policy Gui. -.. image:: images/cl-uninitialise.png +.. image:: images/ac-uninitialise.png Verification: @@ -109,7 +111,7 @@ Verification: - The overall state of the Automation Composition is changed to "UNINITIALISED" in the Policy Gui. -.. image:: images/cl-uninitialised-state.png +.. image:: images/ac-uninitialised-state.png diff --git a/docs/development/devtools/clamp-policy.rst b/docs/development/devtools/clamp-policy.rst index 20089b4e..0a25ce81 100644 --- a/docs/development/devtools/clamp-policy.rst +++ b/docs/development/devtools/clamp-policy.rst @@ -49,7 +49,7 @@ An Automation Composition is created by commissioning a Tosca template with Auto - Upload a TOSCA template from the POLICY GUI. The definitions include a policy participant and an Automation Composition element that creates and deploys required policies. :download:`Sample Tosca template <tosca/pairwise-testing.yml>` - .. image:: images/cl-commission.png + .. image:: images/ac-commission.png Verification: The template is commissioned successfully without errors. @@ -63,14 +63,14 @@ An Automation Composition is created by commissioning a Tosca template with Auto Verification: The Automation Composition is created with default state "UNINITIALISED" without errors. - .. image:: images/cl-instantiation.png + .. image:: images/ac-instantiation.png Creation and deployment of policies: ------------------------------------ The Automation Composition state is changed from "UNINITIALISED" to "PASSIVE" from the Policy Gui. Verify the POLICY API endpoint for the creation of policy types that are defined in the TOSCA template. Verify the PAP endpoint for the deployment of policies. -.. image:: images/cl-passive.png +.. image:: images/ac-passive.png Verification: @@ -82,7 +82,7 @@ Verification: - The overall state of the Automation Composition is changed to "PASSIVE" in the Policy Gui. -.. image:: images/cl-create.png +.. image:: images/ac-create.png Undeployment and deletion of Policies: -------------------------------------- @@ -98,5 +98,5 @@ Verification: - The overall state of the Automation Composition is changed to "PASSIVE" in the Policy Gui. -.. image:: images/cl-create.png +.. image:: images/ac-create.png diff --git a/docs/development/devtools/clamp-sdc.rst b/docs/development/devtools/clamp-sdc.rst new file mode 100644 index 00000000..b125d216 --- /dev/null +++ b/docs/development/devtools/clamp-sdc.rst @@ -0,0 +1,117 @@ +.. This work is licensed under a +.. Creative Commons Attribution 4.0 International License. +.. http://creativecommons.org/licenses/by/4.0 + +.. _clamp-pairwise-testing-label: + +.. toctree:: + :maxdepth: 2 + +CLAMP <-> SDC +~~~~~~~~~~~~~~ + +The pairwise testing is executed against a default ONAP installation in the OOM. +It briefly states the procedure to design an Automation Composition starting from service creation, +adding the required ONAP component artifacts, policy and properties in the composition phase of SDC +and finally distributing it to the CLAMP for Commissioning. +SDC provides an interface for distributing the modeled services to the run time components. + +The instructions below will enable to design an Automation Composition. There are different phases to the design: + +Step 1: Design an automation composition template and associate it to a Service, the template represents the theoretical flow of the ACM. + +Step 2: Generate a deployment artifact that can be ingested by the Policy Framework + +Step 3: Distribute the automation composition to CLAMP, the csar is distributed to CLAMP over Dmaap + +Step 4: Policy Distribution will internally call Automation Composition Commissioning rest endpoint + +Step 5: Service Template is commissioned in CLAMP, and can be followed by Instantiation and state changes. + +General Setup +************* + +The kubernetes installation allocated all policy components across multiple worker node VMs. +The worker VM hosting the policy components has the following spec: + +- 16GB RAM +- 8 VCPU +- 160GB Ephemeral Disk + +The ONAP components used during the pairwise tests are: + +- CLAMP automation composition runtime, policy participant, kubernetes participant. +- SDC for running SDC components. +- DMaaP for the communication between Automation Composition runtime and participants. +- Policy Framework components for instantiation and commissioning of automation compositions. + +Testing procedure +***************** + +The test set focused on the following use cases: + +- Design of participants and automation composition elements +- Design of Automation Composition template including the above designed participants and automation composition element templates. +- Distribution of designed template along with other artifacts as a csar to policy-distribution +- Commissioning of template in automation composition runtime. + +Configuration changes +********************* + +Following are certain configuration changes required/cross-checked +1. policy-distribution configuration should include toscaAutomationCompositionDecoderConfiguration + File: kubernetes/policy/components/policy-distribution/resources/config/config.json + + - Automation composition decoders and forwards should be present. Reference: `Sample Configuration <json/pd_config.json>` + +Design of participants and automation composition elements: +---------------------------------------------------------- +Different participants and automation composition elements are created in SDC dashboard with the models available for automation composition. + +SDC provides a graphical interface for onboarding/designing resources (such as VNFs, PNFs, CNFs) and designing services composed of such resources + +- Create as many participants as needed to present in the automation composition +- Select VF, provide name of the participant. Choose Model as AUTOMATION COMPOSTIION and Category as Participant. + + .. image:: images/sdc_create_participant.png + +- Create as many automation composition elements as needed to present in the automation composition +- Select VF, provide name of the automation composition element. Choose Model as AUTOMATION COMPOSTIION and Category as AutomationComposition Element. + + .. image:: images/sdc_create_element.png + +- Add properties as required for an automation composition element +- Add any properties where input is needed in Inputs tab. + + .. image:: images/sdc_element_props.png + +- Create an automation composition +- Select Service, provide name of the automation composition. Choose Model as AUTOMATION COMPOSTIION and Category as AutomationComposition. + + .. image:: images/sdc_create_acm.png + +- SDC Composition tab +- Drag and Drop the previously created participants and automation composition elements into the Compistion pane. +- Drag and Drop the policies that needs to be added to the service template. + + .. image:: images/sdc_compose_acm.png + +- For a pre validation, Tosca artifacts can be downloaded and verified + + .. image:: images/sdc_tosca.png + +- From SDC dashboard, perform a distribution of the automation composition + + .. image:: images/sdc_distribute.png + +- An Automation Composition is created by commissioning a Tosca template with Automation Composition definitions. +This commissioned tosca service template can be further used from Policy-GUI for instantiating the Automation Composition with the state "UNINITIALISED". + +- Instantiate the commissioned Automation Composition definitions from the Policy Gui under 'Instantiation Management'. + + .. image:: images/create-instance.png + +- Verification: The automation composition is created with default state "UNINITIALISED" without errors. + + .. image:: images/cl-instantiation.png + diff --git a/docs/development/devtools/devtools.rst b/docs/development/devtools/devtools.rst index 5c84fd02..37fba6cc 100644 --- a/docs/development/devtools/devtools.rst +++ b/docs/development/devtools/devtools.rst @@ -334,6 +334,8 @@ the Policy Framework works in a full ONAP deployment. policy-cds.rst + clamp-sdc.rst + .. api-pairwise.rst diff --git a/docs/development/devtools/images/ac-commission.png b/docs/development/devtools/images/ac-commission.png Binary files differnew file mode 100644 index 00000000..10d71181 --- /dev/null +++ b/docs/development/devtools/images/ac-commission.png diff --git a/docs/development/devtools/images/cl-create.png b/docs/development/devtools/images/ac-create.png Binary files differindex df97a170..df97a170 100644 --- a/docs/development/devtools/images/cl-create.png +++ b/docs/development/devtools/images/ac-create.png diff --git a/docs/development/devtools/images/cl-instantiation.png b/docs/development/devtools/images/ac-instantiation.png Binary files differindex b1101ffb..b1101ffb 100644 --- a/docs/development/devtools/images/cl-instantiation.png +++ b/docs/development/devtools/images/ac-instantiation.png diff --git a/docs/development/devtools/images/cl-passive.png b/docs/development/devtools/images/ac-passive.png Binary files differindex def811a5..def811a5 100644 --- a/docs/development/devtools/images/cl-passive.png +++ b/docs/development/devtools/images/ac-passive.png diff --git a/docs/development/devtools/images/cl-running-state.png b/docs/development/devtools/images/ac-running-state.png Binary files differindex ab7b73c5..ab7b73c5 100644 --- a/docs/development/devtools/images/cl-running-state.png +++ b/docs/development/devtools/images/ac-running-state.png diff --git a/docs/development/devtools/images/cl-running.png b/docs/development/devtools/images/ac-running.png Binary files differindex e9730e0d..e9730e0d 100644 --- a/docs/development/devtools/images/cl-running.png +++ b/docs/development/devtools/images/ac-running.png diff --git a/docs/development/devtools/images/cl-uninitialise.png b/docs/development/devtools/images/ac-uninitialise.png Binary files differindex d10b214c..d10b214c 100644 --- a/docs/development/devtools/images/cl-uninitialise.png +++ b/docs/development/devtools/images/ac-uninitialise.png diff --git a/docs/development/devtools/images/cl-uninitialised-state.png b/docs/development/devtools/images/ac-uninitialised-state.png Binary files differindex f8a77da8..f8a77da8 100644 --- a/docs/development/devtools/images/cl-uninitialised-state.png +++ b/docs/development/devtools/images/ac-uninitialised-state.png diff --git a/docs/development/devtools/images/ac-upload.png b/docs/development/devtools/images/ac-upload.png Binary files differnew file mode 100644 index 00000000..efe51341 --- /dev/null +++ b/docs/development/devtools/images/ac-upload.png diff --git a/docs/development/devtools/images/cl-commission.png b/docs/development/devtools/images/cl-commission.png Binary files differdeleted file mode 100644 index ee1bab17..00000000 --- a/docs/development/devtools/images/cl-commission.png +++ /dev/null diff --git a/docs/development/devtools/images/sdc_compose_acm.png b/docs/development/devtools/images/sdc_compose_acm.png Binary files differnew file mode 100644 index 00000000..3bdc9305 --- /dev/null +++ b/docs/development/devtools/images/sdc_compose_acm.png diff --git a/docs/development/devtools/images/sdc_create_acm.png b/docs/development/devtools/images/sdc_create_acm.png Binary files differnew file mode 100644 index 00000000..f60492bf --- /dev/null +++ b/docs/development/devtools/images/sdc_create_acm.png diff --git a/docs/development/devtools/images/sdc_create_element.png b/docs/development/devtools/images/sdc_create_element.png Binary files differnew file mode 100644 index 00000000..42d28b3e --- /dev/null +++ b/docs/development/devtools/images/sdc_create_element.png diff --git a/docs/development/devtools/images/sdc_create_participant.png b/docs/development/devtools/images/sdc_create_participant.png Binary files differnew file mode 100644 index 00000000..4178127f --- /dev/null +++ b/docs/development/devtools/images/sdc_create_participant.png diff --git a/docs/development/devtools/images/sdc_distribute.png b/docs/development/devtools/images/sdc_distribute.png Binary files differnew file mode 100644 index 00000000..cffffaed --- /dev/null +++ b/docs/development/devtools/images/sdc_distribute.png diff --git a/docs/development/devtools/images/sdc_element_props.png b/docs/development/devtools/images/sdc_element_props.png Binary files differnew file mode 100644 index 00000000..f2227465 --- /dev/null +++ b/docs/development/devtools/images/sdc_element_props.png diff --git a/docs/development/devtools/images/sdc_tosca.png b/docs/development/devtools/images/sdc_tosca.png Binary files differnew file mode 100644 index 00000000..eb881581 --- /dev/null +++ b/docs/development/devtools/images/sdc_tosca.png diff --git a/docs/development/devtools/json/pd_config.json b/docs/development/devtools/json/pd_config.json new file mode 100644 index 00000000..fd35cb35 --- /dev/null +++ b/docs/development/devtools/json/pd_config.json @@ -0,0 +1,145 @@ +{{/* +# ============LICENSE_START======================================================= +# Copyright (C) 2018 Ericsson. All rights reserved. +# Modifications Copyright (C) 2020 AT&T Intellectual Property. +# Modifications Copyright (C) 2021 Bell Canada. All rights reserved. +# ================================================================================ +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# ============LICENSE_END========================================================= +*/}} +{ + "name":"SDCDistributionGroup", + "restServerParameters":{ + "host":"0.0.0.0", + "port":6969, + "userName":"${RESTSERVER_USER}", + "password":"${RESTSERVER_PASSWORD}", + "https":true, + "prometheus": true + }, + "receptionHandlerParameters":{ + "SDCReceptionHandler":{ + "receptionHandlerType":"SDC", + "receptionHandlerClassName":"org.onap.policy.distribution.reception.handling.sdc.SdcReceptionHandler", + "receptionHandlerConfigurationName":"sdcConfiguration", + "pluginHandlerParameters":{ + "policyDecoders":{ + "ToscaPolicyDecoder":{ + "decoderType":"ToscaPolicyDecoder", + "decoderClassName":"org.onap.policy.distribution.reception.decoding.policy.file.PolicyDecoderFileInCsarToPolicy", + "decoderConfigurationName": "toscaPolicyDecoderConfiguration" + }, + "ToscaAutomationCompositionDecoder": { + "decoderType": "ToscaAutomationCompositionDecoder", + "decoderClassName": "org.onap.policy.distribution.reception.decoding.policy.file.AutomationCompositionDecoderFileInCsar", + "decoderConfigurationName": "toscaAutomationCompositionDecoderConfiguration" + } + }, + "policyForwarders":{ + "LifeCycleApiForwarder":{ + "forwarderType":"LifeCycleAPI", + "forwarderClassName":"org.onap.policy.distribution.forwarding.lifecycle.api.LifecycleApiPolicyForwarder", + "forwarderConfigurationName": "lifecycleApiConfiguration" + }, + "LifeCycleApiAutomationCompositionForwarder": { + "forwarderType": "LifeCycleAutomationCompositionAPI", + "forwarderClassName": "org.onap.policy.distribution.forwarding.lifecycle.api.LifecycleApiAutomationCompositionForwarder", + "forwarderConfigurationName": "lifecycleApiAutomationCompositionConfiguration" + } + } + } + } + }, + "receptionHandlerConfigurationParameters":{ + "sdcConfiguration":{ + "parameterClassName":"org.onap.policy.distribution.reception.handling.sdc.SdcReceptionHandlerConfigurationParameterGroup", + "parameters":{ + "asdcAddress": "sdc-be:8443", + "messageBusAddress": [ + "message-router.{{ include "common.namespace" . }}" + ], + "user": "${SDCBE_USER}", + "password": "${SDCBE_PASSWORD}", + "pollingInterval":20, + "pollingTimeout":30, + "consumerId": "policy-id", + "artifactTypes": [ + "TOSCA_CSAR", + "HEAT" + ], + "consumerGroup": "policy-group", + "environmentName": "AUTO", + "keyStorePath": "null", + "keyStorePassword": "null", + "activeserverTlsAuth": false, + "isFilterinEmptyResources": true, + "isUseHttpsWithDmaap": true + } + } + }, + "policyDecoderConfigurationParameters":{ + "toscaPolicyDecoderConfiguration":{ + "parameterClassName":"org.onap.policy.distribution.reception.decoding.policy.file.PolicyDecoderFileInCsarToPolicyParameterGroup", + "parameters":{ + "policyFileName": "tosca_policy", + "policyTypeFileName": "tosca_policy_type" + } + }, + "toscaAutomationCompositionDecoderConfiguration": { + "parameterClassName": "org.onap.policy.distribution.reception.decoding.policy.file.AutomationCompositionDecoderFileInCsarParameterGroup", + "parameters": { + "automationCompositionType": "acm" + } + } + }, + "policyForwarderConfigurationParameters":{ + "lifecycleApiConfiguration":{ + "parameterClassName":"org.onap.policy.distribution.forwarding.lifecycle.api.LifecycleApiForwarderParameters", + "parameters":{ + "apiParameters": { + "clientName": "policy-api", + "hostname": "policy-api", + "port": 6969, + "userName": "${API_USER}", + "password": "${API_PASSWORD}", + "useHttps": true + }, + "papParameters": { + "clientName": "policy-pap", + "hostname": "policy-pap", + "port": 6969, + "userName": "${PAP_USER}", + "password": "${PAP_PASSWORD}", + "useHttps": true + }, + "deployPolicies": true + } + }, + , + "lifecycleApiAutomationCompositionConfiguration": { + "parameterClassName": "org.onap.policy.distribution.forwarding.lifecycle.api.LifecycleApiAutomationCompositionForwarderParameters", + "parameters": { + "automationCompositionRuntimeParameters": { + "clientName": "policy-clamp-runtime-acm", + "hostname": "policy-clamp-runtime-acm", + "port": 6969, + "useHttps": true, + "userName": "runtimeUser", + "password": "zb!XztG34" + } + } + } + } +} diff --git a/docs/development/devtools/postman/create-vnf-pnf-aai-for-apex-s3p.postman_collection.json b/docs/development/devtools/postman/create-vnf-pnf-aai-for-apex-s3p.postman_collection.json new file mode 100644 index 00000000..b85e79b2 --- /dev/null +++ b/docs/development/devtools/postman/create-vnf-pnf-aai-for-apex-s3p.postman_collection.json @@ -0,0 +1,788 @@ +{ + "info": { + "_postman_id": "b69368a6-2e65-4eeb-85f3-13d6b0b083ab", + "name": "Create VNF & PNF in AAI for Apex S3P", + "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json" + }, + "item": [ + { + "name": "Add Customer", + "request": { + "method": "PUT", + "header": [ + { + "key": "Content-Type", + "type": "text", + "value": "application/json" + }, + { + "key": "Accept", + "type": "text", + "value": "application/json" + }, + { + "key": "Real-Time", + "type": "text", + "value": "true" + }, + { + "key": "X-TransactionId", + "type": "text", + "value": "AAI-Temp-Tool" + }, + { + "key": "X-FromAppId", + "type": "text", + "value": "AAI-Temp-Tool" + } + ], + "body": { + "mode": "raw", + "raw": "{\r\n \"global-customer-id\": \"DemoCust_47417dae-a821-4068-9736-e71c7da0d8bf\",\r\n \"subscriber-name\": \"DemoCust_47417dae-a821-4068-9736-e71c7da0d8bf\",\r\n \"subscriber-type\": \"INFRA\"\r\n}" + }, + "url": { + "raw": "{{AAI-URL}}/aai/v11/business/customers/customer/DemoCust_47417dae-a821-4068-9736-e71c7da0d8bf", + "host": [ + "{{AAI-URL}}" + ], + "path": [ + "aai", + "v11", + "business", + "customers", + "customer", + "DemoCust_47417dae-a821-4068-9736-e71c7da0d8bf" + ] + } + }, + "response": [] + }, + { + "name": "Add CloudRegion", + "request": { + "method": "PUT", + "header": [ + { + "key": "Content-Type", + "value": "application/json", + "type": "text" + }, + { + "key": "Accept", + "value": "application/json", + "type": "text" + }, + { + "key": "Real-Time", + "value": "true", + "type": "text" + }, + { + "key": "X-TransactionId", + "value": "AAI-Temp-Tool", + "type": "text" + }, + { + "key": "X-FromAppId", + "value": "AAI-Temp-Tool", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"cloud-owner\": \"CloudOwner\",\n \"cloud-region-id\": \"RegionOne\",\n \"cloud-type\": \"openstack\",\n \"owner-defined-type\": \"owner-defined-type\",\n \"cloud-region-version\": \"titanium_cloud\",\n \"identity-url\": \"http://10.195.194.213:5000/v2.0\",\n \"cloud-zone\": \"CloudZone\",\n \"sriov-automation\": true,\n \"tenants\": {\n \"tenant\": [\n {\n \"tenant-id\": \"7320ec4a5b9d4589ba7c4412ccfd290f\",\n \"tenant-name\": \"nso-vnf\",\n \"vservers\": {\n \"vserver\": [\n {\n \"vserver-id\": \"c82153dc-8d84-4e69-9673-5e0a60030779\",\n \"vserver-name\": \"viptela_scripts\",\n \"vserver-name2\": \"viptela_scripts\",\n \"prov-status\": \"Running\",\n \"vserver-selflink\": \"http://10.195.194.213:8774/v2.1/7320ec4a5b9d4589ba7c4412ccfd290f/servers/c82153dc-8d84-4e69-9673-5e0a60030779\",\n \"in-maint\": false,\n \"is-closed-loop-disabled\": false\n }\n ]\n }\n }\n ]\n }\n}" + }, + "url": { + "raw": "{{AAI-URL}}/aai/v14/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne", + "host": [ + "{{AAI-URL}}" + ], + "path": [ + "aai", + "v14", + "cloud-infrastructure", + "cloud-regions", + "cloud-region", + "CloudOwner", + "RegionOne" + ] + } + }, + "response": [] + }, + { + "name": "Add Service Subscription", + "request": { + "method": "PUT", + "header": [ + { + "key": "Content-Type", + "type": "text", + "value": "application/json" + }, + { + "key": "Accept", + "type": "text", + "value": "application/json" + }, + { + "key": "Real-Time", + "type": "text", + "value": "true" + }, + { + "key": "X-TransactionId", + "type": "text", + "value": "AAI-Temp-Tool" + }, + { + "key": "X-FromAppId", + "type": "text", + "value": "AAI-Temp-Tool" + } + ], + "body": { + "mode": "raw", + "raw": "{\r\n \"service-type\": \"vFWDT\",\r\n \"relationship-list\": {\r\n \"relationship\": [\r\n {\r\n \"related-to\": \"tenant\",\r\n \"related-link\": \"/aai/v11/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/7320ec4a5b9d4589ba7c4412ccfd290f\",\r\n \"relationship-data\": [\r\n {\r\n \"relationship-key\": \"cloud-region.cloud-owner\",\r\n \"relationship-value\": \"CloudOwner\"\r\n },\r\n {\r\n \"relationship-key\": \"cloud-region.cloud-region-id\",\r\n \"relationship-value\": \"RegionOne\"\r\n },\r\n {\r\n \"relationship-key\": \"tenant.tenant-id\",\r\n \"relationship-value\": \"7320ec4a5b9d4589ba7c4412ccfd290f\"\r\n }\r\n ],\r\n \"related-to-property\": [\r\n {\r\n \"property-key\": \"tenant.tenant-name\",\r\n \"property-value\": \"nso-vnf\"\r\n }\r\n ]\r\n }\r\n ]\r\n }\r\n}" + }, + "url": { + "raw": "{{AAI-URL}}/aai/v11/business/customers/customer/DemoCust_47417dae-a821-4068-9736-e71c7da0d8bf/service-subscriptions/service-subscription/vFWDT", + "host": [ + "{{AAI-URL}}" + ], + "path": [ + "aai", + "v11", + "business", + "customers", + "customer", + "DemoCust_47417dae-a821-4068-9736-e71c7da0d8bf", + "service-subscriptions", + "service-subscription", + "vFWDT" + ] + } + }, + "response": [] + }, + { + "name": "Add Model", + "request": { + "method": "PUT", + "header": [ + { + "key": "Content-Type", + "type": "text", + "value": "application/json" + }, + { + "key": "Accept", + "type": "text", + "value": "application/json" + }, + { + "key": "Real-Time", + "type": "text", + "value": "true" + }, + { + "key": "X-TransactionId", + "type": "text", + "value": "AAI-Temp-Tool" + }, + { + "key": "X-FromAppId", + "type": "text", + "value": "AAI-Temp-Tool" + } + ], + "body": { + "mode": "raw", + "raw": "{\r\n \"model-invariant-id\": \"vTEST_VITELA\",\r\n \"model-type\": \"model_type\",\r\n \"model-vers\": {\r\n \"model-ver\": [\r\n {\r\n \"model-version-id\": \"vTEST\",\r\n \"model-name\": \"vTEST\",\r\n \"model-version\": \"v1.4.0\"\r\n }\r\n ]\r\n }\r\n}\r\n" + }, + "url": { + "raw": "{{AAI-URL}}/aai/v14/service-design-and-creation/models/model/vTEST_VITELA", + "host": [ + "{{AAI-URL}}" + ], + "path": [ + "aai", + "v14", + "service-design-and-creation", + "models", + "model", + "vTEST_VITELA" + ] + } + }, + "response": [] + }, + { + "name": "Add Service Instance", + "request": { + "method": "PUT", + "header": [ + { + "key": "Content-Type", + "type": "text", + "value": "application/json" + }, + { + "key": "Accept", + "type": "text", + "value": "application/json" + }, + { + "key": "Real-Time", + "type": "text", + "value": "true" + }, + { + "key": "X-TransactionId", + "type": "text", + "value": "AAI-Temp-Tool" + }, + { + "key": "X-FromAppId", + "type": "text", + "value": "AAI-Temp-Tool" + } + ], + "body": { + "mode": "raw", + "raw": "{\r\n \"service-instance-id\": \"55322ada-145a-492e-b196-0d171539a4b2\",\r\n \"service-instance-name\": \"Service_Ete_Namea337dd5b-4620-4ea6-bc3f-6edf1124d659\",\r\n \"environment-context\": \"General_Revenue-Bearing\",\r\n \"workload-context\": \"Production\",\r\n \"model-invariant-id\": \"vTEST_VITELA\",\r\n \"model-version-id\": \"vTEST\",\r\n \"selflink\": \"restconf/config/GENERIC-RESOURCE-API:services/service/55322ada-145a-492e-b196-0d171539a4b2/service-data/service-topology/\",\r\n \"orchestration-status\": \"Active\"\r\n}" + }, + "url": { + "raw": "{{AAI-URL}}/aai/v11/business/customers/customer/DemoCust_47417dae-a821-4068-9736-e71c7da0d8bf/service-subscriptions/service-subscription/vFWDT/service-instances/service-instance/55322ada-145a-492e-b196-0d171539a4b2", + "host": [ + "{{AAI-URL}}" + ], + "path": [ + "aai", + "v11", + "business", + "customers", + "customer", + "DemoCust_47417dae-a821-4068-9736-e71c7da0d8bf", + "service-subscriptions", + "service-subscription", + "vFWDT", + "service-instances", + "service-instance", + "55322ada-145a-492e-b196-0d171539a4b2" + ] + } + }, + "response": [] + }, + { + "name": "Add dummy-vnf", + "request": { + "method": "PUT", + "header": [ + { + "key": "Content-Type", + "value": "application/json", + "type": "text" + }, + { + "key": "Accept", + "value": "application/json", + "type": "text" + }, + { + "key": "Real-Time", + "value": "true", + "type": "text" + }, + { + "key": "X-TransactionId", + "value": "AAI-Temp-Tool", + "type": "text" + }, + { + "key": "X-FromAppId", + "value": "AAI-Temp-Tool", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\r\n \"vnf-id\": \"de305d54-75b4-431b-adb2-eb6b9e5460141\",\r\n \"vnf-name\": \"vfw-cnf-cds-test-1-vnf\",\r\n \"vnf-type\": \"vfw_cnf_cds/null\",\r\n \"service-id\": \"55322ada-145a-492e-b196-0d171539a4b2\",\r\n \"prov-status\": \"ACTIVE\",\r\n \"orchestration-status\": \"Assigned\",\r\n \"in-maint\": false,\r\n \"is-closed-loop-disabled\": false,\r\n \"model-invariant-id\": \"vTEST_VITELA\",\r\n \"model-version-id\": \"vTEST\",\r\n \"model-customization-id\": \"37b008b9-b367-4359-93fd-74d3ce0ee1a0\",\r\n \"relationship-list\": {\r\n \"relationship\": [\r\n {\r\n \"related-to\": \"service-instance\",\r\n \"relationship-label\": \"org.onap.relationships.inventory.ComposedOf\",\r\n \"related-link\": \"/aai/v14/business/customers/customer/DemoCust_47417dae-a821-4068-9736-e71c7da0d8bf/service-subscriptions/service-subscription/vFWDT/service-instances/service-instance/55322ada-145a-492e-b196-0d171539a4b2\",\r\n \"relationship-data\": [\r\n {\r\n \"relationship-key\": \"customer.global-customer-id\",\r\n \"relationship-value\": \"DemoCust_47417dae-a821-4068-9736-e71c7da0d8bf\"\r\n },\r\n {\r\n \"relationship-key\": \"service-subscription.service-type\",\r\n \"relationship-value\": \"vFWDT\"\r\n },\r\n {\r\n \"relationship-key\": \"service-instance.service-instance-id\",\r\n \"relationship-value\": \"55322ada-145a-492e-b196-0d171539a4b2\"\r\n }\r\n ],\r\n \"related-to-property\": [\r\n {\r\n \"property-key\": \"service-instance.service-instance-name\",\r\n \"property-value\": \"Service_Ete_Namea337dd5b-4620-4ea6-bc3f-6edf1124d659\"\r\n }\r\n ]\r\n },\r\n {\r\n \"related-to\": \"tenant\",\r\n \"relationship-label\": \"org.onap.relationships.inventory.BelongsTo\",\r\n \"related-link\": \"/aai/v14/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/7320ec4a5b9d4589ba7c4412ccfd290f\",\r\n \"relationship-data\": [\r\n {\r\n \"relationship-key\": \"cloud-region.cloud-owner\",\r\n \"relationship-value\": \"CloudOwner\"\r\n },\r\n {\r\n \"relationship-key\": \"cloud-region.cloud-region-id\",\r\n \"relationship-value\": \"RegionOne\"\r\n },\r\n {\r\n \"relationship-key\": \"tenant.tenant-id\",\r\n \"relationship-value\": \"7320ec4a5b9d4589ba7c4412ccfd290f\"\r\n }\r\n ],\r\n \"related-to-property\": [\r\n {\r\n \"property-key\": \"tenant.tenant-name\",\r\n \"property-value\": \"nso-vnf\"\r\n }\r\n ]\r\n },\r\n {\r\n \"related-to\": \"vserver\",\r\n \"relationship-label\": \"tosca.relationships.HostedOn\",\r\n \"related-link\": \"/aai/v14/cloud-infrastructure/cloud-regions/cloud-region/CloudOwner/RegionOne/tenants/tenant/7320ec4a5b9d4589ba7c4412ccfd290f/vservers/vserver/c82153dc-8d84-4e69-9673-5e0a60030779\",\r\n \"relationship-data\": [\r\n {\r\n \"relationship-key\": \"cloud-region.cloud-owner\",\r\n \"relationship-value\": \"CloudOwner\"\r\n },\r\n {\r\n \"relationship-key\": \"cloud-region.cloud-region-id\",\r\n \"relationship-value\": \"RegionOne\"\r\n },\r\n {\r\n \"relationship-key\": \"tenant.tenant-id\",\r\n \"relationship-value\": \"7320ec4a5b9d4589ba7c4412ccfd290f\"\r\n },\r\n {\r\n \"relationship-key\": \"vserver.vserver-id\",\r\n \"relationship-value\": \"c82153dc-8d84-4e69-9673-5e0a60030779\"\r\n }\r\n ],\r\n \"related-to-property\": [\r\n {\r\n \"property-key\": \"vserver.vserver-name\",\r\n \"property-value\": \"viptela_scripts\"\r\n }\r\n ]\r\n }\r\n ]\r\n }\r\n}" + }, + "url": { + "raw": "{{AAI-URL}}/aai/v14/network/generic-vnfs/generic-vnf/de305d54-75b4-431b-adb2-eb6b9e5460141", + "host": [ + "{{AAI-URL}}" + ], + "path": [ + "aai", + "v14", + "network", + "generic-vnfs", + "generic-vnf", + "de305d54-75b4-431b-adb2-eb6b9e5460141" + ] + } + }, + "response": [] + }, + { + "name": "Verify dummy-vnf", + "request": { + "method": "GET", + "header": [ + { + "key": "Content-Type", + "value": "application/json", + "type": "text" + }, + { + "key": "Accept", + "value": "application/json", + "type": "text" + }, + { + "key": "Real-Time", + "value": "true", + "type": "text" + }, + { + "key": "X-TransactionId", + "value": "AAI-Temp-Tool", + "type": "text" + }, + { + "key": "X-FromAppId", + "value": "AAI-Temp-Tool", + "type": "text" + } + ], + "url": { + "raw": "{{AAI-URL}}/aai/v14/network/generic-vnfs/generic-vnf/de305d54-75b4-431b-adb2-eb6b9e5460141", + "host": [ + "{{AAI-URL}}" + ], + "path": [ + "aai", + "v14", + "network", + "generic-vnfs", + "generic-vnf", + "de305d54-75b4-431b-adb2-eb6b9e5460141" + ] + } + }, + "response": [] + }, + { + "name": "Add simple-cl-pnf", + "request": { + "method": "PUT", + "header": [ + { + "key": "Content-Type", + "value": "application/json", + "type": "text" + }, + { + "key": "Accept", + "value": "application/json", + "type": "text" + }, + { + "key": "Real-Time", + "value": "true", + "type": "text" + }, + { + "key": "X-TransactionId", + "value": "AAI-Temp-Tool", + "type": "text" + }, + { + "key": "X-FromAppId", + "value": "AAI-Temp-Tool", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"pnf-name\": \"PNF101\",\n \"pnf-name2\": \"the-hostname\",\n \"pnf-id\": \"927b2580-36d9-4f13-8421-3c9d43b7a57e\",\n \"equip-type\": \"example-equip-type-val-20348\",\n \"equip-vendor\": \"example-equip-vendor-val-52182\",\n \"equip-model\": \"example-equip-model-val-8370\",\n \"management-option\": \"example-management-option-val-72881\",\n \"ipaddress-v4-oam\": \"10.195.200.23\",\n \"in-maint\": false,\n \"ipaddress-v6-oam\": \"\"\n }" + }, + "url": { + "raw": "{{AAI-URL}}/aai/v15/network/pnfs/pnf/PNF101", + "host": [ + "{{AAI-URL}}" + ], + "path": [ + "aai", + "v15", + "network", + "pnfs", + "pnf", + "PNF101" + ] + } + }, + "response": [] + }, + { + "name": "Verify simple-cl-pnf", + "request": { + "method": "GET", + "header": [ + { + "key": "Content-Type", + "type": "text", + "value": "application/json" + }, + { + "key": "Accept", + "type": "text", + "value": "application/json" + }, + { + "key": "Real-Time", + "type": "text", + "value": "true" + }, + { + "key": "X-TransactionId", + "type": "text", + "value": "AAI-Temp-Tool" + }, + { + "key": "X-FromAppId", + "type": "text", + "value": "AAI-Temp-Tool" + } + ], + "url": { + "raw": "{{AAI-URL}}/aai/v14/network/pnfs/pnf/PNF101", + "host": [ + "{{AAI-URL}}" + ], + "path": [ + "aai", + "v14", + "network", + "pnfs", + "pnf", + "PNF101" + ] + } + }, + "response": [] + }, + { + "name": "Add simple-cl-pnf-failure", + "request": { + "method": "PUT", + "header": [ + { + "key": "Content-Type", + "value": "application/json", + "type": "text" + }, + { + "key": "Accept", + "value": "application/json", + "type": "text" + }, + { + "key": "Real-Time", + "value": "true", + "type": "text" + }, + { + "key": "X-TransactionId", + "value": "AAI-Temp-Tool", + "type": "text" + }, + { + "key": "X-FromAppId", + "value": "AAI-Temp-Tool", + "type": "text" + } + ], + "body": { + "mode": "raw", + "raw": "{\n \"pnf-name\": \"simple-cl-pnf-failure\",\n \"pnf-name2\": \"the-hostname\",\n \"pnf-id\": \"927b2580-36d9-4f13-8421-3c9d43b7a77e\",\n \"equip-type\": \"example-equip-type-val-20348\",\n \"equip-vendor\": \"example-equip-vendor-val-52182\",\n \"equip-model\": \"example-equip-model-val-8370\",\n \"management-option\": \"example-management-option-val-72881\",\n \"ipaddress-v4-oam\": \"10.195.200.23\",\n \"in-maint\": false,\n \"ipaddress-v6-oam\": \"\"\n }" + }, + "url": { + "raw": "{{AAI-URL}}/aai/v15/network/pnfs/pnf/simple-cl-pnf-failure", + "host": [ + "{{AAI-URL}}" + ], + "path": [ + "aai", + "v15", + "network", + "pnfs", + "pnf", + "simple-cl-pnf-failure" + ] + } + }, + "response": [] + }, + { + "name": "Verify simple-cl-pnf-failure", + "request": { + "method": "GET", + "header": [ + { + "key": "Content-Type", + "type": "text", + "value": "application/json" + }, + { + "key": "Accept", + "type": "text", + "value": "application/json" + }, + { + "key": "Real-Time", + "type": "text", + "value": "true" + }, + { + "key": "X-TransactionId", + "type": "text", + "value": "AAI-Temp-Tool" + }, + { + "key": "X-FromAppId", + "type": "text", + "value": "AAI-Temp-Tool" + } + ], + "url": { + "raw": "{{AAI-URL}}/aai/v14/network/pnfs/pnf/simple-cl-pnf-failure", + "host": [ + "{{AAI-URL}}" + ], + "path": [ + "aai", + "v14", + "network", + "pnfs", + "pnf", + "simple-cl-pnf-failure" + ] + } + }, + "response": [] + }, + { + "name": "Delete dummy-vnf", + "request": { + "method": "DELETE", + "header": [ + { + "key": "Content-Type", + "type": "text", + "value": "application/json" + }, + { + "key": "Accept", + "type": "text", + "value": "application/json" + }, + { + "key": "Real-Time", + "type": "text", + "value": "true" + }, + { + "key": "X-TransactionId", + "type": "text", + "value": "AAI-Temp-Tool" + }, + { + "key": "X-FromAppId", + "type": "text", + "value": "AAI-Temp-Tool" + } + ], + "body": { + "mode": "raw", + "raw": "" + }, + "url": { + "raw": "{{AAI-URL}}/aai/v14/network/generic-vnfs/generic-vnf/57b008b9-b367-4359-93fd-74d3ce0ee1a0?resource-version=1633120087974", + "host": [ + "{{AAI-URL}}" + ], + "path": [ + "aai", + "v14", + "network", + "generic-vnfs", + "generic-vnf", + "57b008b9-b367-4359-93fd-74d3ce0ee1a0" + ], + "query": [ + { + "key": "resource-version", + "value": "1633120087974" + } + ] + } + }, + "response": [] + }, + { + "name": "Delete simple-cl-pnf", + "request": { + "method": "DELETE", + "header": [ + { + "key": "Content-Type", + "type": "text", + "value": "application/json" + }, + { + "key": "Accept", + "type": "text", + "value": "application/json" + }, + { + "key": "Real-Time", + "type": "text", + "value": "true" + }, + { + "key": "X-TransactionId", + "type": "text", + "value": "AAI-Temp-Tool" + }, + { + "key": "X-FromAppId", + "type": "text", + "value": "AAI-Temp-Tool" + } + ], + "body": { + "mode": "raw", + "raw": "" + }, + "url": { + "raw": "{{AAI-URL}}/aai/v14/network/pnfs/pnf/simple-cl-pnf?resource-version=1621307213843", + "host": [ + "{{AAI-URL}}" + ], + "path": [ + "aai", + "v14", + "network", + "pnfs", + "pnf", + "simple-cl-pnf" + ], + "query": [ + { + "key": "resource-version", + "value": "1621307213843" + } + ] + } + }, + "response": [] + }, + { + "name": "Delete simple-cl-pnf-failure", + "request": { + "method": "DELETE", + "header": [ + { + "key": "Content-Type", + "type": "text", + "value": "application/json" + }, + { + "key": "Accept", + "type": "text", + "value": "application/json" + }, + { + "key": "Real-Time", + "type": "text", + "value": "true" + }, + { + "key": "X-TransactionId", + "type": "text", + "value": "AAI-Temp-Tool" + }, + { + "key": "X-FromAppId", + "type": "text", + "value": "AAI-Temp-Tool" + } + ], + "body": { + "mode": "raw", + "raw": "" + }, + "url": { + "raw": "{{AAI-URL}}/aai/v14/network/pnfs/pnf/simple-cl-pnf-failure?resource-version=1621307213843", + "host": [ + "{{AAI-URL}}" + ], + "path": [ + "aai", + "v14", + "network", + "pnfs", + "pnf", + "simple-cl-pnf-failure" + ], + "query": [ + { + "key": "resource-version", + "value": "1621307213843" + } + ] + } + }, + "response": [] + } + ], + "auth": { + "type": "basic", + "basic": [ + { + "key": "password", + "value": "demo123456!", + "type": "string" + }, + { + "key": "username", + "value": "aai@aai.onap.org", + "type": "string" + } + ] + }, + "event": [ + { + "listen": "prerequest", + "script": { + "type": "text/javascript", + "exec": [ + "" + ] + } + }, + { + "listen": "test", + "script": { + "type": "text/javascript", + "exec": [ + "" + ] + } + } + ] +} diff --git a/docs/development/devtools/tosca/pairwise-testing.yml b/docs/development/devtools/tosca/pairwise-testing.yml index e6c25d0d..c4987aa4 100644 --- a/docs/development/devtools/tosca/pairwise-testing.yml +++ b/docs/development/devtools/tosca/pairwise-testing.yml @@ -11,7 +11,8 @@ data_types: required: true onap.datatype.controlloop.Target: derived_from: tosca.datatypes.Root - description: Definition for a entity in A&AI to perform a control loop operation on + description: Definition for a entity in A&AI to perform a control loop operation + on properties: targetType: type: string @@ -55,7 +56,8 @@ data_types: required: true payload: type: map - description: Name/value pairs of payload information passed by Policy to the actor + description: Name/value pairs of payload information passed by Policy to the + actor required: false metadata: clamp_possible_values: ClampExecution:CDS/payload @@ -83,12 +85,14 @@ data_types: required: true retries: type: integer - description: The number of retries the actor should attempt to perform the operation. + description: The number of retries the actor should attempt to perform the + operation. required: true default: 0 success: type: string - description: Points to the operation to invoke on success. A value of "final_success" indicates and end to the operation. + description: Points to the operation to invoke on success. A value of "final_success" + indicates and end to the operation. required: false default: final_success failure: @@ -98,269 +102,34 @@ data_types: default: final_failure failure_timeout: type: string - description: Points to the operation to invoke when the time out for the operation occurs. + description: Points to the operation to invoke when the time out for the operation + occurs. required: false default: final_failure_timeout failure_retries: type: string - description: Points to the operation to invoke when the current operation has exceeded its max retries. + description: Points to the operation to invoke when the current operation + has exceeded its max retries. required: false default: final_failure_retries failure_exception: type: string - description: Points to the operation to invoke when the current operation causes an exception. + description: Points to the operation to invoke when the current operation + causes an exception. required: false default: final_failure_exception failure_guard: type: string - description: Points to the operation to invoke when the current operation is blocked due to guard policy enforcement. + description: Points to the operation to invoke when the current operation + is blocked due to guard policy enforcement. required: false default: final_failure_guard - onap.datatypes.monitoring.managedObjectDNsBasic: - constraints: [] - properties: - DN: - name: DN - type: string - typeVersion: 0.0.0 - description: Managed object distinguished name - required: true - constraints: [] - metadata: {} - name: onap.datatypes.monitoring.managedObjectDNsBasic - version: 0.0.0 - derived_from: tosca.datatypes.Root - metadata: {} - onap.datatypes.monitoring.managedObjectDNsBasics: - constraints: [] - properties: - managedObjectDNsBasic: - name: managedObjectDNsBasic - type: map - typeVersion: 0.0.0 - description: Managed object distinguished name object - required: true - constraints: [] - entry_schema: - type: onap.datatypes.monitoring.managedObjectDNsBasic - typeVersion: 0.0.0 - constraints: [] - metadata: {} - name: onap.datatypes.monitoring.managedObjectDNsBasics - version: 0.0.0 - derived_from: tosca.datatypes.Root - metadata: {} - onap.datatypes.monitoring.measurementGroup: - constraints: [] - properties: - measurementTypes: - name: measurementTypes - type: list - typeVersion: 0.0.0 - description: List of measurement types - required: true - constraints: [] - entry_schema: - type: onap.datatypes.monitoring.measurementTypes - typeVersion: 0.0.0 - constraints: [] - metadata: {} - managedObjectDNsBasic: - name: managedObjectDNsBasic - type: list - typeVersion: 0.0.0 - description: List of managed object distinguished names - required: true - constraints: [] - entry_schema: - type: onap.datatypes.monitoring.managedObjectDNsBasics - typeVersion: 0.0.0 - constraints: [] - metadata: {} - name: onap.datatypes.monitoring.measurementGroup - version: 0.0.0 - derived_from: tosca.datatypes.Root - metadata: {} - onap.datatypes.monitoring.measurementGroups: - constraints: [] - properties: - measurementGroup: - name: measurementGroup - type: map - typeVersion: 0.0.0 - description: Measurement Group - required: true - constraints: [] - entry_schema: - type: onap.datatypes.monitoring.measurementGroup - typeVersion: 0.0.0 - constraints: [] - metadata: {} - name: onap.datatypes.monitoring.measurementGroups - version: 0.0.0 - derived_from: tosca.datatypes.Root - metadata: {} - onap.datatypes.monitoring.measurementType: - constraints: [] - properties: - measurementType: - name: measurementType - type: string - typeVersion: 0.0.0 - description: Measurement type - required: true - constraints: [] - metadata: {} - name: onap.datatypes.monitoring.measurementType - version: 0.0.0 - derived_from: tosca.datatypes.Root - metadata: {} - onap.datatypes.monitoring.measurementTypes: - constraints: [] - properties: - measurementType: - name: measurementType - type: map - typeVersion: 0.0.0 - description: Measurement type object - required: true - constraints: [] - entry_schema: - type: onap.datatypes.monitoring.measurementType - typeVersion: 0.0.0 - constraints: [] - metadata: {} - name: onap.datatypes.monitoring.measurementTypes - version: 0.0.0 - derived_from: tosca.datatypes.Root - metadata: {} - onap.datatypes.monitoring.nfFilter: - constraints: [] - properties: - modelNames: - name: modelNames - type: list - typeVersion: 0.0.0 - description: List of model names - required: true - constraints: [] - entry_schema: - type: string - typeVersion: 0.0.0 - constraints: [] - metadata: {} - modelInvariantIDs: - name: modelInvariantIDs - type: list - typeVersion: 0.0.0 - description: List of model invariant IDs - required: true - constraints: [] - entry_schema: - type: string - typeVersion: 0.0.0 - constraints: [] - metadata: {} - modelVersionIDs: - name: modelVersionIDs - type: list - typeVersion: 0.0.0 - description: List of model version IDs - required: true - constraints: [] - entry_schema: - type: string - typeVersion: 0.0.0 - constraints: [] - metadata: {} - nfNames: - name: nfNames - type: list - typeVersion: 0.0.0 - description: List of network functions - required: true - constraints: [] - entry_schema: - type: string - typeVersion: 0.0.0 - constraints: [] - metadata: {} - name: onap.datatypes.monitoring.nfFilter - version: 0.0.0 - derived_from: tosca.datatypes.Root - metadata: {} - onap.datatypes.monitoring.subscription: - constraints: [] - properties: - measurementGroups: - name: measurementGroups - type: list - typeVersion: 0.0.0 - description: Measurement Groups - required: true - constraints: [] - entry_schema: - type: onap.datatypes.monitoring.measurementGroups - typeVersion: 0.0.0 - constraints: [] - metadata: {} - fileBasedGP: - name: fileBasedGP - type: integer - typeVersion: 0.0.0 - description: File based granularity period - required: true - constraints: [] - metadata: {} - fileLocation: - name: fileLocation - type: string - typeVersion: 0.0.0 - description: ROP file location - required: true - constraints: [] - metadata: {} - subscriptionName: - name: subscriptionName - type: string - typeVersion: 0.0.0 - description: Name of the subscription - required: true - constraints: [] - metadata: {} - administrativeState: - name: administrativeState - type: string - typeVersion: 0.0.0 - description: State of the subscription - required: true - constraints: - - valid_values: - - LOCKED - - UNLOCKED - metadata: {} - nfFilter: - name: nfFilter - type: map - typeVersion: 0.0.0 - description: Network function filter - required: true - constraints: [] - entry_schema: - type: onap.datatypes.monitoring.nfFilter - typeVersion: 0.0.0 - constraints: [] - metadata: {} - name: onap.datatypes.monitoring.subscription - version: 0.0.0 - derived_from: tosca.datatypes.Root - metadata: {} - org.onap.datatypes.policy.clamp.controlloop.httpControlLoopElement.RestRequest: + org.onap.datatypes.policy.clamp.acm.httpControlLoopElement.RestRequest: version: 1.0.0 derived_from: tosca.datatypes.Root properties: restRequestId: - type: onap.datatypes.ToscaConceptIdentifier + type: onap.datatypes.ToscaConceptIdentifier typeVersion: 1.0.0 required: true description: The name and version of a REST request to be sent to a REST endpoint @@ -368,7 +137,11 @@ data_types: type: string required: true constraints: - - valid_values: [POST, PUT, GET, DELETE] + - valid_values: + - POST + - PUT + - GET + - DELETE description: The REST method to use path: type: string @@ -381,49 +154,35 @@ data_types: expectedResponse: type: integer required: true - constraints: - - in_range: [100, 599] + constraints: [] description: THe expected HTTP status code for the REST request - org.onap.datatypes.policy.clamp.controlloop.httpControlLoopElement.ConfigurationEntity: - version: 1.0.0 - derived_from: tosca.datatypes.Root - properties: - configurationEntityId: - type: onap.datatypes.ToscaConceptIdentifier + org.onap.datatypes.policy.clamp.acm.httpControlLoopElement.ConfigurationEntity: + version: 1.0.0 + derived_from: tosca.datatypes.Root + properties: + configurationEntityId: + type: onap.datatypes.ToscaConceptIdentifier + typeVersion: 1.0.0 + required: true + description: The name and version of a Configuration Entity to be handled + by the HTTP Automation Composition Element + restSequence: + type: list + entry_schema: + type: org.onap.datatypes.policy.clamp.acm.httpControlLoopElement.RestRequest typeVersion: 1.0.0 - required: true - description: The name and version of a Configuration Entity to be handled by the HTTP Control Loop Element - restSequence: - type: list - entry_schema: - type: org.onap.datatypes.policy.clamp.controlloop.httpControlLoopElement.RestRequest - typeVersion: 1.0.0 - description: A sequence of REST commands to send to the REST endpoint + description: A sequence of REST commands to send to the REST endpoint policy_types: onap.policies.Monitoring: derived_from: tosca.policies.Root description: a base policy type for all policies that govern monitoring provisioning version: 1.0.0 name: onap.policies.Monitoring - onap.policies.Sirisha: + onap.policies.customPolicyType: derived_from: tosca.policies.Root description: a base policy type for all policies that govern monitoring provisioning version: 1.0.0 - name: onap.policies.Sirisha - onap.policies.monitoring.dcae-pm-subscription-handler: - properties: - pmsh_policy: - name: pmsh_policy - type: onap.datatypes.monitoring.subscription - typeVersion: 0.0.0 - description: PMSH Policy JSON - required: false - constraints: [] - metadata: {} - name: onap.policies.monitoring.dcae-pm-subscription-handler - version: 1.0.0 - derived_from: onap.policies.Monitoring - metadata: {} + name: onap.policies.customPolicyType onap.policies.controlloop.operational.Common: derived_from: tosca.policies.Root version: 1.0.0 @@ -444,12 +203,14 @@ policy_types: required: true abatement: type: boolean - description: Whether an abatement event message will be expected for the control loop from DCAE. + description: Whether an abatement event message will be expected for the control + loop from DCAE. required: true default: false trigger: type: string - description: Initial operation to execute upon receiving an Onset event message for the Control Loop. + description: Initial operation to execute upon receiving an Onset event message + for the Control Loop. required: true operations: type: list @@ -466,7 +227,8 @@ policy_types: properties: engineServiceParameters: type: string - description: The engine parameters like name, instanceCount, policy implementation, parameters etc. + description: The engine parameters like name, instanceCount, policy implementation, + parameters etc. required: true eventInputParameters: type: string @@ -480,15 +242,16 @@ policy_types: type: string description: Name/value pairs of properties to be set for APEX if needed. required: false + node_types: - org.onap.policy.clamp.controlloop.Participant: + org.onap.policy.clamp.acm.Participant: version: 1.0.1 derived_from: tosca.nodetypes.Root properties: provider: type: string requred: false - org.onap.policy.clamp.controlloop.ControlLoopElement: + org.onap.policy.clamp.acm.AutomationCompositionElement: version: 1.0.1 derived_from: tosca.nodetypes.Root properties: @@ -497,7 +260,7 @@ node_types: required: false metadata: common: true - description: Specifies the organization that provides the control loop element + description: Specifies the organization that provides the automation composition element participant_id: type: onap.datatypes.ToscaConceptIdentifier requred: true @@ -508,7 +271,7 @@ node_types: required: true metadata: common: true - description: The identity of the participant type that hosts this type of Control Loop Element + description: The identity of the participant type that hosts this type of Automation Composition Element startPhase: type: integer required: false @@ -516,9 +279,9 @@ node_types: - greater_or_equal: 0 metadata: common: true - description: A value indicating the start phase in which this control loop element will be started, the - first start phase is zero. Control Loop Elements are started in their start_phase order and stopped - in reverse start phase order. Control Loop Elements with the same start phase are started and + description: A value indicating the start phase in which this automation composition element will be started, the + first start phase is zero. Automation Composition Elements are started in their start_phase order and stopped + in reverse start phase order. Automation Composition Elements with the same start phase are started and stopped simultaneously uninitializedToPassiveTimeout: type: integer @@ -556,7 +319,7 @@ node_types: metadata: common: true description: The maximum time in seconds to wait for a state chage from passive to uninitialized - org.onap.policy.clamp.controlloop.ControlLoop: + org.onap.policy.clamp.acm.AutomationComposition: version: 1.0.1 derived_from: tosca.nodetypes.Root properties: @@ -565,7 +328,7 @@ node_types: required: false metadata: common: true - description: Specifies the organization that provides the control loop element + description: Specifies the organization that provides the automation composition element elements: type: list required: true @@ -573,30 +336,10 @@ node_types: common: true entry_schema: type: onap.datatypes.ToscaConceptIdentifier - description: Specifies a list of control loop element definitions that make up this control loop definition - org.onap.policy.clamp.controlloop.PolicyControlLoopElement: - version: 1.0.1 - derived_from: org.onap.policy.clamp.controlloop.ControlLoopElement - properties: - policy_type_id: - type: onap.datatypes.ToscaConceptIdentifier - requred: true - policy_id: - type: onap.datatypes.ToscaConceptIdentifier - requred: false - org.onap.policy.clamp.controlloop.DerivedPolicyControlLoopElement: - version: 1.0.1 - derived_from: org.onap.policy.clamp.controlloop.PolicyControlLoopElement - properties: - policy_type_id: - type: onap.datatypes.ToscaConceptIdentifier - requred: true - policy_id: - type: onap.datatypes.ToscaConceptIdentifier - requred: false - org.onap.policy.clamp.controlloop.DerivedDerivedPolicyControlLoopElement: + description: Specifies a list of automation composition element definitions that make up this automation composition definition + org.onap.policy.clamp.acm.PolicyAutomationCompositionElement: version: 1.0.1 - derived_from: org.onap.policy.clamp.controlloop.DerivedPolicyControlLoopElement + derived_from: org.onap.policy.clamp.acm.AutomationCompositionElement properties: policy_type_id: type: onap.datatypes.ToscaConceptIdentifier @@ -604,16 +347,16 @@ node_types: policy_id: type: onap.datatypes.ToscaConceptIdentifier requred: false - org.onap.policy.clamp.controlloop.CDSControlLoopElement: + org.onap.policy.clamp.acm.CDSAutomationCompositionElement: version: 1.0.1 - derived_from: org.onap.policy.clamp.controlloop.ControlLoopElement + derived_from: org.onap.policy.clamp.acm.AutomationCompositionElement properties: cds_blueprint_id: type: onap.datatypes.ToscaConceptIdentifier requred: true - org.onap.policy.clamp.controlloop.K8SMicroserviceControlLoopElement: + org.onap.policy.clamp.acm.K8SMicroserviceAutomationCompositionElement: version: 1.0.1 - derived_from: org.onap.policy.clamp.controlloop.ControlLoopElement + derived_from: org.onap.policy.clamp.acm.AutomationCompositionElement properties: chart: type: string @@ -631,9 +374,9 @@ node_types: values: type: string requred: true - org.onap.policy.clamp.controlloop.HttpControlLoopElement: + org.onap.policy.clamp.acm.HttpAutomationCompositionElement: version: 1.0.1 - derived_from: org.onap.policy.clamp.controlloop.ControlLoopElement + derived_from: org.onap.policy.clamp.acm.AutomationCompositionElement properties: baseUrl: type: string @@ -649,18 +392,12 @@ node_types: type: map required: true entry_schema: - type: org.onap.datatypes.policy.clamp.controlloop.httpControlLoopElement.ConfigurationEntity + type: org.onap.datatypes.policy.clamp.acm.httpAutomationCompositionElement.ConfigurationEntity typeVersion: 1.0.0 - description: The connfiguration entities the Control Loop Element is managing and their associated REST requests + description: The connfiguration entities the Automation Composition Element is managing and their associated REST requests topology_template: inputs: - pmsh_monitoring_policy: - type: onap.datatypes.ToscaConceptIdentifier - description: The ID of the PMSH monitoring policy to use - default: - name: MICROSERVICE_vLoadBalancerMS_v1_0_dcae-pm-subscription-handler_1_0_0test - version: 1.0.0 pmsh_operational_policy: type: onap.datatypes.ToscaConceptIdentifier description: The ID of the PMSH operational policy to use @@ -668,130 +405,91 @@ topology_template: name: operational.apex.pmcontrol version: 1.0.0 node_templates: - org.onap.policy.controlloop.PolicyControlLoopParticipant: + org.onap.policy.clamp.acm.PolicyParticipant: version: 2.3.1 - type: org.onap.policy.clamp.controlloop.Participant + type: org.onap.policy.clamp.acm.Participant type_version: 1.0.1 description: Participant for DCAE microservices properties: provider: ONAP - org.onap.domain.pmsh.PMSH_MonitoringPolicyControlLoopElement: + org.onap.domain.pmsh.PMSH_OperationalPolicyAutomationCompositionElement: version: 1.2.3 - type: org.onap.policy.clamp.controlloop.PolicyControlLoopElement + type: org.onap.policy.clamp.acm.PolicyAutomationCompositionElement type_version: 1.0.0 - description: Control loop element for the monitoring policy for Performance Management Subscription Handling + description: Automation composition element for the operational policy for Performance Management Subscription Handling properties: provider: Ericsson participant_id: name: org.onap.PM_Policy version: 1.0.0 participantType: - name: org.onap.policy.controlloop.PolicyControlLoopParticipant - version: 2.3.1 - policy_type_id: - name: onap.policies.monitoring.pm-subscription-handler - version: 1.0.0 - policy_id: - get_input: pmsh_monitoring_policy - org.onap.domain.pmsh.PMSH_OperationalPolicyControlLoopElement: - version: 1.2.3 - type: org.onap.policy.clamp.controlloop.PolicyControlLoopElement - type_version: 1.0.0 - description: Control loop element for the operational policy for Performance Management Subscription Handling - properties: - provider: Ericsson - participant_id: - name: org.onap.PM_Policy - version: 1.0.0 - participantType: - name: org.onap.policy.controlloop.PolicyControlLoopParticipant + name: org.onap.policy.clamp.acm.PolicyParticipant version: 2.3.1 policy_type_id: name: onap.policies.operational.pm-subscription-handler version: 1.0.0 policy_id: get_input: pmsh_operational_policy - org.onap.k8s.controlloop.K8SControlLoopParticipant: + + + org.onap.policy.clamp.acm.KubernetesParticipant: version: 2.3.4 - type: org.onap.policy.clamp.controlloop.Participant + type: org.onap.policy.clamp.acm.Participant type_version: 1.0.1 description: Participant for K8S properties: provider: ONAP - org.onap.domain.database.PMSH_K8SMicroserviceControlLoopElement: + org.onap.domain.database.PMSH_K8SMicroserviceAutomationCompositionElement: # Chart from new repository version: 1.2.3 - type: org.onap.policy.clamp.controlloop.K8SMicroserviceControlLoopElement + type: org.onap.policy.clamp.acm.K8SMicroserviceAutomationCompositionElement type_version: 1.0.0 - description: Control loop element for the K8S microservice for PMSH + description: Automation composition element for the K8S microservice for PMSH properties: provider: ONAP participant_id: name: K8sParticipant0 version: 1.0.0 participantType: - name: org.onap.k8s.controlloop.K8SControlLoopParticipant + name: org.onap.policy.clamp.acm.KubernetesParticipant version: 2.3.4 chart: chartId: name: dcae-pmsh - version: 8.0.0 + version: 10.0.0 namespace: onap - releaseName: pmshms + releaseName: onap-dcae-pmsh repository: repoName: chartmuseum - protocol: http - address: chart-museum - port: 80 + address: http://chart-museum:80 userName: onapinitializer password: demo123456! overrideParams: global.masterPassword: test - - org.onap.domain.database.Local_K8SMicroserviceControlLoopElement: - # Chart installation without passing repository info - version: 1.2.3 - type: org.onap.policy.clamp.controlloop.K8SMicroserviceControlLoopElement - type_version: 1.0.0 - description: Control loop element for the K8S microservice for local chart - properties: - provider: ONAP - participant_id: - name: K8sParticipant0 - version: 1.0.0 - participantType: - name: org.onap.k8s.controlloop.K8SControlLoopParticipant - version: 2.3.4 - chart: - chartId: - name: nginx-ingress - version: 0.9.1 - releaseName: nginxms - namespace: test - org.onap.controlloop.HttpControlLoopParticipant: + org.onap.policy.clamp.acm.HttpParticipant: version: 2.3.4 - type: org.onap.policy.clamp.controlloop.Participant + type: org.onap.policy.clamp.acm.Participant type_version: 1.0.1 description: Participant for Http requests properties: provider: ONAP - org.onap.domain.database.Http_PMSHMicroserviceControlLoopElement: + org.onap.domain.database.Http_PMSHMicroserviceAutomationCompositionElement: # Consul http config for PMSH. version: 1.2.3 - type: org.onap.policy.clamp.controlloop.HttpControlLoopElement + type: org.onap.policy.clamp.acm.HttpAutomationCompositionElement type_version: 1.0.1 - description: Control loop element for the http requests of PMSH microservice + description: Automation composition element for the http requests of PMSH microservice properties: provider: ONAP participant_id: name: HttpParticipant0 version: 1.0.0 participantType: - name: org.onap.k8s.controlloop.HttpControlLoopParticipant + name: org.onap.policy.clamp.acm.HttpParticipant version: 2.3.4 uninitializedToPassiveTimeout: 180 startPhase: 1 - baseUrl: http://consul-server-ui:8500 + baseUrl: https://dcae-pmsh:8443 httpHeaders: Content-Type: application/json configurationEntities: @@ -802,195 +500,2889 @@ topology_template: - restRequestId: name: request1 version: 1.0.1 - httpMethod: PUT - path: v1/kv/dcae-pmsh2 + httpMethod: POST + path: subscription body: '{ - "control_loop_name":"pmsh-control-loop", - "operational_policy_name":"pmsh-operational-policy", - "aaf_password":"demo123456!", - "aaf_identity":"dcae@dcae.onap.org", - "cert_path":"/opt/app/pmsh/etc/certs/cert.pem", - "key_path":"/opt/app/pmsh/etc/certs/key.pem", - "ca_cert_path":"/opt/app/pmsh/etc/certs/cacert.pem", - "enable_tls":"true", - "pmsh_policy":{ - "subscription":{ - "subscriptionName":"ExtraPM-All-gNB-R2B", - "administrativeState":"UNLOCKED", - "fileBasedGP":15, - "fileLocation":"\/pm\/pm.xml", - "nfFilter":{ - "nfNames":[ - "^pnf.*", - "^vnf.*" - ], - "modelInvariantIDs":[ - ], - "modelVersionIDs":[ - ], - "modelNames":[ - ] - }, - "measurementGroups":[ - { - "measurementGroup":{ - "measurementTypes":[ - { - "measurementType":"countera" + "subscription":{ + "subscriptionName":"new_sub_01", + "operationalPolicyName":"pmsh-operational-policy", + "controlLoopName":"controlLoop-name", + "nfFilter":{ + "nfNames":[ + "^pnf*" + ], + "modelInvariantIDs":[ + "7129e420-d396-4efb-af02-6b83499b12f5" + ], + "modelVersionIDs":[ + "e80a6ae3-cafd-4d24-850d-e14c084a5ca7" + ], + "modelNames":[ + "pnf_134" + ] }, + "measurementGroups":[ { - "measurementType":"counterb" - } - ], - "managedObjectDNsBasic":[ + "measurementGroup":{ + "measurementGroupName":"msgroup_01", + "administrativeState":"UNLOCKED", + "fileBasedGP":15, + "fileLocation":"/pm/pm.xml", + "measurementTypes":[ + { + "measurementType":"EutranCell.*" + }, + { + "measurementType":"EutranCellRelation.pmCounter1" + }, + { + "measurementType":"EutranCellRelation.pmCounter2" + } + ], + "managedObjectDNsBasic":[ { - "DN":"dna" + "DN":"ManagedElement=1,ENodeBFunction=1,EUtranCell=CityCenter1" }, { - "DN":"dnb" - } - ] - } - }, - { - "measurementGroup":{ - "measurementTypes":[ - { - "measurementType":"counterc" + "DN":"ManagedElement=1,ENodeBFunction=1,EUtranCell=CityCenter1, EUtranCellRelation=CityCenter2" }, { - "measurementType":"counterd" + "DN":"ManagedElement=1,ENodeBFunction=1,EUtranCell=CityCenter1, EUtranCellRelation=CityCenter3" } - ], - "managedObjectDNsBasic":[ - { - "DN":"dnc" - }, - { - "DN":"dnd" + ] } - ] - } - } - ] - } - }, - "streams_subscribes":{ - "aai_subscriber":{ - "type":"message_router", - "dmaap_info":{ - "topic_url":"https://10.152.183.151:3905/events/AAI_EVENT", - "client_role":"org.onap.dcae.aaiSub", - "location":"san-francisco", - "client_id":"1575976809466" - } - }, - "policy_pm_subscriber":{ - "type":"message_router", - "dmaap_info":{ - "topic_url":"https://10.152.183.151:3905/events/org.onap.dmaap.mr.PM_SUBSCRIPTIONS", - "client_role":"org.onap.dcae.pmSubscriber", - "location":"san-francisco", - "client_id":"1575876809456" - } - } - }, - "streams_publishes":{ - "policy_pm_publisher":{ - "type":"message_router", - "dmaap_info":{ - "topic_url":"https://10.152.183.151:3905/events/org.onap.dmaap.mr.PM_SUBSCRIPTIONS", - "client_role":"org.onap.dcae.pmPublisher", - "location":"san-francisco", - "client_id":"1475976809466" - } - }, - "other_publisher":{ - "type":"message_router", - "dmaap_info":{ - "topic_url":"https://10.152.183.151:3905/events/org.onap.dmaap.mr.SOME_OTHER_TOPIC", - "client_role":"org.onap.dcae.pmControlPub", - "location":"san-francisco", - "client_id":"1875976809466" - } - } - } - }' - expectedResponse: 200 - org.onap.domain.sample.GenericK8s_ControlLoopDefinition: + } + ] + } + }' + expectedResponse: 201 + + + org.onap.domain.sample.GenericK8s_AutomationCompositionDefinition: version: 1.2.3 - type: org.onap.policy.clamp.controlloop.ControlLoop + type: org.onap.policy.clamp.acm.AutomationComposition type_version: 1.0.0 - description: Control loop for Hello World + description: Automation composition for Hello World properties: provider: ONAP elements: - - name: org.onap.domain.database.PMSH_K8SMicroserviceControlLoopElement - version: 1.2.3 - - name: org.onap.domain.database.Local_K8SMicroserviceControlLoopElement + - name: org.onap.domain.database.PMSH_K8SMicroserviceAutomationCompositionElement version: 1.2.3 - - name: org.onap.domain.database.Http_PMSHMicroserviceControlLoopElement + - name: org.onap.domain.database.Http_PMSHMicroserviceAutomationCompositionElement version: 1.2.3 - - name: org.onap.domain.pmsh.PMSH_MonitoringPolicyControlLoopElement + - name: org.onap.domain.pmsh.PMSH_OperationalPolicyAutomationCompositionElement version: 1.2.3 - - name: org.onap.domain.pmsh.PMSH_OperationalPolicyControlLoopElement - version: 1.2.3 - policies: - - MICROSERVICE_vLoadBalancerMS_v1_0_dcae-pm-subscription-handler_1_0_0test: - type: onap.policies.monitoring.dcae-pm-subscription-handler + - operational.apex.pmcontrol: + type: onap.policies.controlloop.operational.common.Apex type_version: 1.0.0 - name: MICROSERVICE_vLoadBalancerMS_v1_0_dcae-pm-subscription-handler_1_0_0test version: 1.0.0 - metadata: - policy-id: MICROSERVICE_vLoadBalancerMS_v1_0_dcae-pm-subscription-handler_1_0_0test - policy-version: 1.0.0 properties: - pmsh_policy: - fileBasedGP: 15 - fileLocation: /pm/pm.xml - subscriptionName: subscriptiona - administrativeState: UNLOCKED - nfFilter: - onap.datatypes.monitoring.nfFilter: - modelVersionIDs: - - e80a6ae3-cafd-4d24-850d-e14c084a5ca9 - modelInvariantIDs: - - 5845y423-g654-6fju-po78-8n53154532k6 - - 7129e420-d396-4efb-af02-6b83499b12f8 - modelNames: [] - nfNames: - - '"^pnf1.*"' - measurementGroups: - - measurementGroup: - onap.datatypes.monitoring.measurementGroup: - measurementTypes: - - measurementType: - onap.datatypes.monitoring.measurementType: - measurementType: countera - - measurementType: - onap.datatypes.monitoring.measurementType: - measurementType: counterb - managedObjectDNsBasic: - - managedObjectDNsBasic: - onap.datatypes.monitoring.managedObjectDNsBasic: - DN: dna - - managedObjectDNsBasic: - onap.datatypes.monitoring.managedObjectDNsBasic: - DN: dnb - - measurementGroup: - onap.datatypes.monitoring.measurementGroup: - measurementTypes: - - measurementType: - onap.datatypes.monitoring.measurementType: - measurementType: counterc - - measurementType: - onap.datatypes.monitoring.measurementType: - measurementType: counterd - managedObjectDNsBasic: - - managedObjectDNsBasic: - onap.datatypes.monitoring.managedObjectDNsBasic: - DN: dnc - - managedObjectDNsBasic: - onap.datatypes.monitoring.managedObjectDNsBasic: - DN: dnd
\ No newline at end of file + engineServiceParameters: + name: MyApexEngine + version: 0.0.1 + id: 45 + instanceCount: 2 + deploymentPort: 12561 + engineParameters: + executorParameters: + JAVASCRIPT: + parameterClassName: org.onap.policy.apex.plugins.executor.javascript.JavascriptExecutorParameters + contextParameters: + parameterClassName: org.onap.policy.apex.context.parameters.ContextParameters + schemaParameters: + Avro: + parameterClassName: org.onap.policy.apex.plugins.context.schema.avro.AvroSchemaHelperParameters + Java: + parameterClassName: org.onap.policy.apex.context.impl.schema.java.JavaSchemaHelperParameters + jsonAdapters: + Instant: + adaptedClass: java.time.Instant + adaptorClass: org.onap.policy.common.gson.InstantAsMillisTypeAdapter + policy_type_impl: + apexPolicyModel: + key: + name: PMControlPolicy + version: 0.0.1 + keyInformation: + key: + name: PMControlPolicy_KeyInfo + version: 0.0.1 + keyInfoMap: + entry: + - key: + name: CDSActionIdentifiersType + version: 0.0.1 + value: + key: + name: CDSActionIdentifiersType + version: 0.0.1 + UUID: 6e5fa19b-14df-37e3-a4ae-8c537e861a82 + description: Generated description for concept referred to by + key "CDSActionIdentifiersType:0.0.1" + - key: + name: CDSCreateResponseEvent + version: 0.0.1 + value: + key: + name: CDSCreateResponseEvent + version: 0.0.1 + UUID: 14b29e38-ac75-3273-aa4e-8583c0aa7dad + description: Generated description for concept referred to by + key "CDSCreateResponseEvent:0.0.1" + - key: + name: CDSCreateResponsePayloadType + version: 0.0.1 + value: + key: + name: CDSCreateResponsePayloadType + version: 0.0.1 + UUID: 04573f8f-e772-30a5-b1d9-d7318d4a1e13 + description: Generated description for concept referred to by + key "CDSCreateResponsePayloadType:0.0.1" + - key: + name: CDSCreateResponsePolicy + version: 0.0.1 + value: + key: + name: CDSCreateResponsePolicy + version: 0.0.1 + UUID: e126c965-fc09-3bfe-8f55-70f380a4a49c + description: Generated description for concept referred to by + key "CDSCreateResponsePolicy:0.0.1" + - key: + name: CDSCreateResponseTask + version: 0.0.1 + value: + key: + name: CDSCreateResponseTask + version: 0.0.1 + UUID: 6165ee82-afd2-3aab-a517-f00b3f2461d2 + description: Generated description for concept referred to by + key "CDSCreateResponseTask:0.0.1" + - key: + name: CDSCreateSubscriptionPayloadType + version: 0.0.1 + value: + key: + name: CDSCreateSubscriptionPayloadType + version: 0.0.1 + UUID: 8350ac5e-c157-38b9-9614-a0f93a830e60 + description: Generated description for concept referred to by + key "CDSCreateSubscriptionPayloadType:0.0.1" + - key: + name: CDSCreateSubscriptionRequestEvent + version: 0.0.1 + value: + key: + name: CDSCreateSubscriptionRequestEvent + version: 0.0.1 + UUID: cfa325ba-226b-3a31-9183-ec43e2b6e9a2 + description: Generated description for concept referred to by + key "CDSCreateSubscriptionRequestEvent:0.0.1" + - key: + name: CDSDeleteResponseEvent + version: 0.0.1 + value: + key: + name: CDSDeleteResponseEvent + version: 0.0.1 + UUID: 8be9c0fa-7437-3841-aff2-b3cec6ae3bd8 + description: Generated description for concept referred to by + key "CDSDeleteResponseEvent:0.0.1" + - key: + name: CDSDeleteResponsePayloadType + version: 0.0.1 + value: + key: + name: CDSDeleteResponsePayloadType + version: 0.0.1 + UUID: 3fbfe0c9-152e-34d3-a504-09cd13c058d0 + description: Generated description for concept referred to by + key "CDSDeleteResponsePayloadType:0.0.1" + - key: + name: CDSDeleteResponsePolicy + version: 0.0.1 + value: + key: + name: CDSDeleteResponsePolicy + version: 0.0.1 + UUID: a780251c-edd5-3132-b865-04313246b43c + description: Generated description for concept referred to by + key "CDSDeleteResponsePolicy:0.0.1" + - key: + name: CDSDeleteResponseTask + version: 0.0.1 + value: + key: + name: CDSDeleteResponseTask + version: 0.0.1 + UUID: afce4555-3aa3-3521-a7d8-ee8cdf0d3efc + description: Generated description for concept referred to by + key "CDSDeleteResponseTask:0.0.1" + - key: + name: CDSDeleteSubscriptionPayloadType + version: 0.0.1 + value: + key: + name: CDSDeleteSubscriptionPayloadType + version: 0.0.1 + UUID: 12658406-9147-3c9d-a38c-5ad5e30b092b + description: Generated description for concept referred to by + key "CDSDeleteSubscriptionPayloadType:0.0.1" + - key: + name: CDSDeleteSubscriptionRequestEvent + version: 0.0.1 + value: + key: + name: CDSDeleteSubscriptionRequestEvent + version: 0.0.1 + UUID: 24380c95-9289-36e6-8cbf-0edefa15ccd9 + description: Generated description for concept referred to by + key "CDSDeleteSubscriptionRequestEvent:0.0.1" + - key: + name: CDSRequestCommonHeaderType + version: 0.0.1 + value: + key: + name: CDSRequestCommonHeaderType + version: 0.0.1 + UUID: 35590ac0-062c-39f1-8786-b4ff716e30b1 + description: Generated description for concept referred to by + key "CDSRequestCommonHeaderType:0.0.1" + - key: + name: CDSResponseCommonHeaderType + version: 0.0.1 + value: + key: + name: CDSResponseCommonHeaderType + version: 0.0.1 + UUID: dd7e1805-885a-350b-aaf9-ed541321ae3c + description: Generated description for concept referred to by + key "CDSResponseCommonHeaderType:0.0.1" + - key: + name: CDSResponseStatusEvent + version: 0.0.1 + value: + key: + name: CDSResponseStatusEvent + version: 0.0.1 + UUID: 7986e21b-32f7-302e-9554-31f21b673493 + description: Generated description for concept referred to by + key "CDSResponseStatusEvent:0.0.1" + - key: + name: CDSResponseStatusType + version: 0.0.1 + value: + key: + name: CDSResponseStatusType + version: 0.0.1 + UUID: 92b8a2cf-344e-3ce1-8cc0-2b7d3cb695fa + description: Generated description for concept referred to by + key "CDSResponseStatusType:0.0.1" + - key: + name: CreateSubscriptionPayloadEvent + version: 0.0.1 + value: + key: + name: CreateSubscriptionPayloadEvent + version: 0.0.1 + UUID: 92162397-1a8e-3a3f-a469-d2af7700af4a + description: Generated description for concept referred to by + key "CreateSubscriptionPayloadEvent:0.0.1" + - key: + name: CreateSubscriptionPayloadTask + version: 0.0.1 + value: + key: + name: CreateSubscriptionPayloadTask + version: 0.0.1 + UUID: bc0c69f0-52ed-38ea-b468-ae4a6fd1730d + description: Generated description for concept referred to by + key "CreateSubscriptionPayloadTask:0.0.1" + - key: + name: CreateSubscriptionRequestTask + version: 0.0.1 + value: + key: + name: CreateSubscriptionRequestTask + version: 0.0.1 + UUID: 89cb75e9-f06c-30d3-b4ff-698d45f63869 + description: Generated description for concept referred to by + key "CreateSubscriptionRequestTask:0.0.1" + - key: + name: DeleteSubscriptionPayloadEvent + version: 0.0.1 + value: + key: + name: DeleteSubscriptionPayloadEvent + version: 0.0.1 + UUID: 994fa441-04ab-33bb-832d-1cd12ab5d074 + description: Generated description for concept referred to by + key "DeleteSubscriptionPayloadEvent:0.0.1" + - key: + name: DeleteSubscriptionPayloadTask + version: 0.0.1 + value: + key: + name: DeleteSubscriptionPayloadTask + version: 0.0.1 + UUID: 0f519117-5fea-3e4b-941f-8f778100465f + description: Generated description for concept referred to by + key "DeleteSubscriptionPayloadTask:0.0.1" + - key: + name: DeleteSubscriptionRequestTask + version: 0.0.1 + value: + key: + name: DeleteSubscriptionRequestTask + version: 0.0.1 + UUID: acb772fe-d442-39e3-98f9-b1080caf4150 + description: Generated description for concept referred to by + key "DeleteSubscriptionRequestTask:0.0.1" + - key: + name: MRResponseEvent + version: 0.0.1 + value: + key: + name: MRResponseEvent + version: 0.0.1 + UUID: 13c747a3-6bae-3bcf-9c80-b152e01dc194 + description: Generated description for concept referred to by + key "MRResponseEvent:0.0.1" + - key: + name: PMControlPolicy + version: 0.0.1 + value: + key: + name: PMControlPolicy + version: 0.0.1 + UUID: acf1e55c-7bc5-3bd5-975a-0ca54afcd8a4 + description: Generated description for concept referred to by + key "PMControlPolicy:0.0.1" + - key: + name: PMControlPolicy_Albums + version: 0.0.1 + value: + key: + name: PMControlPolicy_Albums + version: 0.0.1 + UUID: b38ad204-c2c8-32f4-9b5a-dda0aeb0145b + description: Generated description for concept referred to by + key "PMControlPolicy_Albums:0.0.1" + - key: + name: PMControlPolicy_Events + version: 0.0.1 + value: + key: + name: PMControlPolicy_Events + version: 0.0.1 + UUID: be3871a0-c42a-3113-a066-82d192840eca + description: Generated description for concept referred to by + key "PMControlPolicy_Events:0.0.1" + - key: + name: PMControlPolicy_KeyInfo + version: 0.0.1 + value: + key: + name: PMControlPolicy_KeyInfo + version: 0.0.1 + UUID: ced37634-28a4-3178-b7f6-2980794927b0 + description: Generated description for concept referred to by + key "PMControlPolicy_KeyInfo:0.0.1" + - key: + name: PMControlPolicy_Policies + version: 0.0.1 + value: + key: + name: PMControlPolicy_Policies + version: 0.0.1 + UUID: be3d180d-ef9c-3a75-8e9c-84271a038bed + description: Generated description for concept referred to by + key "PMControlPolicy_Policies:0.0.1" + - key: + name: PMControlPolicy_Schemas + version: 0.0.1 + value: + key: + name: PMControlPolicy_Schemas + version: 0.0.1 + UUID: e61973f1-189c-39e5-82f6-0d3afe298a20 + description: Generated description for concept referred to by + key "PMControlPolicy_Schemas:0.0.1" + - key: + name: PMControlPolicy_Tasks + version: 0.0.1 + value: + key: + name: PMControlPolicy_Tasks + version: 0.0.1 + UUID: 5658adb3-2962-30a3-a241-fae75bb8eb4a + description: Generated description for concept referred to by + key "PMControlPolicy_Tasks:0.0.1" + - key: + name: PMSubscriptionAlbum + version: 0.0.1 + value: + key: + name: PMSubscriptionAlbum + version: 0.0.1 + UUID: c2bd6f0d-6854-317a-9be2-97c08338428c + description: Generated description for concept referred to by + key "PMSubscriptionAlbum:0.0.1" + - key: + name: PMSubscriptionOutputEvent + version: 0.0.1 + value: + key: + name: PMSubscriptionOutputEvent + version: 0.0.1 + UUID: 992b7819-9f69-3aa0-bb0f-6e45ea15ce05 + description: Generated description for concept referred to by + key "PMSubscriptionOutputEvent:0.0.1" + - key: + name: PMSubscriptionType + version: 0.0.1 + value: + key: + name: PMSubscriptionType + version: 0.0.1 + UUID: 73c1c397-4fc3-357f-93b6-a8ad707fbaae + description: Generated description for concept referred to by + key "PMSubscriptionType:0.0.1" + - key: + name: ReceiveEventPolicy + version: 0.0.1 + value: + key: + name: ReceiveEventPolicy + version: 0.0.1 + UUID: 568b7345-9de1-36d3-b6a3-9b857e6809a1 + description: Generated description for concept referred to by + key "ReceiveEventPolicy:0.0.1" + - key: + name: ReceiveSubscriptionTask + version: 0.0.1 + value: + key: + name: ReceiveSubscriptionTask + version: 0.0.1 + UUID: f596afc8-100c-35eb-92c8-352355ea457d + description: Generated description for concept referred to by + key "ReceiveSubscriptionTask:0.0.1" + - key: + name: SimpleIntType + version: 0.0.1 + value: + key: + name: SimpleIntType + version: 0.0.1 + UUID: 153791fd-ae0a-36a7-88a5-309a7936415d + description: Generated description for concept referred to by + key "SimpleIntType:0.0.1" + - key: + name: SimpleStringType + version: 0.0.1 + value: + key: + name: SimpleStringType + version: 0.0.1 + UUID: 8a4957cf-9493-3a76-8c22-a208e23259af + description: Generated description for concept referred to by + key "SimpleStringType:0.0.1" + - key: + name: SubscriptionStatusType + version: 0.0.1 + value: + key: + name: SubscriptionStatusType + version: 0.0.1 + UUID: 597643b1-9db1-31ce-85d0-e1c63c43b30b + description: Generated description for concept referred to by + key "SubscriptionStatusType:0.0.1" + - key: + name: SubscriptionType + version: 0.0.1 + value: + key: + name: SubscriptionType + version: 0.0.1 + UUID: 184547bb-7d64-3cb2-a273-d7185102c5ce + description: Generated description for concept referred to by + key "SubscriptionType:0.0.1" + - key: + name: UUIDType + version: 0.0.1 + value: + key: + name: UUIDType + version: 0.0.1 + UUID: 6a8cc68e-dfc8-3403-9c6d-071c886b319c + description: Generated description for concept referred to by + key "UUIDType:0.0.1" + - key: + name: pmsh-operational-policy + version: 0.0.1 + value: + key: + name: pmsh-operational-policy + version: 0.0.1 + UUID: fdf2c9ff-6422-3ea6-b6b6-49b12116265d + description: Generated description for concept referred to by + key "pmsh-operational-policy:0.0.1" + policies: + key: + name: PMControlPolicy_Policies + version: 0.0.1 + policyMap: + entry: + - key: + name: CDSCreateResponsePolicy + version: 0.0.1 + value: + policyKey: + name: CDSCreateResponsePolicy + version: 0.0.1 + template: Freestyle + state: + entry: + - key: CDSCreateResponseState + value: + stateKey: + parentKeyName: CDSCreateResponsePolicy + parentKeyVersion: 0.0.1 + parentLocalName: 'NULL' + localName: CDSCreateResponseState + trigger: + name: CDSCreateResponseEvent + version: 0.0.1 + stateOutputs: + entry: + - key: ResponseOutput + value: + key: + parentKeyName: CDSCreateResponsePolicy + parentKeyVersion: 0.0.1 + parentLocalName: CDSCreateResponseState + localName: ResponseOutput + outgoingEvent: + name: CDSResponseStatusEvent + version: 0.0.1 + outgoingEventReference: + - name: CDSResponseStatusEvent + version: 0.0.1 + nextState: + parentKeyName: 'NULL' + parentKeyVersion: 0.0.0 + parentLocalName: 'NULL' + localName: 'NULL' + contextAlbumReference: [ ] + taskSelectionLogic: + key: 'NULL' + logicFlavour: UNDEFINED + logic: '' + stateFinalizerLogicMap: + entry: [ ] + defaultTask: + name: CDSCreateResponseTask + version: 0.0.1 + taskReferences: + entry: + - key: + name: CDSCreateResponseTask + version: 0.0.1 + value: + key: + parentKeyName: CDSCreateResponsePolicy + parentKeyVersion: 0.0.1 + parentLocalName: CDSCreateResponseState + localName: CDSCreateResponsePolicy + outputType: DIRECT + output: + parentKeyName: CDSCreateResponsePolicy + parentKeyVersion: 0.0.1 + parentLocalName: CDSCreateResponseState + localName: ResponseOutput + firstState: CDSCreateResponseState + - key: + name: CDSDeleteResponsePolicy + version: 0.0.1 + value: + policyKey: + name: CDSDeleteResponsePolicy + version: 0.0.1 + template: Freestyle + state: + entry: + - key: CDSDeleteResponseState + value: + stateKey: + parentKeyName: CDSDeleteResponsePolicy + parentKeyVersion: 0.0.1 + parentLocalName: 'NULL' + localName: CDSDeleteResponseState + trigger: + name: CDSDeleteResponseEvent + version: 0.0.1 + stateOutputs: + entry: + - key: ResponseOutput + value: + key: + parentKeyName: CDSDeleteResponsePolicy + parentKeyVersion: 0.0.1 + parentLocalName: CDSDeleteResponseState + localName: ResponseOutput + outgoingEvent: + name: CDSResponseStatusEvent + version: 0.0.1 + outgoingEventReference: + - name: CDSResponseStatusEvent + version: 0.0.1 + nextState: + parentKeyName: 'NULL' + parentKeyVersion: 0.0.0 + parentLocalName: 'NULL' + localName: 'NULL' + contextAlbumReference: [ ] + taskSelectionLogic: + key: 'NULL' + logicFlavour: UNDEFINED + logic: '' + stateFinalizerLogicMap: + entry: [ ] + defaultTask: + name: CDSDeleteResponseTask + version: 0.0.1 + taskReferences: + entry: + - key: + name: CDSDeleteResponseTask + version: 0.0.1 + value: + key: + parentKeyName: CDSDeleteResponsePolicy + parentKeyVersion: 0.0.1 + parentLocalName: CDSDeleteResponseState + localName: CDSDeleteResponsePolicy + outputType: DIRECT + output: + parentKeyName: CDSDeleteResponsePolicy + parentKeyVersion: 0.0.1 + parentLocalName: CDSDeleteResponseState + localName: ResponseOutput + firstState: CDSDeleteResponseState + - key: + name: ReceiveEventPolicy + version: 0.0.1 + value: + policyKey: + name: ReceiveEventPolicy + version: 0.0.1 + template: Freestyle + state: + entry: + - key: CreateOrDeleteState + value: + stateKey: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: 'NULL' + localName: CreateOrDeleteState + trigger: + name: PMSubscriptionOutputEvent + version: 0.0.1 + stateOutputs: + entry: + - key: CreateSubscriptionPayload + value: + key: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: CreateOrDeleteState + localName: CreateSubscriptionPayload + outgoingEvent: + name: CreateSubscriptionPayloadEvent + version: 0.0.1 + outgoingEventReference: + - name: CreateSubscriptionPayloadEvent + version: 0.0.1 + nextState: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: 'NULL' + localName: CreateSubscription + - key: DeleteSubscriptionPayload + value: + key: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: CreateOrDeleteState + localName: DeleteSubscriptionPayload + outgoingEvent: + name: DeleteSubscriptionPayloadEvent + version: 0.0.1 + outgoingEventReference: + - name: DeleteSubscriptionPayloadEvent + version: 0.0.1 + nextState: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: 'NULL' + localName: DeleteSubscription + contextAlbumReference: + - name: PMSubscriptionAlbum + version: 0.0.1 + taskSelectionLogic: + key: TaskSelectionLogic + logicFlavour: JAVASCRIPT + logic: |- + /* + * ============LICENSE_START======================================================= + * Copyright (C) 2020 Nordix. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + executor.logger.info(executor.subject.id); + var pmSubscriptionInfo = executor.getContextAlbum("PMSubscriptionAlbum").get(executor.inFields.get("albumID").toString()) + var changeType = pmSubscriptionInfo.get("changeType").toString() + executor.logger.info("Change Type is " + changeType) + if ("CREATE".equals(changeType)) { + executor.logger.info("Choosing to create a subscription") + executor.subject.getTaskKey("CreateSubscriptionPayloadTask").copyTo(executor.selectedTask); + } + else if ("DELETE".equals(changeType)) { + executor.logger.info("Choosing to delete a subscription") + executor.subject.getTaskKey("DeleteSubscriptionPayloadTask").copyTo(executor.selectedTask); + } + returnValue = executor.isTrue; + true; + stateFinalizerLogicMap: + entry: [ ] + defaultTask: + name: CreateSubscriptionPayloadTask + version: 0.0.1 + taskReferences: + entry: + - key: + name: CreateSubscriptionPayloadTask + version: 0.0.1 + value: + key: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: CreateOrDeleteState + localName: ReceiveEventPolicy + outputType: DIRECT + output: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: CreateOrDeleteState + localName: CreateSubscriptionPayload + - key: + name: DeleteSubscriptionPayloadTask + version: 0.0.1 + value: + key: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: CreateOrDeleteState + localName: ReceiveEventPolicy + outputType: DIRECT + output: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: CreateOrDeleteState + localName: DeleteSubscriptionPayload + - key: CreateSubscription + value: + stateKey: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: 'NULL' + localName: CreateSubscription + trigger: + name: CreateSubscriptionPayloadEvent + version: 0.0.1 + stateOutputs: + entry: + - key: IssueCreateSubscriptionRequestOutput + value: + key: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: CreateSubscription + localName: IssueCreateSubscriptionRequestOutput + outgoingEvent: + name: CDSCreateSubscriptionRequestEvent + version: 0.0.1 + outgoingEventReference: + - name: CDSCreateSubscriptionRequestEvent + version: 0.0.1 + nextState: + parentKeyName: 'NULL' + parentKeyVersion: 0.0.0 + parentLocalName: 'NULL' + localName: 'NULL' + contextAlbumReference: + - name: PMSubscriptionAlbum + version: 0.0.1 + taskSelectionLogic: + key: 'NULL' + logicFlavour: UNDEFINED + logic: '' + stateFinalizerLogicMap: + entry: [ ] + defaultTask: + name: CreateSubscriptionRequestTask + version: 0.0.1 + taskReferences: + entry: + - key: + name: CreateSubscriptionRequestTask + version: 0.0.1 + value: + key: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: CreateSubscription + localName: ReceiveEventPolicy + outputType: DIRECT + output: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: CreateSubscription + localName: IssueCreateSubscriptionRequestOutput + - key: DeleteSubscription + value: + stateKey: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: 'NULL' + localName: DeleteSubscription + trigger: + name: DeleteSubscriptionPayloadEvent + version: 0.0.1 + stateOutputs: + entry: + - key: IssueDeleteSubscriptionRequestOutput + value: + key: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: DeleteSubscription + localName: IssueDeleteSubscriptionRequestOutput + outgoingEvent: + name: CDSDeleteSubscriptionRequestEvent + version: 0.0.1 + outgoingEventReference: + - name: CDSDeleteSubscriptionRequestEvent + version: 0.0.1 + nextState: + parentKeyName: 'NULL' + parentKeyVersion: 0.0.0 + parentLocalName: 'NULL' + localName: 'NULL' + contextAlbumReference: + - name: PMSubscriptionAlbum + version: 0.0.1 + taskSelectionLogic: + key: 'NULL' + logicFlavour: UNDEFINED + logic: '' + stateFinalizerLogicMap: + entry: [ ] + defaultTask: + name: DeleteSubscriptionRequestTask + version: 0.0.1 + taskReferences: + entry: + - key: + name: DeleteSubscriptionRequestTask + version: 0.0.1 + value: + key: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: DeleteSubscription + localName: ReceiveEventPolicy + outputType: DIRECT + output: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: DeleteSubscription + localName: IssueDeleteSubscriptionRequestOutput + - key: ReceiveSubscriptionState + value: + stateKey: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: 'NULL' + localName: ReceiveSubscriptionState + trigger: + name: pmsh-operational-policy + version: 0.0.1 + stateOutputs: + entry: + - key: ReceivePMSubscriptionOutput + value: + key: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: ReceiveSubscriptionState + localName: ReceivePMSubscriptionOutput + outgoingEvent: + name: PMSubscriptionOutputEvent + version: 0.0.1 + outgoingEventReference: + - name: PMSubscriptionOutputEvent + version: 0.0.1 + nextState: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: 'NULL' + localName: CreateOrDeleteState + contextAlbumReference: + - name: PMSubscriptionAlbum + version: 0.0.1 + taskSelectionLogic: + key: 'NULL' + logicFlavour: UNDEFINED + logic: '' + stateFinalizerLogicMap: + entry: [ ] + defaultTask: + name: ReceiveSubscriptionTask + version: 0.0.1 + taskReferences: + entry: + - key: + name: ReceiveSubscriptionTask + version: 0.0.1 + value: + key: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: ReceiveSubscriptionState + localName: ReceiveEventPolicy + outputType: DIRECT + output: + parentKeyName: ReceiveEventPolicy + parentKeyVersion: 0.0.1 + parentLocalName: ReceiveSubscriptionState + localName: ReceivePMSubscriptionOutput + firstState: ReceiveSubscriptionState + tasks: + key: + name: PMControlPolicy_Tasks + version: 0.0.1 + taskMap: + entry: + - key: + name: CDSCreateResponseTask + version: 0.0.1 + value: + key: + name: CDSCreateResponseTask + version: 0.0.1 + inputEvent: + key: + name: CDSCreateResponseEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: CDS + target: APEX + parameter: + entry: + - key: actionIdentifiers + value: + key: actionIdentifiers + fieldSchemaKey: + name: CDSActionIdentifiersType + version: 0.0.1 + optional: false + - key: commonHeader + value: + key: commonHeader + fieldSchemaKey: + name: CDSResponseCommonHeaderType + version: 0.0.1 + optional: false + - key: payload + value: + key: payload + fieldSchemaKey: + name: CDSCreateResponsePayloadType + version: 0.0.1 + optional: false + - key: status + value: + key: status + fieldSchemaKey: + name: CDSResponseStatusType + version: 0.0.1 + optional: false + outputEvents: + entry: + - key: CDSResponseStatusEvent + value: + key: + name: CDSResponseStatusEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: APEX + target: DCAE + parameter: + entry: + - key: status + value: + key: status + fieldSchemaKey: + name: SubscriptionStatusType + version: 0.0.1 + optional: false + taskParameters: + entry: [ ] + contextAlbumReference: + - name: PMSubscriptionAlbum + version: 0.0.1 + taskLogic: + key: TaskLogic + logicFlavour: JAVASCRIPT + logic: |- + /* + * ============LICENSE_START======================================================= + * Copyright (C) 2020 Nordix. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + executor.logger.info(executor.subject.id); + var commonHeader = executor.inFields.get("commonHeader") + var response = executor.inFields.get("payload") + var albumID = commonHeader.get("requestId") + var pmSubscriptionInfo = executor.getContextAlbum("PMSubscriptionAlbum").get(albumID.toString()); + var responseStatus = executor.subject.getOutFieldSchemaHelper("status").createNewInstance(); + var changeType = pmSubscriptionInfo.get("changeType").toUpperCase() + responseStatus.put("nfName", pmSubscriptionInfo.get("nfName")) + responseStatus.put("changeType", pmSubscriptionInfo.get("changeType")) + if ("CREATE".equals(changeType)) { + responseStatus.put("subscriptionName", pmSubscriptionInfo.get("subscription").get("subscriptionName")) + responseStatus.put("measurementGroupName", pmSubscriptionInfo.get("subscription").get("measurementGroup").get("measurementGroupName")) + } + else if ("DELETE".equals(changeType)) { + responseStatus.put("subscriptionName", pmSubscriptionInfo.get("subscriptionName")) + responseStatus.put("measurementGroupName", pmSubscriptionInfo.get("measurementGroupName")) + } + var status = response.get(pmSubscriptionInfo.get("changeType").toLowerCase() + "_DasH_subscription_DasH_response").get("odl_DasH_response").get("status") + executor.logger.info("RESPONSE STATUS = " + status) + if(status == "success") { + responseStatus.put("message", "success") + } else { + responseStatus.put("message", "failed") + } + executor.outFields.put("status", responseStatus) + returnValue = executor.isTrue; + true; + - key: + name: CDSDeleteResponseTask + version: 0.0.1 + value: + key: + name: CDSDeleteResponseTask + version: 0.0.1 + inputEvent: + key: + name: CDSDeleteResponseEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: CDS + target: APEX + parameter: + entry: + - key: actionIdentifiers + value: + key: actionIdentifiers + fieldSchemaKey: + name: CDSActionIdentifiersType + version: 0.0.1 + optional: false + - key: commonHeader + value: + key: commonHeader + fieldSchemaKey: + name: CDSResponseCommonHeaderType + version: 0.0.1 + optional: false + - key: payload + value: + key: payload + fieldSchemaKey: + name: CDSDeleteResponsePayloadType + version: 0.0.1 + optional: false + - key: status + value: + key: status + fieldSchemaKey: + name: CDSResponseStatusType + version: 0.0.1 + optional: false + outputEvents: + entry: + - key: CDSResponseStatusEvent + value: + key: + name: CDSResponseStatusEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: APEX + target: DCAE + parameter: + entry: + - key: status + value: + key: status + fieldSchemaKey: + name: SubscriptionStatusType + version: 0.0.1 + optional: false + taskParameters: + entry: [ ] + contextAlbumReference: + - name: PMSubscriptionAlbum + version: 0.0.1 + taskLogic: + key: TaskLogic + logicFlavour: JAVASCRIPT + logic: |- + /* + * ============LICENSE_START======================================================= + * Copyright (C) 2020 Nordix. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + executor.logger.info(executor.subject.id); + var commonHeader = executor.inFields.get("commonHeader") + var response = executor.inFields.get("payload") + var albumID = commonHeader.get("requestId") + var pmSubscriptionInfo = executor.getContextAlbum("PMSubscriptionAlbum").get(albumID.toString()); + var responseStatus = executor.subject.getOutFieldSchemaHelper("status").createNewInstance(); + var changeType = pmSubscriptionInfo.get("changeType").toUpperCase() + responseStatus.put("nfName", pmSubscriptionInfo.get("nfName")) + responseStatus.put("changeType", pmSubscriptionInfo.get("changeType")) + if ("CREATE".equals(changeType)) { + responseStatus.put("subscriptionName", pmSubscriptionInfo.get("subscription").get("subscriptionName")) + responseStatus.put("measurementGroupName", pmSubscriptionInfo.get("subscription").get("measurementGroup").get("measurementGroupName")) + } + else if ("DELETE".equals(changeType)) { + responseStatus.put("subscriptionName", pmSubscriptionInfo.get("subscriptionName")) + responseStatus.put("measurementGroupName", pmSubscriptionInfo.get("measurementGroupName")) + } + var status = response.get(pmSubscriptionInfo.get("changeType").toLowerCase() + "_DasH_subscription_DasH_response").get("odl_DasH_response").get("status") + executor.logger.info("RESPONSE STATUS = " + status) + if(status == "success") { + responseStatus.put("message", "success") + } else { + responseStatus.put("message", "failed") + } + executor.outFields.put("status", responseStatus) + returnValue = executor.isTrue; + true; + - key: + name: CreateSubscriptionPayloadTask + version: 0.0.1 + value: + key: + name: CreateSubscriptionPayloadTask + version: 0.0.1 + inputEvent: + key: + name: PMSubscriptionOutputEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: APEX + target: APEX + parameter: + entry: + - key: albumID + value: + key: albumID + fieldSchemaKey: + name: UUIDType + version: 0.0.1 + optional: false + outputEvents: + entry: + - key: CreateSubscriptionPayloadEvent + value: + key: + name: CreateSubscriptionPayloadEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: APEX + target: APEX + parameter: + entry: + - key: albumID + value: + key: albumID + fieldSchemaKey: + name: UUIDType + version: 0.0.1 + optional: false + - key: payload + value: + key: payload + fieldSchemaKey: + name: CDSCreateSubscriptionPayloadType + version: 0.0.1 + optional: false + taskParameters: + entry: [ ] + contextAlbumReference: + - name: PMSubscriptionAlbum + version: 0.0.1 + taskLogic: + key: TaskLogic + logicFlavour: JAVASCRIPT + logic: |- + /* + * ============LICENSE_START======================================================= + * Copyright (C) 2020 Nordix. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + executor.logger.info(executor.subject.id); + var pmSubscriptionInfo = executor.getContextAlbum("PMSubscriptionAlbum").get(executor.inFields.get("albumID").toString()) + var changeType = pmSubscriptionInfo.get("changeType").toLowerCase() + var payloadProperties = executor.subject.getOutFieldSchemaHelper("payload").createNewSubInstance(changeType + "_DasH_subscription_DasH_properties_record"); + payloadProperties.put("nfName", pmSubscriptionInfo.get("nfName")) + payloadProperties.put("ipAddress", pmSubscriptionInfo.get("ipAddress")) + if ("create".equals(changeType)) { + payloadProperties.put("subscriptionName", pmSubscriptionInfo.get("subscription").get("subscriptionName")) + payloadProperties.put("fileBasedGP", pmSubscriptionInfo.get("subscription").get("fileBasedGP").toString()) + payloadProperties.put("fileLocation", pmSubscriptionInfo.get("subscription").get("fileLocation")) + payloadProperties.put("measurementGroup", pmSubscriptionInfo.get("subscription").get("measurementGroup")) + } + else if ("delete".equals(changeType)) { + payloadProperties.put("subscriptionName", pmSubscriptionInfo.get("subscriptionName")) + payloadProperties.put("measurementGroupName", pmSubscriptionInfo.get("measurementGroupName")) + } + var payloadEntry = executor.subject.getOutFieldSchemaHelper("payload").createNewSubInstance("CDSRequestPayloadEntry"); + payloadEntry.put(changeType + "_DasH_subscription_DasH_properties", payloadProperties) + var payload = executor.subject.getOutFieldSchemaHelper("payload").createNewInstance(); + payload.put(changeType + "_DasH_subscription_DasH_request", payloadEntry); + executor.outFields.put("albumID", executor.inFields.get("albumID")) + executor.outFields.put("payload", payload); + returnValue = executor.isTrue; + true; + - key: + name: CreateSubscriptionRequestTask + version: 0.0.1 + value: + key: + name: CreateSubscriptionRequestTask + version: 0.0.1 + inputEvent: + key: + name: CreateSubscriptionPayloadEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: APEX + target: APEX + parameter: + entry: + - key: albumID + value: + key: albumID + fieldSchemaKey: + name: UUIDType + version: 0.0.1 + optional: false + - key: payload + value: + key: payload + fieldSchemaKey: + name: CDSCreateSubscriptionPayloadType + version: 0.0.1 + optional: false + outputEvents: + entry: + - key: CDSCreateSubscriptionRequestEvent + value: + key: + name: CDSCreateSubscriptionRequestEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: APEX + target: APEX + parameter: + entry: + - key: actionIdentifiers + value: + key: actionIdentifiers + fieldSchemaKey: + name: CDSActionIdentifiersType + version: 0.0.1 + optional: false + - key: commonHeader + value: + key: commonHeader + fieldSchemaKey: + name: CDSRequestCommonHeaderType + version: 0.0.1 + optional: false + - key: payload + value: + key: payload + fieldSchemaKey: + name: CDSCreateSubscriptionPayloadType + version: 0.0.1 + optional: false + taskParameters: + entry: [ ] + contextAlbumReference: + - name: PMSubscriptionAlbum + version: 0.0.1 + taskLogic: + key: TaskLogic + logicFlavour: JAVASCRIPT + logic: |- + /* + * ============LICENSE_START======================================================= + * Copyright (C) 2020 Nordix. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + executor.logger.info(executor.subject.id); + var pmSubscriptionInfo = executor.getContextAlbum("PMSubscriptionAlbum").get(executor.inFields.get("albumID").toString()) + executor.logger.info(pmSubscriptionInfo) + var changeType = pmSubscriptionInfo.get("changeType").toLowerCase() + var blueprintName = pmSubscriptionInfo.get("blueprintName").toLowerCase() + var blueprintVersion = pmSubscriptionInfo.get("blueprintVersion").toLowerCase() + var payload = executor.inFields.get("payload") + var actionName = changeType + "-subscription" + var commonHeader = executor.subject.getOutFieldSchemaHelper("commonHeader").createNewInstance(); + commonHeader.put("originatorId", "sdnc"); + commonHeader.put("requestId", executor.inFields.get("albumID").toString()); + commonHeader.put("subRequestId", "sub-123456-1000"); + var actionIdentifiers = executor.subject.getOutFieldSchemaHelper("actionIdentifiers").createNewInstance(); + actionIdentifiers.put("actionName", actionName); + actionIdentifiers.put("blueprintName", blueprintName); + actionIdentifiers.put("blueprintVersion", blueprintVersion); + actionIdentifiers.put("mode", "sync"); + executor.outFields.put("commonHeader", commonHeader); + executor.outFields.put("actionIdentifiers", actionIdentifiers); + executor.outFields.put("payload", payload); + returnValue = executor.isTrue; + true; + - key: + name: DeleteSubscriptionPayloadTask + version: 0.0.1 + value: + key: + name: DeleteSubscriptionPayloadTask + version: 0.0.1 + inputEvent: + key: + name: PMSubscriptionOutputEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: APEX + target: APEX + parameter: + entry: + - key: albumID + value: + key: albumID + fieldSchemaKey: + name: UUIDType + version: 0.0.1 + optional: false + outputEvents: + entry: + - key: DeleteSubscriptionPayloadEvent + value: + key: + name: DeleteSubscriptionPayloadEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: APEX + target: APEX + parameter: + entry: + - key: albumID + value: + key: albumID + fieldSchemaKey: + name: UUIDType + version: 0.0.1 + optional: false + - key: payload + value: + key: payload + fieldSchemaKey: + name: CDSDeleteSubscriptionPayloadType + version: 0.0.1 + optional: false + taskParameters: + entry: [ ] + contextAlbumReference: + - name: PMSubscriptionAlbum + version: 0.0.1 + taskLogic: + key: TaskLogic + logicFlavour: JAVASCRIPT + logic: |- + /* + * ============LICENSE_START======================================================= + * Copyright (C) 2020 Nordix. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + executor.logger.info(executor.subject.id); + var pmSubscriptionInfo = executor.getContextAlbum("PMSubscriptionAlbum").get(executor.inFields.get("albumID").toString()) + var changeType = pmSubscriptionInfo.get("changeType").toLowerCase() + var payloadProperties = executor.subject.getOutFieldSchemaHelper("payload").createNewSubInstance(changeType + "_DasH_subscription_DasH_properties_record"); + payloadProperties.put("nfName", pmSubscriptionInfo.get("nfName")) + payloadProperties.put("ipAddress", pmSubscriptionInfo.get("ipAddress")) + if ("create".equals(changeType)) { + payloadProperties.put("subscriptionName", pmSubscriptionInfo.get("subscription").get("subscriptionName")) + payloadProperties.put("fileBasedGP", pmSubscriptionInfo.get("subscription").get("fileBasedGP").toString()) + payloadProperties.put("fileLocation", pmSubscriptionInfo.get("subscription").get("fileLocation")) + payloadProperties.put("measurementGroup", pmSubscriptionInfo.get("subscription").get("measurementGroup")) + } + else if ("delete".equals(changeType)) { + payloadProperties.put("subscriptionName", pmSubscriptionInfo.get("subscriptionName")) + payloadProperties.put("measurementGroupName", pmSubscriptionInfo.get("measurementGroupName")) + } + var payloadEntry = executor.subject.getOutFieldSchemaHelper("payload").createNewSubInstance("CDSRequestPayloadEntry"); + payloadEntry.put(changeType + "_DasH_subscription_DasH_properties", payloadProperties) + var payload = executor.subject.getOutFieldSchemaHelper("payload").createNewInstance(); + payload.put(changeType + "_DasH_subscription_DasH_request", payloadEntry); + executor.outFields.put("albumID", executor.inFields.get("albumID")) + executor.outFields.put("payload", payload); + returnValue = executor.isTrue; + true; + - key: + name: DeleteSubscriptionRequestTask + version: 0.0.1 + value: + key: + name: DeleteSubscriptionRequestTask + version: 0.0.1 + inputEvent: + key: + name: DeleteSubscriptionPayloadEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: APEX + target: APEX + parameter: + entry: + - key: albumID + value: + key: albumID + fieldSchemaKey: + name: UUIDType + version: 0.0.1 + optional: false + - key: payload + value: + key: payload + fieldSchemaKey: + name: CDSDeleteSubscriptionPayloadType + version: 0.0.1 + optional: false + outputEvents: + entry: + - key: CDSDeleteSubscriptionRequestEvent + value: + key: + name: CDSDeleteSubscriptionRequestEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: APEX + target: APEX + parameter: + entry: + - key: actionIdentifiers + value: + key: actionIdentifiers + fieldSchemaKey: + name: CDSActionIdentifiersType + version: 0.0.1 + optional: false + - key: commonHeader + value: + key: commonHeader + fieldSchemaKey: + name: CDSRequestCommonHeaderType + version: 0.0.1 + optional: false + - key: payload + value: + key: payload + fieldSchemaKey: + name: CDSDeleteSubscriptionPayloadType + version: 0.0.1 + optional: false + taskParameters: + entry: [ ] + contextAlbumReference: + - name: PMSubscriptionAlbum + version: 0.0.1 + taskLogic: + key: TaskLogic + logicFlavour: JAVASCRIPT + logic: |- + /* + * ============LICENSE_START======================================================= + * Copyright (C) 2020 Nordix. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + executor.logger.info(executor.subject.id); + var pmSubscriptionInfo = executor.getContextAlbum("PMSubscriptionAlbum").get(executor.inFields.get("albumID").toString()) + executor.logger.info(pmSubscriptionInfo) + var changeType = pmSubscriptionInfo.get("changeType").toLowerCase() + var blueprintName = pmSubscriptionInfo.get("blueprintName").toLowerCase() + var blueprintVersion = pmSubscriptionInfo.get("blueprintVersion").toLowerCase() + var payload = executor.inFields.get("payload") + var actionName = changeType + "-subscription" + var commonHeader = executor.subject.getOutFieldSchemaHelper("commonHeader").createNewInstance(); + commonHeader.put("originatorId", "sdnc"); + commonHeader.put("requestId", executor.inFields.get("albumID").toString()); + commonHeader.put("subRequestId", "sub-123456-1000"); + var actionIdentifiers = executor.subject.getOutFieldSchemaHelper("actionIdentifiers").createNewInstance(); + actionIdentifiers.put("actionName", actionName); + actionIdentifiers.put("blueprintName", blueprintName); + actionIdentifiers.put("blueprintVersion", blueprintVersion); + actionIdentifiers.put("mode", "sync"); + executor.outFields.put("commonHeader", commonHeader); + executor.outFields.put("actionIdentifiers", actionIdentifiers); + executor.outFields.put("payload", payload); + returnValue = executor.isTrue; + true; + - key: + name: ReceiveSubscriptionTask + version: 0.0.1 + value: + key: + name: ReceiveSubscriptionTask + version: 0.0.1 + inputEvent: + key: + name: pmsh-operational-policy + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: DCAE + target: APEX + parameter: + entry: + - key: blueprintName + value: + key: blueprintName + fieldSchemaKey: + name: SimpleStringType + version: 0.0.1 + optional: false + - key: blueprintVersion + value: + key: blueprintVersion + fieldSchemaKey: + name: SimpleStringType + version: 0.0.1 + optional: false + - key: changeType + value: + key: changeType + fieldSchemaKey: + name: SimpleStringType + version: 0.0.1 + optional: false + - key: controlLoopName + value: + key: controlLoopName + fieldSchemaKey: + name: SimpleStringType + version: 0.0.1 + optional: false + - key: ipAddress + value: + key: ipAddress + fieldSchemaKey: + name: SimpleStringType + version: 0.0.1 + optional: false + - key: measurementGroupName + value: + key: measurementGroupName + fieldSchemaKey: + name: SimpleStringType + version: 0.0.1 + optional: true + - key: nfName + value: + key: nfName + fieldSchemaKey: + name: SimpleStringType + version: 0.0.1 + optional: false + - key: operationalPolicyName + value: + key: operationalPolicyName + fieldSchemaKey: + name: SimpleStringType + version: 0.0.1 + optional: false + - key: subscription + value: + key: subscription + fieldSchemaKey: + name: SubscriptionType + version: 0.0.1 + optional: true + - key: subscriptionName + value: + key: subscriptionName + fieldSchemaKey: + name: SimpleStringType + version: 0.0.1 + optional: true + outputEvents: + entry: + - key: PMSubscriptionOutputEvent + value: + key: + name: PMSubscriptionOutputEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: APEX + target: APEX + parameter: + entry: + - key: albumID + value: + key: albumID + fieldSchemaKey: + name: UUIDType + version: 0.0.1 + optional: false + taskParameters: + entry: [ ] + contextAlbumReference: + - name: PMSubscriptionAlbum + version: 0.0.1 + taskLogic: + key: TaskLogic + logicFlavour: JAVASCRIPT + logic: |- + /* + * ============LICENSE_START======================================================= + * Copyright (C) 2020 Nordix. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * + * SPDX-License-Identifier: Apache-2.0 + * ============LICENSE_END========================================================= + */ + var uuidType = java.util.UUID; + executor.logger.info(executor.subject.id); + //albumID will be used to fetch info from our album later + var albumID = uuidType.randomUUID(); + var pmSubscriptionInfo = executor.getContextAlbum("PMSubscriptionAlbum").getSchemaHelper().createNewInstance(); + var returnValue = true; + if(executor.inFields.get("operationalPolicyName") != null) { + executor.logger.info("nfName in receive sub event " + executor.inFields.get("nfName")); + var changeType = executor.inFields.get("changeType") + var nfName = executor.inFields.get("nfName") + var ipAddress = executor.inFields.get("ipAddress") + var operationalPolicyName = executor.inFields.get("operationalPolicyName") + var controlLoopName = executor.inFields.get("controlLoopName") + var subscription = executor.inFields.get("subscription") + var blueprintName = executor.inFields.get("blueprintName") + var blueprintVersion = executor.inFields.get("blueprintVersion") + pmSubscriptionInfo.put("nfName", executor.inFields.get("nfName")); + pmSubscriptionInfo.put("ipAddress", executor.inFields.get("ipAddress")); + pmSubscriptionInfo.put("changeType", executor.inFields.get("changeType")) + pmSubscriptionInfo.put("operationalPolicyName", executor.inFields.get("operationalPolicyName")) + pmSubscriptionInfo.put("controlLoopName", executor.inFields.get("controlLoopName")) + pmSubscriptionInfo.put("subscription", subscription) + pmSubscriptionInfo.put("blueprintName", blueprintName) + pmSubscriptionInfo.put("blueprintVersion", blueprintVersion) + if ("delete".equals(changeType.toLowerCase())) { + pmSubscriptionInfo.put("subscriptionName", executor.inFields.get("subscriptionName")) + pmSubscriptionInfo.put("measurementGroupName", executor.inFields.get("measurementGroupName")) + } + executor.getContextAlbum("PMSubscriptionAlbum").put(albumID.toString(), pmSubscriptionInfo); + executor.outFields.put("albumID", albumID) + } else { + executor.message = "Received invalid event" + returnValue = false; + } + returnValue; + events: + key: + name: PMControlPolicy_Events + version: 0.0.1 + eventMap: + entry: + - key: + name: CDSCreateResponseEvent + version: 0.0.1 + value: + key: + name: CDSCreateResponseEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: CDS + target: APEX + parameter: + entry: + - key: actionIdentifiers + value: + key: actionIdentifiers + fieldSchemaKey: + name: CDSActionIdentifiersType + version: 0.0.1 + optional: false + - key: commonHeader + value: + key: commonHeader + fieldSchemaKey: + name: CDSResponseCommonHeaderType + version: 0.0.1 + optional: false + - key: payload + value: + key: payload + fieldSchemaKey: + name: CDSCreateResponsePayloadType + version: 0.0.1 + optional: false + - key: status + value: + key: status + fieldSchemaKey: + name: CDSResponseStatusType + version: 0.0.1 + optional: false + - key: + name: CDSCreateSubscriptionRequestEvent + version: 0.0.1 + value: + key: + name: CDSCreateSubscriptionRequestEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: APEX + target: APEX + parameter: + entry: + - key: actionIdentifiers + value: + key: actionIdentifiers + fieldSchemaKey: + name: CDSActionIdentifiersType + version: 0.0.1 + optional: false + - key: commonHeader + value: + key: commonHeader + fieldSchemaKey: + name: CDSRequestCommonHeaderType + version: 0.0.1 + optional: false + - key: payload + value: + key: payload + fieldSchemaKey: + name: CDSCreateSubscriptionPayloadType + version: 0.0.1 + optional: false + - key: + name: CDSDeleteResponseEvent + version: 0.0.1 + value: + key: + name: CDSDeleteResponseEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: CDS + target: APEX + parameter: + entry: + - key: actionIdentifiers + value: + key: actionIdentifiers + fieldSchemaKey: + name: CDSActionIdentifiersType + version: 0.0.1 + optional: false + - key: commonHeader + value: + key: commonHeader + fieldSchemaKey: + name: CDSResponseCommonHeaderType + version: 0.0.1 + optional: false + - key: payload + value: + key: payload + fieldSchemaKey: + name: CDSDeleteResponsePayloadType + version: 0.0.1 + optional: false + - key: status + value: + key: status + fieldSchemaKey: + name: CDSResponseStatusType + version: 0.0.1 + optional: false + - key: + name: CDSDeleteSubscriptionRequestEvent + version: 0.0.1 + value: + key: + name: CDSDeleteSubscriptionRequestEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: APEX + target: APEX + parameter: + entry: + - key: actionIdentifiers + value: + key: actionIdentifiers + fieldSchemaKey: + name: CDSActionIdentifiersType + version: 0.0.1 + optional: false + - key: commonHeader + value: + key: commonHeader + fieldSchemaKey: + name: CDSRequestCommonHeaderType + version: 0.0.1 + optional: false + - key: payload + value: + key: payload + fieldSchemaKey: + name: CDSDeleteSubscriptionPayloadType + version: 0.0.1 + optional: false + - key: + name: CDSResponseStatusEvent + version: 0.0.1 + value: + key: + name: CDSResponseStatusEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: APEX + target: DCAE + parameter: + entry: + - key: status + value: + key: status + fieldSchemaKey: + name: SubscriptionStatusType + version: 0.0.1 + optional: false + - key: + name: CreateSubscriptionPayloadEvent + version: 0.0.1 + value: + key: + name: CreateSubscriptionPayloadEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: APEX + target: APEX + parameter: + entry: + - key: albumID + value: + key: albumID + fieldSchemaKey: + name: UUIDType + version: 0.0.1 + optional: false + - key: payload + value: + key: payload + fieldSchemaKey: + name: CDSCreateSubscriptionPayloadType + version: 0.0.1 + optional: false + - key: + name: DeleteSubscriptionPayloadEvent + version: 0.0.1 + value: + key: + name: DeleteSubscriptionPayloadEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: APEX + target: APEX + parameter: + entry: + - key: albumID + value: + key: albumID + fieldSchemaKey: + name: UUIDType + version: 0.0.1 + optional: false + - key: payload + value: + key: payload + fieldSchemaKey: + name: CDSDeleteSubscriptionPayloadType + version: 0.0.1 + optional: false + - key: + name: MRResponseEvent + version: 0.0.1 + value: + key: + name: MRResponseEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: DCAE + target: APEX + parameter: + entry: + - key: count + value: + key: count + fieldSchemaKey: + name: SimpleIntType + version: 0.0.1 + optional: false + - key: serverTimeMs + value: + key: serverTimeMs + fieldSchemaKey: + name: SimpleIntType + version: 0.0.1 + optional: false + - key: + name: PMSubscriptionOutputEvent + version: 0.0.1 + value: + key: + name: PMSubscriptionOutputEvent + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: APEX + target: APEX + parameter: + entry: + - key: albumID + value: + key: albumID + fieldSchemaKey: + name: UUIDType + version: 0.0.1 + optional: false + - key: + name: pmsh-operational-policy + version: 0.0.1 + value: + key: + name: pmsh-operational-policy + version: 0.0.1 + nameSpace: org.onap.policy.apex.onap.pmcontrol + source: DCAE + target: APEX + parameter: + entry: + - key: blueprintName + value: + key: blueprintName + fieldSchemaKey: + name: SimpleStringType + version: 0.0.1 + optional: false + - key: blueprintVersion + value: + key: blueprintVersion + fieldSchemaKey: + name: SimpleStringType + version: 0.0.1 + optional: false + - key: changeType + value: + key: changeType + fieldSchemaKey: + name: SimpleStringType + version: 0.0.1 + optional: false + - key: controlLoopName + value: + key: controlLoopName + fieldSchemaKey: + name: SimpleStringType + version: 0.0.1 + optional: false + - key: ipAddress + value: + key: ipAddress + fieldSchemaKey: + name: SimpleStringType + version: 0.0.1 + optional: false + - key: measurementGroupName + value: + key: measurementGroupName + fieldSchemaKey: + name: SimpleStringType + version: 0.0.1 + optional: true + - key: nfName + value: + key: nfName + fieldSchemaKey: + name: SimpleStringType + version: 0.0.1 + optional: false + - key: operationalPolicyName + value: + key: operationalPolicyName + fieldSchemaKey: + name: SimpleStringType + version: 0.0.1 + optional: false + - key: subscription + value: + key: subscription + fieldSchemaKey: + name: SubscriptionType + version: 0.0.1 + optional: true + - key: subscriptionName + value: + key: subscriptionName + fieldSchemaKey: + name: SimpleStringType + version: 0.0.1 + optional: true + albums: + key: + name: PMControlPolicy_Albums + version: 0.0.1 + albums: + entry: + - key: + name: PMSubscriptionAlbum + version: 0.0.1 + value: + key: + name: PMSubscriptionAlbum + version: 0.0.1 + scope: policy + isWritable: true + itemSchema: + name: PMSubscriptionType + version: 0.0.1 + schemas: + key: + name: PMControlPolicy_Schemas + version: 0.0.1 + schemas: + entry: + - key: + name: CDSActionIdentifiersType + version: 0.0.1 + value: + key: + name: CDSActionIdentifiersType + version: 0.0.1 + schemaFlavour: Avro + schemaDefinition: |- + { + "type": "record", + "name": "ActionIdentifiers_Type", + "namespace": "org.onap.policy.apex.onap.helloworld", + "fields": [ + { + "name": "actionName", + "type": "string" + }, + { + "name": "blueprintName", + "type": "string" + }, + { + "name": "blueprintVersion", + "type": "string" + }, + { + "name": "mode", + "type": "string" + } + ] + } + - key: + name: CDSCreateResponsePayloadType + version: 0.0.1 + value: + key: + name: CDSCreateResponsePayloadType + version: 0.0.1 + schemaFlavour: Avro + schemaDefinition: |- + { + "name": "CreateResponsePayloadEntry", + "type": "record", + "namespace": "com.acme.avro", + "fields": [ + { + "name": "create_DasH_subscription_DasH_response", + "type": { + "name": "create_DasH_subscription_DasH_response", + "type": "record", + "fields": [ + { + "name": "odl_DasH_response", + "type": { + "name": "odl_DasH_response", + "type": "record", + "fields": [ + { + "name": "status", + "type": "string" + } + ] + } + } + ] + } + } + ] + } + - key: + name: CDSCreateSubscriptionPayloadType + version: 0.0.1 + value: + key: + name: CDSCreateSubscriptionPayloadType + version: 0.0.1 + schemaFlavour: Avro + schemaDefinition: |- + { + "type":"map", + "values":{ + "type":"record", + "name":"CDSRequestPayloadEntry", + "fields":[ + { + "name":"create_DasH_subscription_DasH_properties", + "type":{ + "name":"create_DasH_subscription_DasH_properties_record", + "type":"record", + "fields":[ + { + "name":"nfName", + "type":"string" + }, + { + "name":"ipAddress", + "type":"string" + }, + { + "name":"subscriptionName", + "type":"string" + }, + { + "name":"fileBasedGP", + "type":"string" + }, + { + "name":"fileLocation", + "type":"string" + }, + { + "name":"measurementGroup", + "type":{ + "name":"Measurement_Group_Type", + "type":"record", + "fields":[ + { + "name":"measurementGroupName", + "type":"string" + }, + { + "name":"measurementTypes", + "type":{ + "type":"array", + "items":{ + "name":"Measurement_Types_Type", + "type":"record", + "fields":[ + { + "name":"measurementType", + "type":"string" + } + ] + } + } + }, + { + "name":"managedObjectDNsBasic", + "type":{ + "type":"array", + "items":{ + "name":"Managed_Object_Dns_Basic_Type", + "type":"record", + "fields":[ + { + "name":"DN", + "type":"string" + } + ] + } + } + } + ] + } + } + ] + } + } + ] + } + } + - key: + name: CDSDeleteResponsePayloadType + version: 0.0.1 + value: + key: + name: CDSDeleteResponsePayloadType + version: 0.0.1 + schemaFlavour: Avro + schemaDefinition: |- + { + "name": "DeleteResponsePayloadEntry", + "type": "record", + "namespace": "com.acme.avro", + "fields": [ + { + "name": "delete_DasH_subscription_DasH_response", + "type": { + "name": "delete_DasH_subscription_DasH_response", + "type": "record", + "fields": [ + { + "name": "odl_DasH_response", + "type": { + "name": "odl_DasH_response", + "type": "record", + "fields": [ + { + "name": "status", + "type": "string" + } + ] + } + } + ] + } + } + ] + } + - key: + name: CDSDeleteSubscriptionPayloadType + version: 0.0.1 + value: + key: + name: CDSDeleteSubscriptionPayloadType + version: 0.0.1 + schemaFlavour: Avro + schemaDefinition: |- + { + "type":"map", + "values":{ + "type":"record", + "name":"CDSRequestPayloadEntry", + "fields":[ + { + "name":"delete_DasH_subscription_DasH_properties", + "type":{ + "name":"delete_DasH_subscription_DasH_properties_record", + "type":"record", + "fields":[ + { + "name":"nfName", + "type":"string" + }, + { + "name":"ipAddress", + "type":"string" + }, + { + "name":"subscriptionName", + "type":"string" + }, + { + "name":"measurementGroupName", + "type":"string" + } + ] + } + } + ] + } + } + - key: + name: CDSRequestCommonHeaderType + version: 0.0.1 + value: + key: + name: CDSRequestCommonHeaderType + version: 0.0.1 + schemaFlavour: Avro + schemaDefinition: |- + { + "type": "record", + "name": "RequestCommonHeader_Type", + "namespace": "org.onap.policy.apex.onap.helloworld", + "fields": [ + { + "name": "originatorId", + "type": "string" + }, + { + "name": "requestId", + "type": "string" + }, + { + "name": "subRequestId", + "type": "string" + } + ] + } + - key: + name: CDSResponseCommonHeaderType + version: 0.0.1 + value: + key: + name: CDSResponseCommonHeaderType + version: 0.0.1 + schemaFlavour: Avro + schemaDefinition: |- + { + "type": "record", + "name": "ResponseCommonHeader_Type", + "namespace": "org.onap.policy.apex.onap.helloworld", + "fields": [ + { + "name": "originatorId", + "type": "string" + }, + { + "name": "requestId", + "type": "string" + }, + { + "name": "subRequestId", + "type": "string" + }, + { + "name": "timestamp", + "type": "string" + }, + { + "name": "flags", + "type": ["null", "string"] + } + ] + } + - key: + name: CDSResponseStatusType + version: 0.0.1 + value: + key: + name: CDSResponseStatusType + version: 0.0.1 + schemaFlavour: Avro + schemaDefinition: |- + { + "type": "record", + "name": "ResponseStatus_Type", + "namespace": "org.onap.policy.apex.onap.helloworld", + "fields": [ + { + "name": "code", + "type": "int" + }, + { + "name": "eventType", + "type": "string" + }, + { + "name": "timestamp", + "type": "string" + }, + { + "name": "message", + "type": "string" + } + ] + } + - key: + name: PMSubscriptionType + version: 0.0.1 + value: + key: + name: PMSubscriptionType + version: 0.0.1 + schemaFlavour: Avro + schemaDefinition: |- + { + "name": "PMSubscription", + "type": "record", + "namespace": "org.onap.policy.apex.onap.pmcontrol", + "fields": [ + { + "name": "nfName", + "type": "string" + }, + { + "name": "ipAddress", + "type": "string" + }, + { + "name": "changeType", + "type": "string" + }, + { + "name": "controlLoopName", + "type": "string" + }, + { + "name": "operationalPolicyName", + "type": "string" + }, + { + "name": "blueprintName", + "type": "string" + }, + { + "name": "blueprintVersion", + "type": "string" + }, + { + "name": "subscriptionName", + "type": "string" + }, + { + "name": "measurementGroupName", + "type": "string" + }, + { + "name": "subscription", + "type": { + "name": "subscription", + "type": "record", + "fields": [ + { + "name": "subscriptionName", + "type": "string" + }, + { + "name": "fileBasedGP", + "type": "int" + }, + { + "name": "fileLocation", + "type": "string" + }, + { + "name": "measurementGroup", + "type": { + "name": "Measurement_Group_Type", + "type": "record", + "fields": [ + { + "name": "measurementGroupName", + "type": "string" + }, + { + "name": "measurementTypes", + "type": { + "type": "array", + "items": { + "name": "Measurement_Types_Type", + "type": "record", + "fields": [ + { + "name": "measurementType", + "type": "string" + } + ] + } + } + }, + { + "name": "managedObjectDNsBasic", + "type": { + "type": "array", + "items": { + "name": "Managed_Object_Dns_Basic_Type", + "type": "record", + "fields": [ + { + "name": "DN", + "type": "string" + } + ] + } + } + } + ] + } + } + ] + } + } + ] + } + - key: + name: SimpleIntType + version: 0.0.1 + value: + key: + name: SimpleIntType + version: 0.0.1 + schemaFlavour: Java + schemaDefinition: java.lang.Integer + - key: + name: SimpleStringType + version: 0.0.1 + value: + key: + name: SimpleStringType + version: 0.0.1 + schemaFlavour: Java + schemaDefinition: java.lang.String + - key: + name: SubscriptionStatusType + version: 0.0.1 + value: + key: + name: SubscriptionStatusType + version: 0.0.1 + schemaFlavour: Avro + schemaDefinition: |- + { + "type": "record", + "name": "ActivateSubscriptionStatus_Type", + "namespace": "org.onap.policy.apex.onap.helloworld", + "fields": [ + { + "name": "subscriptionName", + "type": "string" + }, + { + "name": "measurementGroupName", + "type": "string" + }, + { + "name": "nfName", + "type": "string" + }, + { + "name": "changeType", + "type": "string" + }, + { + "name": "message", + "type": "string" + } + ] + } + - key: + name: SubscriptionType + version: 0.0.1 + value: + key: + name: SubscriptionType + version: 0.0.1 + schemaFlavour: Avro + schemaDefinition: |- + { + "name": "subscription", + "type": "record", + "default": "null", + "fields": [ + { + "name": "subscriptionName", + "type": "string" + }, + { + "name": "fileBasedGP", + "type": "int" + }, + { + "name": "fileLocation", + "type": "string" + }, + { + "name": "measurementGroup", + "type": { + "name": "Measurement_Group_Type", + "type": "record", + "fields": [ + { + "name": "measurementGroupName", + "type": "string" + }, + { + "name": "measurementTypes", + "type": { + "type": "array", + "items": { + "name": "Measurement_Types_Type", + "type": "record", + "fields": [ + { + "name": "measurementType", + "type": "string" + } + ] + } + } + }, + { + "name": "managedObjectDNsBasic", + "type": { + "type": "array", + "items": { + "name": "Managed_Object_Dns_Basic_Type", + "type": "record", + "fields": [ + { + "name": "DN", + "type": "string" + } + ] + } + } + } + ] + } + } + ] + } + - key: + name: UUIDType + version: 0.0.1 + value: + key: + name: UUIDType + version: 0.0.1 + schemaFlavour: Java + schemaDefinition: java.util.UUID + eventInputParameters: + DCAEConsumer: + carrierTechnologyParameters: + carrierTechnology: RESTCLIENT + parameterClassName: org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters + parameters: + consumerPollTime: '50' + url: https://message-router:3905/events/unauthenticated.DCAE_CL_OUTPUT/cg1/sg1 + eventProtocolParameters: + eventProtocol: JSON + parameters: + nameAlias: operationalPolicyName + eventName: pmsh-operational-policy + eventNameFilter: pmsh-operational-policy + CDSRequestConsumer: + carrierTechnologyParameters: + carrierTechnology: RESTREQUESTOR + parameterClassName: org.onap.policy.apex.plugins.event.carrier.restrequestor.RestRequestorCarrierTechnologyParameters + parameters: + url: http://cds-blueprints-processor-http:8080/api/v1/execution-service/process + httpMethod: POST + restRequestTimeout: 2000 + httpHeaders: + - - Authorization + - Basic Y2NzZGthcHBzOmNjc2RrYXBwcw== + eventProtocolParameters: + eventProtocol: JSON + eventName: CDSCreateResponseEvent + eventNameFilter: CDSCreateResponseEvent + requestorMode: true + requestorPeer: CDSRequestProducer + requestorTimeout: 500 + CDSDeleteRequestConsumer: + carrierTechnologyParameters: + carrierTechnology: RESTREQUESTOR + parameterClassName: org.onap.policy.apex.plugins.event.carrier.restrequestor.RestRequestorCarrierTechnologyParameters + parameters: + url: http://cds-blueprints-processor-http:8080/api/v1/execution-service/process + httpMethod: POST + restRequestTimeout: 2000 + httpHeaders: + - - Authorization + - Basic Y2NzZGthcHBzOmNjc2RrYXBwcw== + eventProtocolParameters: + eventProtocol: JSON + eventName: CDSDeleteResponseEvent + eventNameFilter: CDSDeleteResponseEvent + requestorMode: true + requestorPeer: CDSDeleteRequestProducer + requestorTimeout: 500 + eventOutputParameters: + logOutputter: + carrierTechnologyParameters: + carrierTechnology: FILE + parameters: + standardIo: true + eventProtocolParameters: + eventProtocol: JSON + StdOutOutputter: + carrierTechnologyParameters: + carrierTechnology: FILE + parameters: + standardIo: true + eventProtocolParameters: + eventProtocol: JSON + CDSRequestProducer: + carrierTechnologyParameters: + carrierTechnology: RESTREQUESTOR + parameterClassName: org.onap.policy.apex.plugins.event.carrier.restrequestor.RestRequestorCarrierTechnologyParameters + eventProtocolParameters: + eventProtocol: JSON + eventNameFilter: CDSCreateSubscriptionRequestEvent + requestorMode: true + requestorPeer: CDSRequestConsumer + requestorTimeout: 500 + CDSDeleteRequestProducer: + carrierTechnologyParameters: + carrierTechnology: RESTREQUESTOR + parameterClassName: org.onap.policy.apex.plugins.event.carrier.restrequestor.RestRequestorCarrierTechnologyParameters + eventProtocolParameters: + eventProtocol: JSON + eventNameFilter: CDSDeleteSubscriptionRequestEvent + requestorMode: true + requestorPeer: CDSDeleteRequestConsumer + requestorTimeout: 500 + CDSReplyProducer: + carrierTechnologyParameters: + carrierTechnology: RESTCLIENT + parameterClassName: org.onap.policy.apex.plugins.event.carrier.restclient.RestClientCarrierTechnologyParameters + parameters: + url: https://message-router:3905/events/unauthenticated.PMSH_CL_INPUT + httpMethod: POST + restRequestTimeout: 2000 + eventProtocolParameters: + eventProtocol: JSON + eventNameFilter: CDSResponseStatusEvent
\ No newline at end of file |