Merge "[SDC] Update SDC docker versions to 1.10.1"
diff --git a/kubernetes/aaf/components/aaf-sms/resources/config/osdf.json b/kubernetes/aaf/components/aaf-sms/resources/config/osdf.json
index 3ede31d..c14f7ee 100644
--- a/kubernetes/aaf/components/aaf-sms/resources/config/osdf.json
+++ b/kubernetes/aaf/components/aaf-sms/resources/config/osdf.json
@@ -99,14 +99,14 @@
                     "UserName": "${OSDF_OPT_ENGINE_USER}",
                     "Password": "${OSDF_OPT_ENGINE_PASS}"
                 }
-            },
+            }{{ if .Values.cps.enabled }},
             {
                 "name": "cps",
                 "values": {
                     "UserName": "${CPS_USER}",
                     "Password": "${CPS_PASS}"
                 }
-            }
+            }{{ end }}
         ]
     }
 }
diff --git a/kubernetes/aaf/components/aaf-sms/templates/job.yaml b/kubernetes/aaf/components/aaf-sms/templates/job.yaml
index 6d9ecaa..8dbe276 100644
--- a/kubernetes/aaf/components/aaf-sms/templates/job.yaml
+++ b/kubernetes/aaf/components/aaf-sms/templates/job.yaml
@@ -52,7 +52,9 @@
            export OSDF_OPT_ENGINE_PASS=${OSDF_OPT_ENGINE_PASS_PLAIN};
            export SO_PASS=${SO_PASS_PLAIN};
            export SDC_PASS=${SDC_PASS_PLAIN};
+           {{- if .Values.cps.enabled }}
            export CPS_PASS=${CPS_PASS_PLAIN};
+           {{-  end }}
            cd /config-input;
            for PFILE in `find . -not -type d | grep -v -F ..`; do
              envsubst <${PFILE} >/config/${PFILE};
@@ -137,11 +139,12 @@
           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "sdc-creds" "key" "login") | indent 10 }}
         - name: SDC_PASS_PLAIN
           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "sdc-creds" "key" "password") | indent 10 }}
-
+        {{- if .Values.cps.enabled }}
         - name: CPS_USER
           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "cps-creds" "key" "login") | indent 10 }}
         - name: CPS_PASS_PLAIN
           {{- include "common.secret.envFromSecretFast" (dict "global" . "uid" "cps-creds" "key" "password") | indent 10 }}
+        {{- end }}
 
         volumeMounts:
         - mountPath: /config-input
diff --git a/kubernetes/aaf/components/aaf-sms/values.yaml b/kubernetes/aaf/components/aaf-sms/values.yaml
index cde8529..da268cc 100644
--- a/kubernetes/aaf/components/aaf-sms/values.yaml
+++ b/kubernetes/aaf/components/aaf-sms/values.yaml
@@ -116,6 +116,9 @@
 ingress:
   enabled: false
 
+cps:
+  enabled: true
+
 secrets:
   - uid: aai-creds
     type: basicAuth
diff --git a/kubernetes/aai/components/aai-babel/values.yaml b/kubernetes/aai/components/aai-babel/values.yaml
index f2dfd2c..14f162a 100644
--- a/kubernetes/aai/components/aai-babel/values.yaml
+++ b/kubernetes/aai/components/aai-babel/values.yaml
@@ -59,7 +59,7 @@
 #################################################################
 
 # application image
-image: onap/babel:1.9.2
+image: onap/babel:1.9.3
 
 flavor: small
 flavorOverride: small
diff --git a/kubernetes/aai/components/aai-graphadmin/values.yaml b/kubernetes/aai/components/aai-graphadmin/values.yaml
index 118f446..6f372f9 100644
--- a/kubernetes/aai/components/aai-graphadmin/values.yaml
+++ b/kubernetes/aai/components/aai-graphadmin/values.yaml
@@ -76,11 +76,11 @@
       version:
         # Current version of the REST API
         api:
-          default: v24
+          default: v26
         # Specifies which version the depth parameter is configurable
         depth: v11
         # List of all the supported versions of the API
-        list: v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24
+        list: v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26
         # Specifies from which version related link should appear
         related:
           link: v11
@@ -144,7 +144,7 @@
     chown -R {{ .Values.user_id }}:{{ .Values.group_id }} {{ .Values.credsPath }}
 
 # application image
-image: onap/aai-graphadmin:1.9.2
+image: onap/aai-graphadmin:1.9.3
 pullPolicy: Always
 restartPolicy: Always
 flavor: small
diff --git a/kubernetes/aai/components/aai-modelloader/values.yaml b/kubernetes/aai/components/aai-modelloader/values.yaml
index 95eae6a..6d1a37e 100644
--- a/kubernetes/aai/components/aai-modelloader/values.yaml
+++ b/kubernetes/aai/components/aai-modelloader/values.yaml
@@ -56,7 +56,7 @@
     chown -R {{ .Values.user_id }}:{{ .Values.group_id }} {{ .Values.credsPath }}
 
 # application image
-image: onap/model-loader:1.9.1
+image: onap/model-loader:1.9.2
 pullPolicy: Always
 restartPolicy: Always
 flavor: small
diff --git a/kubernetes/aai/components/aai-resources/values.yaml b/kubernetes/aai/components/aai-resources/values.yaml
index 5198494..b1f8c08 100644
--- a/kubernetes/aai/components/aai-resources/values.yaml
+++ b/kubernetes/aai/components/aai-resources/values.yaml
@@ -77,11 +77,11 @@
       version:
         # Current version of the REST API
         api:
-          default: v24
+          default: v26
         # Specifies which version the depth parameter is configurable
         depth: v11
         # List of all the supported versions of the API
-        list: v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24
+        list: v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26
         # Specifies from which version related link should appear
         related:
           link: v11
@@ -157,7 +157,7 @@
     chown -R 1000 {{ .Values.credsPath }}
 
 # application image
-image: onap/aai-resources:1.9.3
+image: onap/aai-resources:1.9.4
 pullPolicy: Always
 restartPolicy: Always
 flavor: small
diff --git a/kubernetes/aai/components/aai-schema-service/values.yaml b/kubernetes/aai/components/aai-schema-service/values.yaml
index 9ca3983..1dd374c 100644
--- a/kubernetes/aai/components/aai-schema-service/values.yaml
+++ b/kubernetes/aai/components/aai-schema-service/values.yaml
@@ -40,11 +40,11 @@
       version:
       # Current version of the REST API
         api:
-          default: v24
+          default: v26
         # Specifies which version the depth parameter is configurable
         depth: v11
         # List of all the supported versions of the API
-        list: v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24
+        list: v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26
         # Specifies from which version related link should appear
         related:
           link: v11
@@ -94,7 +94,7 @@
     chown -R {{ .Values.user_id }}:{{ .Values.group_id }} {{ .Values.credsPath }}
 
 # application image
-image: onap/aai-schema-service:1.9.3
+image: onap/aai-schema-service:1.9.4
 pullPolicy: Always
 restartPolicy: Always
 flavorOverride: small
diff --git a/kubernetes/aai/components/aai-traversal/values.yaml b/kubernetes/aai/components/aai-traversal/values.yaml
index 7de12f5..b1c8fdd 100644
--- a/kubernetes/aai/components/aai-traversal/values.yaml
+++ b/kubernetes/aai/components/aai-traversal/values.yaml
@@ -84,11 +84,11 @@
       version:
         # Current version of the REST API
         api:
-          default: v24
+          default: v26
         # Specifies which version the depth parameter is configurable
         depth: v11
         # List of all the supported versions of the API
-        list: v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24
+        list: v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26
         # Specifies from which version related link should appear
         related:
           link: v11
@@ -140,7 +140,7 @@
     chown -R 1000 {{ .Values.credsPath }}
 
 # application image
-image: onap/aai-traversal:1.9.3
+image: onap/aai-traversal:1.9.4
 pullPolicy: Always
 restartPolicy: Always
 flavor: small
diff --git a/kubernetes/aai/resources/config/haproxy/haproxy-pluggable-security.cfg b/kubernetes/aai/resources/config/haproxy/haproxy-pluggable-security.cfg
index 9fa6d2e..6e7acef 100644
--- a/kubernetes/aai/resources/config/haproxy/haproxy-pluggable-security.cfg
+++ b/kubernetes/aai/resources/config/haproxy/haproxy-pluggable-security.cfg
@@ -88,6 +88,15 @@
         http-request set-header X-AAI-SSL-Client-ST             %{+Q}[ssl_c_s_dn(ST)]
         http-request set-header X-AAI-SSL-Client-C              %{+Q}[ssl_c_s_dn(C)]
         http-request set-header X-AAI-SSL-Client-O              %{+Q}[ssl_c_s_dn(O)]
+#######################################
+## Request blocking configuration ###
+#######################################
+        {{- if eq $.Values.haproxy.requestBlocking.enabled true }}
+        {{- range $custom_config := $.Values.haproxy.requestBlocking.customConfigs }}
+        {{ $custom_config }}
+        {{- end }}
+        {{- end }}
+
         reqadd X-Forwarded-Proto:\ https
         reqadd X-Forwarded-Port:\ 8443
 
diff --git a/kubernetes/aai/resources/config/haproxy/haproxy.cfg b/kubernetes/aai/resources/config/haproxy/haproxy.cfg
index 1db4add..1accff9 100644
--- a/kubernetes/aai/resources/config/haproxy/haproxy.cfg
+++ b/kubernetes/aai/resources/config/haproxy/haproxy.cfg
@@ -119,6 +119,15 @@
         http-request set-header X-AAI-SSL-Client-ST             %{+Q}[ssl_c_s_dn(ST)]
         http-request set-header X-AAI-SSL-Client-C              %{+Q}[ssl_c_s_dn(C)]
         http-request set-header X-AAI-SSL-Client-O              %{+Q}[ssl_c_s_dn(O)]
+#######################################
+## Request blocking configuration ###
+#######################################
+        {{- if eq $.Values.haproxy.requestBlocking.enabled true }}
+        {{- range $custom_config := $.Values.haproxy.requestBlocking.customConfigs }}
+        {{ $custom_config }}
+        {{- end }}
+        {{- end }}
+
         reqadd X-Forwarded-Proto:\ https
         reqadd X-Forwarded-Port:\ 8443
 {{- end }}
diff --git a/kubernetes/aai/values.yaml b/kubernetes/aai/values.yaml
index 42b0fa6..62d1d2e 100644
--- a/kubernetes/aai/values.yaml
+++ b/kubernetes/aai/values.yaml
@@ -231,11 +231,11 @@
       version:
         # Current version of the REST API
         api:
-          default: v24
+          default: v26
         # Specifies which version the depth parameter is configurable
         depth: v11
         # List of all the supported versions of the API
-        list: v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24
+        list: v11,v12,v13,v14,v15,v16,v17,v18,v19,v20,v21,v22,v23,v24,v25,v26
         # Specifies from which version related link should appear
         related:
           link: v11
@@ -349,6 +349,12 @@
 
 affinity: {}
 
+# HAProxy configuration to block HTTP requests to AAI based on configurable URL patterns
+haproxy:
+  requestBlocking:
+    enabled: false
+    customConfigs: []
+
 # probe configuration parameters
 liveness:
   initialDelaySeconds: 10
diff --git a/kubernetes/common/repositoryGenerator/values.yaml b/kubernetes/common/repositoryGenerator/values.yaml
index 7058f86..34ce466 100644
--- a/kubernetes/common/repositoryGenerator/values.yaml
+++ b/kubernetes/common/repositoryGenerator/values.yaml
@@ -23,7 +23,7 @@
   githubContainerRegistry: ghcr.io
 
   # common global images
-  busyboxImage: busybox:1.32
+  busyboxImage: busybox:1.34.1
   curlImage: curlimages/curl:7.80.0
   envsubstImage: dibi/envsubst:1
   # there's only latest image for htpasswd
@@ -33,10 +33,10 @@
   # (/usr/local/jetty/lib/jetty-util-9.4.45.v20220203.jar) for 9.4.45
   jettyImage: jetty:9.4.45-jdk11-slim
   jreImage: onap/integration-java11:10.0.0
-  kubectlImage: bitnami/kubectl:1.19
+  kubectlImage: bitnami/kubectl:1.22.4
   loggingImage: beats/filebeat:5.5.0
   mariadbImage: bitnami/mariadb:10.6.5-debian-10-r28
-  nginxImage: bitnami/nginx:1.18-debian-10
+  nginxImage: bitnami/nginx:1.21.4
   postgresImage: crunchydata/crunchy-postgres:centos8-13.2-4.6.1
   readinessImage: onap/oom/readiness:3.0.1
   dcaePolicySyncImage: onap/org.onap.dcaegen2.deployments.dcae-services-policy-sync:1.0.1
diff --git a/kubernetes/cps/components/cps-core/Chart.yaml b/kubernetes/cps/components/cps-core/Chart.yaml
index c1ef720..95201a0 100644
--- a/kubernetes/cps/components/cps-core/Chart.yaml
+++ b/kubernetes/cps/components/cps-core/Chart.yaml
@@ -1,6 +1,7 @@
-#  Copyright (C) Pantheon.tech, Orange
+# Copyright (C) Pantheon.tech, Orange
 # Modifications Copyright © 2021 Orange
 # Modifications Copyright © 2021 Nordix Foundation
+# Modifications Copyright (C) 2022 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -30,8 +31,7 @@
   - name: postgres-init
     version: ~10.x-0
     repository: '@local'
-    condition: not global.postgres.localCluster
-    #condition: global.postgres.postgresInit
+    condition: postgres.postgresInit
   - name: readinessCheck
     version: ~10.x-0
     repository: '@local'
diff --git a/kubernetes/cps/components/cps-core/values.yaml b/kubernetes/cps/components/cps-core/values.yaml
index e67cfb2..3da5d17 100644
--- a/kubernetes/cps/components/cps-core/values.yaml
+++ b/kubernetes/cps/components/cps-core/values.yaml
@@ -1,4 +1,5 @@
-#  Copyright (C) 2021 Pantheon.tech, Orange, Bell Canada.
+# Copyright (C) 2021 Pantheon.tech, Orange, Bell Canada.
+# Modifications Copyright (C) 2022 Bell Canada
 #
 # Licensed under the Apache License, Version 2.0 (the "License");
 # you may not use this file except in compliance with the License.
@@ -200,6 +201,7 @@
 # Postgres overriding defaults in the postgres
 #################################################################
 postgres:
+  postgresInit: true
   nameOverride: &postgresName cps-core-postgres
   service:
     name: *postgresName
diff --git a/kubernetes/dmaap/components/message-router/values.yaml b/kubernetes/dmaap/components/message-router/values.yaml
index 7aa3176..34b7a88 100644
--- a/kubernetes/dmaap/components/message-router/values.yaml
+++ b/kubernetes/dmaap/components/message-router/values.yaml
@@ -60,7 +60,7 @@
 # Application configuration defaults.
 #################################################################
 # application image
-image: onap/dmaap/dmaap-mr:1.3.0
+image: onap/dmaap/dmaap-mr:1.3.2
 pullPolicy: Always
 
 kafka:
diff --git a/kubernetes/onap/resources/overrides/onap-all.yaml b/kubernetes/onap/resources/overrides/onap-all.yaml
index 229717a..f92bfa7 100644
--- a/kubernetes/onap/resources/overrides/onap-all.yaml
+++ b/kubernetes/onap/resources/overrides/onap-all.yaml
@@ -29,6 +29,10 @@
   enabled: true
 aaf:
   enabled: true
+  aaf-sms:
+    cps:
+      # you must always set the same values as value set in cps.enabled
+      enabled: true
 aai:
   enabled: true
 appc:
diff --git a/kubernetes/onap/resources/overrides/sm-onap.yaml b/kubernetes/onap/resources/overrides/sm-onap.yaml
index 06ad5b7..b07b6d3 100644
--- a/kubernetes/onap/resources/overrides/sm-onap.yaml
+++ b/kubernetes/onap/resources/overrides/sm-onap.yaml
@@ -58,6 +58,10 @@
     replicaCount: 1
 aaf:
   enabled: false
+  aaf-sms:
+    cps:
+      # you must always set the same values as value set in cps.enabled
+      enabled: false
 appc:
   enabled: false
 cassandra:
diff --git a/kubernetes/onap/values.yaml b/kubernetes/onap/values.yaml
index 08f404a..73f96d3 100755
--- a/kubernetes/onap/values.yaml
+++ b/kubernetes/onap/values.yaml
@@ -78,7 +78,7 @@
 
   # common global images
   # Busybox for simple shell manipulation
-  busyboxImage: busybox:1.32
+  busyboxImage: busybox:1.34.1
 
   # curl image
   curlImage: curlimages/curl:7.80.0
@@ -91,7 +91,7 @@
   htpasswdImage: xmartlabs/htpasswd:latest
 
   # kubenretes client image
-  kubectlImage: bitnami/kubectl:1.19
+  kubectlImage: bitnami/kubectl:1.22.4
 
   # logging agent
   loggingImage: beats/filebeat:5.5.0
@@ -100,7 +100,7 @@
   mariadbImage: bitnami/mariadb:10.6.5-debian-10-r28
 
   # nginx server image
-  nginxImage: bitnami/nginx:1.18-debian-10
+  nginxImage: bitnami/nginx:1.21.4
 
   # postgreSQL client and server image
   postgresImage: crunchydata/crunchy-postgres:centos8-13.2-4.6.1
@@ -259,8 +259,13 @@
 # Enable/disable and configure helm charts (ie. applications)
 # to customize the ONAP deployment.
 #################################################################
+
 aaf:
   enabled: false
+  aaf-sms:
+    cps:
+      # you must always set the same values as value set in cps.enabled
+      enabled: false
 aai:
   enabled: false
 appc:
diff --git a/kubernetes/oof/resources/config/conf/slicing_config.yaml b/kubernetes/oof/resources/config/conf/slicing_config.yaml
index e456aec..97ed73d 100644
--- a/kubernetes/oof/resources/config/conf/slicing_config.yaml
+++ b/kubernetes/oof/resources/config/conf/slicing_config.yaml
@@ -21,6 +21,7 @@
     uLThptPerUE: ul_thpt_per_ue
     sNSSAI: s_nssai
     pLMNIdList: plmn_id_list
+    plmnIdList: plmn_id_List
     activityFactor: activity_factor
     coverageAreaTAList: coverage_area_ta_list
     availability: availability
@@ -34,7 +35,7 @@
     maxPktSize: max_pkt_size
     msgSizeByte: msg_size_byte
     maxNumberofConns: max_number_of_conns
-    maxNumberofPDUSessions: max_number_of_pdu_sessions
+    maxNumberofPDUSession: max_number_of_pdu_session
     termDensity: terminal_density
     survivalTime: survival_time
     areaTrafficCapDL: area_traffic_cap_dl
@@ -64,6 +65,7 @@
     ul_thpt_per_ue: uLThptPerUE
     s_nssai: sNSSAI
     plmn_id_list: pLMNIdList
+    plmn_id_List: plmnIdList
     activity_factor: activityFactor
     coverage_area_ta_list: coverageAreaTAList
     availability: availability
@@ -77,7 +79,7 @@
     max_pkt_size: maxPktSize
     msg_size_byte: msgSizeByte
     max_number_of_conns: maxNumberofConns
-    max_number_of_pdu_sessions: maxNumberofPDUSessions
+    max_number_of_pdu_session: maxNumberofPDUSession
     terminal_density: termDensity
     survival_time: survivalTime
     area_traffic_cap_dl: areaTrafficCapDL
diff --git a/kubernetes/policy/components/policy-clamp-be/resources/config/application.properties b/kubernetes/policy/components/policy-clamp-be/resources/config/application.properties
index cd6c6fa..b9a4ed3 100644
--- a/kubernetes/policy/components/policy-clamp-be/resources/config/application.properties
+++ b/kubernetes/policy/components/policy-clamp-be/resources/config/application.properties
@@ -71,7 +71,7 @@
 clamp.config.cadi.aafLocateUrl=https://aaf-locate.{{ include "common.namespace" . }}:8095
 
 # Configuration settings for ControlLoop Runtime Rest API
-clamp.config.controlloop.runtime.url=http://policy-clamp-cl-runtime.{{ include "common.namespace" . }}:6969
+clamp.config.controlloop.runtime.url=https://policy-clamp-cl-runtime.{{ include "common.namespace" . }}:6969
 clamp.config.controlloop.runtime.userName=${RUNTIME_USER}
 clamp.config.controlloop.runtime.password=${RUNTIME_PASSWORD}
 
diff --git a/kubernetes/policy/components/policy-clamp-cl-k8s-ppnt/resources/config/KubernetesParticipantParameters.yaml b/kubernetes/policy/components/policy-clamp-cl-k8s-ppnt/resources/config/KubernetesParticipantParameters.yaml
index fd6de7e..184adb6 100644
--- a/kubernetes/policy/components/policy-clamp-cl-k8s-ppnt/resources/config/KubernetesParticipantParameters.yaml
+++ b/kubernetes/policy/components/policy-clamp-cl-k8s-ppnt/resources/config/KubernetesParticipantParameters.yaml
@@ -1,5 +1,5 @@
 #  ============LICENSE_START=======================================================
-#   Copyright (C) 2021 Nordix Foundation. All rights reserved.
+#   Copyright (C) 2021-2022 Nordix Foundation. 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.
@@ -57,4 +57,21 @@
   # Configuration of the HTTP/REST server. The parameters are defined and handled by the springboot framework.
   # See springboot documentation.
   port: 8083
+  servlet:
+    context-path: /onap/policy/clamp/acm/k8sparticipant
 
+logging:
+  # Configuration of logging
+  level:
+    ROOT: ERROR
+    org.springframework: ERROR
+    org.springframework.data: ERROR
+    org.springframework.web.reactive.function.client.ExchangeFunctions: ERROR
+    org.onap.policy.clamp.controlloop.participant.kubernetes: INFO
+
+  file:
+    name: /var/log/onap/policy/clamp/application.log
+
+chart:
+  api:
+    enabled: false
\ No newline at end of file
diff --git a/kubernetes/sdc/components/sdc-be/resources/config/logging/logback.xml b/kubernetes/sdc/components/sdc-be/resources/config/logging/logback.xml
index 28fd910..fcbca71 100644
--- a/kubernetes/sdc/components/sdc-be/resources/config/logging/logback.xml
+++ b/kubernetes/sdc/components/sdc-be/resources/config/logging/logback.xml
@@ -14,24 +14,45 @@
 # limitations under the License.
 -->
 <configuration scan="true" scanPeriod="3 seconds">
-    <property name="logDir" value="/var/log/onap" />
-    <property name="componentName" scope="system" value="sdc"></property>
-    <property name="subComponentName" scope="system" value="sdc-be"></property>
-    <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />
-    <property file="${config.home}/catalog-be/configuration.yaml" />
-    <property name="enable-all-log" scope="context" value="false" />
+    <property name="logDir" value="/var/log/onap"/>
+    <property name="componentName" scope="system" value="sdc"/>
+    <property name="subComponentName" scope="system" value="sdc-be"/>
+    <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}"/>
+    <property file="${config.home}/catalog-be/configuration.yaml"/>
+    <property name="enable-all-log" scope="context" value="false"/>
     <!--  log file names -->
-    <property name="errorLogName" value="error" />
-    <property name="metricsLogName" value="metrics" />
-    <property name="auditLogName" value="audit" />
-    <property name="debugLogName" value="debug" />
-    <property name="transactionLogName" value="transaction" />
-    <property name="allLogName" value="all" />
-    <property name="queueSize" value="256" />
-    <property name="maxFileSize" value="50MB" />
-    <property name="maxHistory" value="30" />
-    <property name="totalSizeCap" value="10GB" />
-    <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />
+    <property name="errorLogName" value="error"/>
+    <property name="metricsLogName" value="metrics"/>
+    <property name="auditLogName" value="audit"/>
+    <property name="debugLogName" value="debug"/>
+    <property name="transactionLogName" value="transaction"/>
+    <property name="allLogName" value="all"/>
+    <property name="queueSize" value="256"/>
+    <property name="maxFileSize" value="50MB"/>
+    <property name="maxHistory" value="30"/>
+    <property name="totalSizeCap" value="10GB"/>
+    <property name="pattern"
+        value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n"/>
+
+    <!-- STDOUT -->
+    <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">
+        <encoder>
+            <pattern>${pattern}</pattern>
+        </encoder>
+    </appender>
+
+    <!-- STDERR -->
+    <appender class="ch.qos.logback.core.ConsoleAppender" name="STDERR">
+        <filter class="ch.qos.logback.classic.filter.LevelFilter">
+            <level>ERROR</level>
+            <onMatch>ACCEPT</onMatch>
+            <onMismatch>DENY</onMismatch>
+        </filter>
+        <encoder>
+            <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>
+        </encoder>
+    </appender>
+
     <!-- All log -->
     <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
         <then>
@@ -50,7 +71,7 @@
                 </encoder>
             </appender>
             <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_ALL">
-                <appender-ref ref="ALL_ROLLING" />
+                <appender-ref ref="ALL_ROLLING"/>
             </appender>
         </then>
     </if>
@@ -170,30 +191,32 @@
     <!-- Asynchronicity Configurations -->
     <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_DEBUG">
         <queueSize>${queueSize}</queueSize>
-        <appender-ref ref="DEBUG_ROLLING" />
+        <appender-ref ref="DEBUG_ROLLING"/>
     </appender>
     <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_TRANSACTION">
         <queueSize>${queueSize}</queueSize>
-        <appender-ref ref="TRANSACTION_ROLLING" />
+        <appender-ref ref="TRANSACTION_ROLLING"/>
     </appender>
     <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_ERROR">
         <queueSize>${queueSize}</queueSize>
-        <appender-ref ref="ERROR_ROLLING" />
+        <appender-ref ref="ERROR_ROLLING"/>
     </appender>
     <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_AUDIT">
         <queueSize>${queueSize}</queueSize>
-        <appender-ref ref="AUDIT_ROLLING" />
+        <appender-ref ref="AUDIT_ROLLING"/>
     </appender>
     <root level="INFO">
-        <appender-ref ref="ASYNC_ERROR" />
-        <appender-ref ref="ASYNC_DEBUG" />
-        <appender-ref ref="ASYNC_AUDIT" />
-        <appender-ref ref="ASYNC_TRANSACTION" />
+        <appender-ref ref="ASYNC_ERROR"/>
+        <appender-ref ref="ASYNC_DEBUG"/>
+        <appender-ref ref="ASYNC_AUDIT"/>
+        <appender-ref ref="ASYNC_TRANSACTION"/>
         <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
             <then>
-                <appender-ref ref="ALL_ROLLING" />
+                <appender-ref ref="ALL_ROLLING"/>
             </then>
         </if>
+        <appender-ref ref="STDOUT"/>
+        <appender-ref ref="STDERR"/>
     </root>
-    <logger level="INFO" name="org.openecomp.sdc" />
+    <logger level="INFO" name="org.openecomp.sdc"/>
 </configuration>
diff --git a/kubernetes/sdc/components/sdc-fe/resources/config/logging/logback.xml b/kubernetes/sdc/components/sdc-fe/resources/config/logging/logback.xml
index 1000982..f3ebf76 100644
--- a/kubernetes/sdc/components/sdc-fe/resources/config/logging/logback.xml
+++ b/kubernetes/sdc/components/sdc-fe/resources/config/logging/logback.xml
@@ -16,24 +16,45 @@
 -->

 

 <configuration scan="true" scanPeriod="3 seconds">

-    <property name="logDir" value="/var/log/onap" />

-    <property name="componentName" scope="system" value="sdc"></property>

-    <property name="subComponentName" scope="system" value="sdc-fe"></property>

-    <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />

-    <property file="${config.home}/catalog-fe/configuration.yaml" />

-    <property name="enable-all-log" scope="context" value="false" />

+    <property name="logDir" value="/var/log/onap"/>

+    <property name="componentName" scope="system" value="sdc"/>

+    <property name="subComponentName" scope="system" value="sdc-fe"/>

+    <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}"/>

+    <property file="${config.home}/catalog-fe/configuration.yaml"/>

+    <property name="enable-all-log" scope="context" value="false"/>

     <!--  log file names -->

-    <property name="errorLogName" value="error" />

-    <property name="metricsLogName" value="metrics" />

-    <property name="auditLogName" value="audit" />

-    <property name="debugLogName" value="debug" />

-    <property name="transactionLogName" value="transaction" />

-    <property name="allLogName" value="all" />

-    <property name="queueSize" value="256" />

-    <property name="maxFileSize" value="50MB" />

-    <property name="maxHistory" value="30" />

-    <property name="totalSizeCap" value="10GB" />

-    <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />

+    <property name="errorLogName" value="error"/>

+    <property name="metricsLogName" value="metrics"/>

+    <property name="auditLogName" value="audit"/>

+    <property name="debugLogName" value="debug"/>

+    <property name="transactionLogName" value="transaction"/>

+    <property name="allLogName" value="all"/>

+    <property name="queueSize" value="256"/>

+    <property name="maxFileSize" value="50MB"/>

+    <property name="maxHistory" value="30"/>

+    <property name="totalSizeCap" value="10GB"/>

+    <property name="pattern"

+        value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n"/>

+

+    <!-- STDOUT -->

+    <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">

+        <encoder>

+            <pattern>${pattern}</pattern>

+        </encoder>

+    </appender>

+

+    <!-- STDERR -->

+    <appender class="ch.qos.logback.core.ConsoleAppender" name="STDERR">

+        <filter class="ch.qos.logback.classic.filter.LevelFilter">

+            <level>ERROR</level>

+            <onMatch>ACCEPT</onMatch>

+            <onMismatch>DENY</onMismatch>

+        </filter>

+        <encoder>

+            <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>

+        </encoder>

+    </appender>

+

     <!-- All log -->

     <if condition='property("enable-all-log").equalsIgnoreCase("true")'>

         <then>

@@ -52,7 +73,7 @@
                 </encoder>

             </appender>

             <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_ALL">

-                <appender-ref ref="ALL_ROLLING" />

+                <appender-ref ref="ALL_ROLLING"/>

             </appender>

         </then>

     </if>

@@ -174,30 +195,32 @@
     <!-- Asynchronicity Configurations -->

     <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_DEBUG">

         <queueSize>${queueSize}</queueSize>

-        <appender-ref ref="DEBUG_ROLLING" />

+        <appender-ref ref="DEBUG_ROLLING"/>

     </appender>

     <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_TRANSACTION">

         <queueSize>${queueSize}</queueSize>

-        <appender-ref ref="TRANSACTION_ROLLING" />

+        <appender-ref ref="TRANSACTION_ROLLING"/>

     </appender>

     <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_ERROR">

         <queueSize>${queueSize}</queueSize>

-        <appender-ref ref="ERROR_ROLLING" />

+        <appender-ref ref="ERROR_ROLLING"/>

     </appender>

     <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_AUDIT">

         <queueSize>${queueSize}</queueSize>

-        <appender-ref ref="AUDIT_ROLLING" />

+        <appender-ref ref="AUDIT_ROLLING"/>

     </appender>

     <root level="INFO">

-        <appender-ref ref="ASYNC_ERROR" />

-        <appender-ref ref="ASYNC_DEBUG" />

-        <appender-ref ref="ASYNC_AUDIT" />

-        <appender-ref ref="ASYNC_TRANSACTION" />

+        <appender-ref ref="ASYNC_ERROR"/>

+        <appender-ref ref="ASYNC_DEBUG"/>

+        <appender-ref ref="ASYNC_AUDIT"/>

+        <appender-ref ref="ASYNC_TRANSACTION"/>

         <if condition='property("enable-all-log").equalsIgnoreCase("true")'>

             <then>

-                <appender-ref ref="ALL_ROLLING" />

+                <appender-ref ref="ALL_ROLLING"/>

             </then>

         </if>

+        <appender-ref ref="STDOUT"/>

+        <appender-ref ref="STDERR"/>

     </root>

-    <logger level="INFO" name="org.openecomp.sdc" />

+    <logger level="INFO" name="org.openecomp.sdc"/>

 </configuration>

diff --git a/kubernetes/sdc/components/sdc-onboarding-be/resources/config/logging/logback.xml b/kubernetes/sdc/components/sdc-onboarding-be/resources/config/logging/logback.xml
index b537709..ee22ff2 100644
--- a/kubernetes/sdc/components/sdc-onboarding-be/resources/config/logging/logback.xml
+++ b/kubernetes/sdc/components/sdc-onboarding-be/resources/config/logging/logback.xml
@@ -15,24 +15,45 @@
 # limitations under the License.

 -->

 <configuration scan="true" scanPeriod="3 seconds">

-    <property name="logDir" value="/var/log/onap" />

-    <property name="componentName" scope="system" value="sdc"></property>

-    <property name="subComponentName" scope="system" value="sdc-onboarding-be"></property>

-    <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}" />

-    <property file="${config.home}/catalog-be/configuration.yaml" />

-    <property name="enable-all-log" scope="context" value="false" />

+    <property name="logDir" value="/var/log/onap"/>

+    <property name="componentName" scope="system" value="sdc"/>

+    <property name="subComponentName" scope="system" value="sdc-onboarding-be"/>

+    <property name="logDirectory" value="${logDir}/${componentName}/${subComponentName}"/>

+    <property file="${config.home}/catalog-be/configuration.yaml"/>

+    <property name="enable-all-log" scope="context" value="false"/>

     <!--  log file names -->

-    <property name="errorLogName" value="error" />

-    <property name="metricsLogName" value="metrics" />

-    <property name="auditLogName" value="audit" />

-    <property name="debugLogName" value="debug" />

-    <property name="transactionLogName" value="transaction" />

-    <property name="allLogName" value="all" />

-    <property name="queueSize" value="256" />

-    <property name="maxFileSize" value="50MB" />

-    <property name="maxHistory" value="30" />

-    <property name="totalSizeCap" value="10GB" />

-    <property name="pattern" value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n" />

+    <property name="errorLogName" value="error"/>

+    <property name="metricsLogName" value="metrics"/>

+    <property name="auditLogName" value="audit"/>

+    <property name="debugLogName" value="debug"/>

+    <property name="transactionLogName" value="transaction"/>

+    <property name="allLogName" value="all"/>

+    <property name="queueSize" value="256"/>

+    <property name="maxFileSize" value="50MB"/>

+    <property name="maxHistory" value="30"/>

+    <property name="totalSizeCap" value="10GB"/>

+    <property name="pattern"

+        value="%d{&quot;yyyy-MM-dd'T'HH:mm:ss.SSSXXX&quot;, UTC}\t[%thread]\t%-5level\t%logger{36}\t%replace(%replace(%replace(%mdc){'\t','\\\\t'}){', ','\t'}){'\n', '\\\\n'}\t%replace(%replace(%msg){'\n', '\\\\n'}){'\t','\\\\t'}%n"/>

+

+    <!-- STDOUT -->

+    <appender class="ch.qos.logback.core.ConsoleAppender" name="STDOUT">

+        <encoder>

+            <pattern>${pattern}</pattern>

+        </encoder>

+    </appender>

+

+    <!-- STDERR -->

+    <appender class="ch.qos.logback.core.ConsoleAppender" name="STDERR">

+        <filter class="ch.qos.logback.classic.filter.LevelFilter">

+            <level>ERROR</level>

+            <onMatch>ACCEPT</onMatch>

+            <onMismatch>DENY</onMismatch>

+        </filter>

+        <encoder>

+            <pattern>"%d [%thread] %-5level %logger{1024} - %msg%n"</pattern>

+        </encoder>

+    </appender>

+

     <!-- All log -->

     <if condition='property("enable-all-log").equalsIgnoreCase("true")'>

         <then>

@@ -51,7 +72,7 @@
                 </encoder>

             </appender>

             <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_ALL">

-                <appender-ref ref="ALL_ROLLING" />

+                <appender-ref ref="ALL_ROLLING"/>

             </appender>

         </then>

     </if>

@@ -171,30 +192,32 @@
     <!-- Asynchronicity Configurations -->

     <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_DEBUG">

         <queueSize>${queueSize}</queueSize>

-        <appender-ref ref="DEBUG_ROLLING" />

+        <appender-ref ref="DEBUG_ROLLING"/>

     </appender>

     <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_TRANSACTION">

         <queueSize>${queueSize}</queueSize>

-        <appender-ref ref="TRANSACTION_ROLLING" />

+        <appender-ref ref="TRANSACTION_ROLLING"/>

     </appender>

     <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_ERROR">

         <queueSize>${queueSize}</queueSize>

-        <appender-ref ref="ERROR_ROLLING" />

+        <appender-ref ref="ERROR_ROLLING"/>

     </appender>

     <appender class="ch.qos.logback.classic.AsyncAppender" name="ASYNC_AUDIT">

         <queueSize>${queueSize}</queueSize>

-        <appender-ref ref="AUDIT_ROLLING" />

+        <appender-ref ref="AUDIT_ROLLING"/>

     </appender>

     <root level="INFO">

-        <appender-ref ref="ASYNC_ERROR" />

-        <appender-ref ref="ASYNC_DEBUG" />

-        <appender-ref ref="ASYNC_AUDIT" />

-        <appender-ref ref="ASYNC_TRANSACTION" />

+        <appender-ref ref="ASYNC_ERROR"/>

+        <appender-ref ref="ASYNC_DEBUG"/>

+        <appender-ref ref="ASYNC_AUDIT"/>

+        <appender-ref ref="ASYNC_TRANSACTION"/>

         <if condition='property("enable-all-log").equalsIgnoreCase("true")'>

             <then>

-                <appender-ref ref="ALL_ROLLING" />

+                <appender-ref ref="ALL_ROLLING"/>

             </then>

         </if>

+        <appender-ref ref="STDOUT"/>

+        <appender-ref ref="STDERR"/>

     </root>

-    <logger level="INFO" name="org.openecomp.sdc" />

+    <logger level="INFO" name="org.openecomp.sdc"/>

 </configuration>