aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen David, Elad (eb7504) <eb7504@intl.att.com>2019-11-03 17:22:48 +0200
committerBen David, Elad (eb7504) <eb7504@intl.att.com>2019-11-05 15:52:05 +0200
commit1e61754c29fc99636de692a0fb9d2ef1a4ba9e61 (patch)
tree90c20331d442c82dc955b0426d60b64a6ca353be
parent4a6e592af14fd3941df6e56e5b75c9ac5d5eb01b (diff)
Align logging to Onap-ELS 2019.11
Change-Id: I1750493d5c9f2eab8c1395f0fbc9ae66cf74b0a6 Issue-ID: SDC-2639 Signed-off-by: Ben David, Elad (eb7504) <eb7504@intl.att.com>
-rw-r--r--onboarding/pom.xml1
-rw-r--r--openecomp-be/api/openecomp-sdc-rest-webapp/action-library-rest/action-library-rest-services/src/main/java/org/openecomp/sdcrests/action/rest/services/ActionsImpl.java75
-rw-r--r--openecomp-be/api/openecomp-sdc-rest-webapp/onboarding-rest-war/src/main/webapp/WEB-INF/beans-services.xml4
-rw-r--r--openecomp-be/backend/openecomp-sdc-action-manager/src/main/java/org/openecomp/sdc/action/impl/ActionManagerImpl.java69
-rw-r--r--openecomp-be/backend/openecomp-sdc-security-util/pom.xml6
-rw-r--r--openecomp-be/backend/openecomp-sdc-security-util/src/main/java/org/openecomp/sdc/securityutil/filters/SessionValidationFilter.java88
-rw-r--r--openecomp-be/dist/sdc-onboard-backend-docker/artifacts/chef-repo/cookbooks/sdc-onboard-backend/files/default/logback.xml514
-rw-r--r--openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/HeatConstants.java1
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/ActionConstants.java24
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/logging/StatusCode.java26
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/util/ActionUtil.java10
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionArtifactDaoImpl.java11
-rw-r--r--openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionDaoImpl.java41
-rw-r--r--openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/data/priorexecution.json2
-rw-r--r--openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ExecutionRequestTest.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/data/priorexecution.json2
-rw-r--r--openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ExternalTestingManagerImplTest.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/pom.xml5
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/AuditData.java64
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/Logger.java4
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/LoggerFactory.java7
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/MetricsData.java82
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/StatusCode.java27
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/AuditTracker.java8
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/ContextTracker.java3
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/RequestProcessingResult.java4
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/jaxrs/LoggingResponseFilter.java8
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/api/AuditDataTest.java5
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/api/LoggerFactoryTest.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/api/MetricsDataTest.java5
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/servlet/AuditTrackerTest.java14
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/servlet/ContextTrackerTest.java4
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/logback/EventTypeDiscriminator.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/AuditField.java12
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/ContextField.java12
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/Markers.java5
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/MetricsField.java14
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/RequestContextProvider.java7
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/SLF4JLoggerWrapper.java22
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/RoutingTest.java2
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/logback/EventTypeDiscriminatorTest.java10
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/slf4j/LoggingContextTest.java6
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/slf4j/RequestContextProviderTest.java6
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/slf4j/SLF4JLoggerWrapperTest.java34
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-spring/src/main/java/org/openecomp/sdc/logging/servlet/spring/LoggingInterceptor.java10
-rw-r--r--openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-spring/src/test/java/org/openecomp/sdc/logging/servlet/spring/LoggingInterceptorTest.java23
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NeutronPortNamingConventionValidator.java18
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidator.java6
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NeutronPortNamingConventionValidatorTest.java5
-rw-r--r--openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidatorTest.java2
-rw-r--r--openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaConstants.java1
-rw-r--r--openecomp-be/pom.xml5
52 files changed, 581 insertions, 741 deletions
diff --git a/onboarding/pom.xml b/onboarding/pom.xml
index f2442b4b16..4ed44018cb 100644
--- a/onboarding/pom.xml
+++ b/onboarding/pom.xml
@@ -125,6 +125,7 @@
<build.tools.version>${project.version}</build.tools.version>
<togglz.version>2.4.1.Final</togglz.version>
<bouncycastle.version>1.61</bouncycastle.version>
+ <onap.logging.version>1.5.0</onap.logging.version>
</properties>
<dependencyManagement>
diff --git a/openecomp-be/api/openecomp-sdc-rest-webapp/action-library-rest/action-library-rest-services/src/main/java/org/openecomp/sdcrests/action/rest/services/ActionsImpl.java b/openecomp-be/api/openecomp-sdc-rest-webapp/action-library-rest/action-library-rest-services/src/main/java/org/openecomp/sdcrests/action/rest/services/ActionsImpl.java
index 7154d997c7..12a3aa564a 100644
--- a/openecomp-be/api/openecomp-sdc-rest-webapp/action-library-rest/action-library-rest-services/src/main/java/org/openecomp/sdcrests/action/rest/services/ActionsImpl.java
+++ b/openecomp-be/api/openecomp-sdc-rest-webapp/action-library-rest/action-library-rest-services/src/main/java/org/openecomp/sdcrests/action/rest/services/ActionsImpl.java
@@ -22,6 +22,8 @@
package org.openecomp.sdcrests.action.rest.services;
+import static org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus.COMPLETE;
+import static org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus.ERROR;
import static org.openecomp.sdc.action.ActionConstants.ACTION_REQUEST_PARAM_NAME;
import static org.openecomp.sdc.action.ActionConstants.ACTION_REQUEST_PARAM_SUPPORTED_COMPONENTS;
import static org.openecomp.sdc.action.ActionConstants.ACTION_REQUEST_PARAM_SUPPORTED_MODELS;
@@ -113,7 +115,6 @@ import org.openecomp.sdc.action.ActionManager;
import org.openecomp.sdc.action.errors.ActionErrorConstants;
import org.openecomp.sdc.action.errors.ActionException;
import org.openecomp.sdc.action.logging.CategoryLogLevel;
-import org.openecomp.sdc.action.logging.StatusCode;
import org.openecomp.sdc.action.types.Action;
import org.openecomp.sdc.action.types.ActionArtifact;
import org.openecomp.sdc.action.types.ActionArtifactProtection;
@@ -216,16 +217,16 @@ public class ActionsImpl implements Actions {
responseList = getActionsByInvId(servletRequest, invariantID);
} else {
Response response = getActionByUUID(servletRequest, invariantID, actionUUID);
- actionLogPostProcessor(StatusCode.COMPLETE, true);
+ actionLogPostProcessor(COMPLETE, true);
return response;
}
} catch (ActionException exception) {
- actionLogPostProcessor(StatusCode.ERROR, exception.getErrorCode(), exception.getDescription(), true);
+ actionLogPostProcessor(ERROR, exception.getErrorCode(), exception.getDescription(), true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, exception.getErrorCode(), exception.getDescription());
LOGGER.error("");
throw exception;
} catch (Exception exception) {
- actionLogPostProcessor(StatusCode.ERROR, true);
+ actionLogPostProcessor(ERROR, true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, ACTION_INTERNAL_SERVER_ERR_CODE,
ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
LOGGER.error("");
@@ -233,7 +234,7 @@ public class ActionsImpl implements Actions {
}
LOGGER.debug(" exit getActionsByActionInvariantUuId ");
- actionLogPostProcessor(StatusCode.COMPLETE, true);
+ actionLogPostProcessor(COMPLETE, true);
return Response.ok(responseList).build();
}
@@ -296,15 +297,15 @@ public class ActionsImpl implements Actions {
response.setActionList(null);
response.setComponentList(openEcompComponents);
LOGGER.debug(" exit getEcompComponents ");
- actionLogPostProcessor(StatusCode.COMPLETE, true);
+ actionLogPostProcessor(COMPLETE, true);
return Response.ok(response).build();
} catch (ActionException exception) {
- actionLogPostProcessor(StatusCode.ERROR, exception.getErrorCode(), exception.getDescription(), true);
+ actionLogPostProcessor(ERROR, exception.getErrorCode(), exception.getDescription(), true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, exception.getErrorCode(), exception.getDescription());
LOGGER.error("");
throw exception;
} catch (Exception exception) {
- actionLogPostProcessor(StatusCode.ERROR, true);
+ actionLogPostProcessor(ERROR, true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, ACTION_INTERNAL_SERVER_ERR_CODE,
ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
LOGGER.error("");
@@ -323,7 +324,7 @@ public class ActionsImpl implements Actions {
if (StringUtils.isEmpty(servletRequest.getQueryString())) {
response = getAllActions(servletRequest);
LOGGER.debug(" exit getFilteredActions ");
- actionLogPostProcessor(StatusCode.COMPLETE, true);
+ actionLogPostProcessor(COMPLETE, true);
return response;
}
validateNoOfFilterParamsExactly1(noOfFilterParams);
@@ -342,15 +343,15 @@ public class ActionsImpl implements Actions {
}
LOGGER.debug(" exit getFilteredActions ");
- actionLogPostProcessor(StatusCode.COMPLETE, true);
+ actionLogPostProcessor(COMPLETE, true);
return response;
} catch (ActionException exception) {
- actionLogPostProcessor(StatusCode.ERROR, exception.getErrorCode(), exception.getDescription(), true);
+ actionLogPostProcessor(ERROR, exception.getErrorCode(), exception.getDescription(), true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, exception.getErrorCode(), exception.getDescription());
LOGGER.error("");
throw exception;
} catch (Exception exception) {
- actionLogPostProcessor(StatusCode.ERROR, true);
+ actionLogPostProcessor(ERROR, true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, ACTION_INTERNAL_SERVER_ERR_CODE,
ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
LOGGER.error("");
@@ -409,16 +410,16 @@ public class ActionsImpl implements Actions {
} else {
checkAndThrowError(errorMap);
}
- actionLogPostProcessor(StatusCode.COMPLETE, true);
+ actionLogPostProcessor(COMPLETE, true);
LOGGER.debug(" exit API createAction with ActionInvariantUUID= " + MDC.get(SERVICE_INSTANCE_ID));
return Response.ok(actionResponseDTO).build();
} catch (ActionException exception) {
- actionLogPostProcessor(StatusCode.ERROR, exception.getErrorCode(), exception.getDescription(), true);
+ actionLogPostProcessor(ERROR, exception.getErrorCode(), exception.getDescription(), true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, exception.getErrorCode(), exception.getDescription());
LOGGER.error("");
throw exception;
} catch (Exception exception) {
- actionLogPostProcessor(StatusCode.ERROR, true);
+ actionLogPostProcessor(ERROR, true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, ACTION_INTERNAL_SERVER_ERR_CODE,
ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
LOGGER.error(exception.getMessage());
@@ -448,14 +449,14 @@ public class ActionsImpl implements Actions {
} else {
checkAndThrowError(errorMap);
}
- actionLogPostProcessor(StatusCode.COMPLETE, true);
+ actionLogPostProcessor(COMPLETE, true);
} catch (ActionException exception) {
- actionLogPostProcessor(StatusCode.ERROR, exception.getErrorCode(), exception.getDescription(), true);
+ actionLogPostProcessor(ERROR, exception.getErrorCode(), exception.getDescription(), true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, exception.getErrorCode(), exception.getDescription());
LOGGER.error("");
throw exception;
} catch (Exception exception) {
- actionLogPostProcessor(StatusCode.ERROR, true);
+ actionLogPostProcessor(ERROR, true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, ACTION_INTERNAL_SERVER_ERR_CODE,
ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
LOGGER.error(exception.getMessage());
@@ -477,15 +478,15 @@ public class ActionsImpl implements Actions {
checkAndThrowError(errorMap);
}
- actionLogPostProcessor(StatusCode.COMPLETE, true);
+ actionLogPostProcessor(COMPLETE, true);
return Response.ok(new ActionResponseDto()).build();
} catch (ActionException exception) {
- actionLogPostProcessor(StatusCode.ERROR, exception.getErrorCode(), exception.getDescription(), true);
+ actionLogPostProcessor(ERROR, exception.getErrorCode(), exception.getDescription(), true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, exception.getErrorCode(), exception.getDescription());
LOGGER.error(MDC.get(ERROR_DESCRIPTION));
throw exception;
} catch (Exception exception) {
- actionLogPostProcessor(StatusCode.ERROR, true);
+ actionLogPostProcessor(ERROR, true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, ACTION_INTERNAL_SERVER_ERR_CODE,
ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
LOGGER.error(exception.getMessage());
@@ -539,14 +540,14 @@ public class ActionsImpl implements Actions {
ActionResponseDto actionResponseDTO = new ActionResponseDto();
new MapActionToActionResponseDto().doMapping(action, actionResponseDTO);
response = Response.ok(actionResponseDTO).build();
- actionLogPostProcessor(StatusCode.COMPLETE, true);
+ actionLogPostProcessor(COMPLETE, true);
} catch (ActionException exception) {
- actionLogPostProcessor(StatusCode.ERROR, exception.getErrorCode(), exception.getDescription(), true);
+ actionLogPostProcessor(ERROR, exception.getErrorCode(), exception.getDescription(), true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, exception.getErrorCode(), exception.getDescription());
LOGGER.error(MDC.get(ERROR_DESCRIPTION));
throw exception;
} catch (Exception exception) {
- actionLogPostProcessor(StatusCode.ERROR, true);
+ actionLogPostProcessor(ERROR, true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, ACTION_INTERNAL_SERVER_ERR_CODE,
ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
LOGGER.error(exception.getMessage());
@@ -576,16 +577,16 @@ public class ActionsImpl implements Actions {
response =
uploadArtifactInternal(actionInvariantUUID, artifactName, artifactLabel, artifactCategory,
artifactDescription, artifactProtection, checksum, artifactToUpload, servletRequest);
- actionLogPostProcessor(StatusCode.COMPLETE, true);
+ actionLogPostProcessor(COMPLETE, true);
LOGGER.debug("exiting uploadArtifact with actionInvariantUuId= " + actionInvariantUUID +
"artifactName= " + artifactName);
} catch (ActionException exception) {
- actionLogPostProcessor(StatusCode.ERROR, exception.getErrorCode(), exception.getDescription(), true);
+ actionLogPostProcessor(ERROR, exception.getErrorCode(), exception.getDescription(), true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, exception.getErrorCode(), exception.getDescription());
LOGGER.error(MDC.get(ERROR_DESCRIPTION));
throw exception;
} catch (Exception exception) {
- actionLogPostProcessor(StatusCode.ERROR, true);
+ actionLogPostProcessor(ERROR, true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, ACTION_INTERNAL_SERVER_ERR_CODE,
ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
LOGGER.error(exception.getMessage());
@@ -681,14 +682,14 @@ public class ActionsImpl implements Actions {
" entering downloadArtifact with actionUUID= " + actionUUID + " and artifactUUID= " +
artifactUUID);
response = downloadArtifactInternal(actionUUID, artifactUUID, servletRequest);
- actionLogPostProcessor(StatusCode.COMPLETE, true);
+ actionLogPostProcessor(COMPLETE, true);
} catch (ActionException exception) {
- actionLogPostProcessor(StatusCode.ERROR, exception.getErrorCode(), exception.getDescription(), true);
+ actionLogPostProcessor(ERROR, exception.getErrorCode(), exception.getDescription(), true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, exception.getErrorCode(), exception.getDescription());
LOGGER.error(MDC.get(ERROR_DESCRIPTION));
throw exception;
} catch (Exception exception) {
- actionLogPostProcessor(StatusCode.ERROR, true);
+ actionLogPostProcessor(ERROR, true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, ACTION_INTERNAL_SERVER_ERR_CODE,
ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
LOGGER.error(exception.getMessage());
@@ -729,14 +730,14 @@ public class ActionsImpl implements Actions {
response = deleteArtifactInternal(actionInvariantUUID, artifactUUID, servletRequest);
LOGGER.debug(" exit deleteArtifact with actionInvariantUuId= " + actionInvariantUUID +
" and artifactUUID= " + artifactUUID);
- actionLogPostProcessor(StatusCode.COMPLETE, true);
+ actionLogPostProcessor(COMPLETE, true);
} catch (ActionException exception) {
- actionLogPostProcessor(StatusCode.ERROR, exception.getErrorCode(), exception.getDescription(), true);
+ actionLogPostProcessor(ERROR, exception.getErrorCode(), exception.getDescription(), true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, exception.getErrorCode(), exception.getDescription());
LOGGER.error(MDC.get(ERROR_DESCRIPTION));
throw exception;
} catch (Exception exception) {
- actionLogPostProcessor(StatusCode.ERROR, true);
+ actionLogPostProcessor(ERROR, true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, ACTION_INTERNAL_SERVER_ERR_CODE,
ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
LOGGER.error(exception.getMessage());
@@ -780,14 +781,14 @@ public class ActionsImpl implements Actions {
updateArtifactInternal(actionInvariantUUID, artifactUUID, artifactName, artifactLabel,
artifactCategory, artifactDescription, artifactProtection, checksum, artifactToUpdate,
servletRequest);
- actionLogPostProcessor(StatusCode.COMPLETE, true);
+ actionLogPostProcessor(COMPLETE, true);
} catch (ActionException exception) {
- actionLogPostProcessor(StatusCode.ERROR, exception.getErrorCode(), exception.getDescription(), true);
+ actionLogPostProcessor(ERROR, exception.getErrorCode(), exception.getDescription(), true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, exception.getErrorCode(), exception.getDescription());
LOGGER.error(MDC.get(ERROR_DESCRIPTION));
throw exception;
} catch (Exception exception) {
- actionLogPostProcessor(StatusCode.ERROR, true);
+ actionLogPostProcessor(ERROR, true);
actionErrorLogProcessor(CategoryLogLevel.ERROR, ACTION_INTERNAL_SERVER_ERR_CODE,
ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG);
LOGGER.error(exception.getMessage());
@@ -1187,7 +1188,7 @@ public class ActionsImpl implements Actions {
MDC.put(PARTNER_NAME, servletRequest.getRemoteUser());
MDC.put(INSTANCE_UUID, MDC_ASDC_INSTANCE_UUID);
MDC.put(SERVICE_METRIC_BEGIN_TIMESTAMP, String.valueOf(System.currentTimeMillis()));
- MDC.put(STATUS_CODE, StatusCode.COMPLETE.name());
+ MDC.put(STATUS_CODE, COMPLETE.name());
MDC.put(SERVICE_NAME, requestType.name());
MDC.put(CLIENT_IP, MDC.get(REMOTE_HOST));
MDC.put(SERVICE_INSTANCE_ID, actionInvariantId);
diff --git a/openecomp-be/api/openecomp-sdc-rest-webapp/onboarding-rest-war/src/main/webapp/WEB-INF/beans-services.xml b/openecomp-be/api/openecomp-sdc-rest-webapp/onboarding-rest-war/src/main/webapp/WEB-INF/beans-services.xml
index 11c2cef4f3..f2811e739f 100644
--- a/openecomp-be/api/openecomp-sdc-rest-webapp/onboarding-rest-war/src/main/webapp/WEB-INF/beans-services.xml
+++ b/openecomp-be/api/openecomp-sdc-rest-webapp/onboarding-rest-war/src/main/webapp/WEB-INF/beans-services.xml
@@ -90,8 +90,8 @@
<bean class="org.openecomp.sdcrests.errors.DefaultExceptionMapper"/>
<bean class="org.openecomp.sdcrests.errors.ZusammenExceptionMapper"/>
<bean class="org.openecomp.sdc.logging.servlet.jaxrs.LoggingRequestFilter">
- <property name="requestIdHeaders" value="X-ECOMP-RequestID,X-ONAP-RequestID"/>
- <property name="partnerNameHeaders" value="USER_ID"/>
+ <property name="requestIdHeaders" value="X-ONAP-RequestID,X-RequestID,X-TransactionId,X-ECOMP-RequestID"/>
+ <property name="partnerNameHeaders" value="USER_ID,X-ONAP-PartnerName,User-Agent"/>
</bean>
<bean class="org.openecomp.sdc.logging.servlet.jaxrs.LoggingResponseFilter"/>
</jaxrs:providers>
diff --git a/openecomp-be/backend/openecomp-sdc-action-manager/src/main/java/org/openecomp/sdc/action/impl/ActionManagerImpl.java b/openecomp-be/backend/openecomp-sdc-action-manager/src/main/java/org/openecomp/sdc/action/impl/ActionManagerImpl.java
index a317d41a50..bc7a6f4f64 100644
--- a/openecomp-be/backend/openecomp-sdc-action-manager/src/main/java/org/openecomp/sdc/action/impl/ActionManagerImpl.java
+++ b/openecomp-be/backend/openecomp-sdc-action-manager/src/main/java/org/openecomp/sdc/action/impl/ActionManagerImpl.java
@@ -88,13 +88,7 @@ import org.openecomp.sdc.action.dao.types.ActionArtifactEntity;
import org.openecomp.sdc.action.dao.types.ActionEntity;
import org.openecomp.sdc.action.errors.ActionErrorConstants;
import org.openecomp.sdc.action.errors.ActionException;
-import org.openecomp.sdc.action.logging.StatusCode;
-import org.openecomp.sdc.action.types.Action;
-import org.openecomp.sdc.action.types.ActionArtifact;
-import org.openecomp.sdc.action.types.ActionArtifactProtection;
-import org.openecomp.sdc.action.types.ActionStatus;
-import org.openecomp.sdc.action.types.ActionSubOperation;
-import org.openecomp.sdc.action.types.OpenEcompComponent;
+import org.openecomp.sdc.action.types.*;
import org.openecomp.sdc.common.errors.CoreException;
import org.openecomp.sdc.logging.api.Logger;
import org.openecomp.sdc.logging.api.LoggerFactory;
@@ -111,6 +105,15 @@ import org.openecomp.sdc.versioning.types.VersionInfo;
import org.openecomp.sdc.versioning.types.VersionableEntityAction;
import org.slf4j.MDC;
+import java.util.*;
+
+import static org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus.COMPLETE;
+import static org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus.ERROR;
+import static org.openecomp.sdc.action.ActionConstants.*;
+import static org.openecomp.sdc.action.errors.ActionErrorConstants.*;
+import static org.openecomp.sdc.action.util.ActionUtil.*;
+import static org.openecomp.sdc.versioning.dao.types.Version.VERSION_STRING_VIOLATION_MSG;
+
/**
* Manager Implementation for {@link ActionManager Action Library Operations}
* <br>
@@ -272,7 +275,7 @@ public class ActionManagerImpl implements ActionManager {
"entering deleteAction with actionInvariantUuId = " + actionInvariantUuId + " and user = " + user);
actionLogPreProcessor(ActionSubOperation.DELETE_ACTION, TARGET_ENTITY_API);
versioningManager.delete(ACTION_VERSIONABLE_TYPE, actionInvariantUuId, user);
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
actionDao.deleteAction(actionInvariantUuId);
} catch (CoreException ce) {
@@ -295,12 +298,12 @@ public class ActionManagerImpl implements ActionManager {
try {
actionLogPreProcessor(ActionSubOperation.VALIDATE_ACTION_UNIQUE_NAME, TARGET_ENTITY_API);
uniqueValueUtil.validateUniqueValue(ActionConstants.UniqueValues.ACTION_NAME, action.getName());
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
} catch (CoreException exception) {
String errorDesc = String.format(ACTION_ENTITY_UNIQUE_VALUE_MSG, ActionConstants.UniqueValues.ACTION_NAME,
action.getName());
log.error(errorDesc, exception);
- actionLogPostProcessor(StatusCode.ERROR, ACTION_ENTITY_UNIQUE_VALUE_ERROR, errorDesc, false);
+ actionLogPostProcessor(ERROR, ACTION_ENTITY_UNIQUE_VALUE_ERROR, errorDesc, false);
throw new ActionException(ACTION_ENTITY_UNIQUE_VALUE_ERROR, errorDesc);
} finally {
log.metrics("");
@@ -312,7 +315,7 @@ public class ActionManagerImpl implements ActionManager {
actionLogPreProcessor(ActionSubOperation.CREATE_ACTION_VERSION, TARGET_ENTITY_API);
Version version = versioningManager.create(ACTION_VERSIONABLE_TYPE, action.getActionInvariantUuId(), user);
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
action.setVersion(version.toString());
@@ -322,7 +325,7 @@ public class ActionManagerImpl implements ActionManager {
actionLogPreProcessor(ActionSubOperation.CREATE_ACTION_UNIQUE_VALUE, TARGET_ENTITY_API);
uniqueValueUtil.createUniqueValue(ActionConstants.UniqueValues.ACTION_NAME, action.getName());
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
return action;
@@ -346,7 +349,7 @@ public class ActionManagerImpl implements ActionManager {
actionLogPreProcessor(ActionSubOperation.GET_ACTION_VERSION, TARGET_ENTITY_API);
VersionInfo versionInfo = versioningManager.getEntityVersionInfo(ACTION_VERSIONABLE_TYPE, invariantUuId,
user, VersionableEntityAction.Write);
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
Version activeVersion = versionInfo.getActiveVersion();
@@ -382,7 +385,7 @@ public class ActionManagerImpl implements ActionManager {
log.debug("entering checkout for Action with invariantUUID= " + invariantUuId + BY_USER + user);
actionLogPreProcessor(ActionSubOperation.CHECKOUT_ACTION, TARGET_ENTITY_API);
version = versioningManager.checkout(ACTION_VERSIONABLE_TYPE, invariantUuId, user);
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
actionEntity = updateUniqueIdForVersion(invariantUuId, version, ActionStatus.Locked.name(), user);
@@ -393,7 +396,7 @@ public class ActionManagerImpl implements ActionManager {
actionLogPreProcessor(ActionSubOperation.GET_ACTION_VERSION, TARGET_ENTITY_DB);
VersionInfoEntity versionInfoEntity = versionInfoDao
.get(new VersionInfoEntity(ACTION_VERSIONABLE_TYPE, invariantUuId));
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
String checkoutUser = versionInfoEntity.getCandidate()
.getUser();
@@ -427,7 +430,7 @@ public class ActionManagerImpl implements ActionManager {
// Get list of uploaded artifacts in this checked out version
VersionInfoEntity versionInfoEntity = versionInfoDao
.get(new VersionInfoEntity(ACTION_VERSIONABLE_TYPE, invariantUuId));
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
if (versionInfoEntity == null) {
throw new CoreException(new EntityNotExistErrorBuilder(ACTION_VERSIONABLE_TYPE, invariantUuId).build());
@@ -443,27 +446,27 @@ public class ActionManagerImpl implements ActionManager {
actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_VERSION, TARGET_ENTITY_DB);
Action action = actionDao.get(new ActionEntity(invariantUuId, activeVersion))
.toDto();
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
// Perform undo checkout on the action
actionLogPreProcessor(ActionSubOperation.UNDO_CHECKOUT_ACTION, TARGET_ENTITY_API);
version = versioningManager.undoCheckout(ACTION_VERSIONABLE_TYPE, invariantUuId, user);
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
if (version.equals(new Version(0, 0))) {
actionLogPreProcessor(ActionSubOperation.DELETE_UNIQUEVALUE, TARGET_ENTITY_API);
UniqueValueUtil uniqueValueUtil = new UniqueValueUtil(uniqueValueDao);
uniqueValueUtil.deleteUniqueValue(ActionConstants.UniqueValues.ACTION_NAME, action.getName());
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
actionLogPreProcessor(ActionSubOperation.DELETE_ACTIONVERSION, TARGET_ENTITY_DB);
// Added for the case where Create->Undo_Checkout->Checkout
// should not get the action
versionInfoDao.delete(new VersionInfoEntity(ACTION_VERSIONABLE_TYPE, invariantUuId));
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
}
@@ -476,7 +479,7 @@ public class ActionManagerImpl implements ActionManager {
getEffectiveVersion(activeVersion.toString()));
actionLogPreProcessor(ActionSubOperation.DELETE_ARTIFACT, TARGET_ENTITY_DB);
actionArtifactDao.delete(artifactDeleteEntity);
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
}
}
@@ -503,7 +506,7 @@ public class ActionManagerImpl implements ActionManager {
log.debug("entering checkin for Action with invariantUUID= " + invariantUuId + BY_USER + user);
actionLogPreProcessor(ActionSubOperation.CHECKIN_ACTION, TARGET_ENTITY_API);
version = versioningManager.checkin(ACTION_VERSIONABLE_TYPE, invariantUuId, user, null);
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
actionEntity = updateStatusForVersion(invariantUuId, version, ActionStatus.Available.name(), user);
} catch (CoreException exception) {
@@ -530,7 +533,7 @@ public class ActionManagerImpl implements ActionManager {
log.debug("entering submit for Action with invariantUUID= " + invariantUuId + BY_USER + user);
actionLogPreProcessor(ActionSubOperation.SUBMIT_ACTION, TARGET_ENTITY_API);
version = versioningManager.submit(ACTION_VERSIONABLE_TYPE, invariantUuId, user, null);
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
actionEntity = updateUniqueIdForVersion(invariantUuId, version, ActionStatus.Final.name(), user);
} catch (CoreException exception) {
@@ -601,13 +604,13 @@ public class ActionManagerImpl implements ActionManager {
actionLogPreProcessor(ActionSubOperation.GET_ACTION_VERSION, TARGET_ENTITY_DB);
VersionInfo versionInfo = versioningManager.getEntityVersionInfo(ACTION_VERSIONABLE_TYPE,
actionInvariantUuId, user, VersionableEntityAction.Write);
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
Version activeVersion = versionInfo.getActiveVersion();
actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_ACTIONINVID, TARGET_ENTITY_DB);
Action action = actionDao.get(new ActionEntity(actionInvariantUuId, activeVersion))
.toDto();
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
String artifactUuId = generateActionArtifactUuId(action, artifact.getArtifactName());
// Check for Unique document name
@@ -675,7 +678,7 @@ public class ActionManagerImpl implements ActionManager {
actionEntity.setData(data);
actionLogPreProcessor(ActionSubOperation.UPDATE_ACTION, TARGET_ENTITY_DB);
actionDao.update(actionEntity);
- actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
// delete Artifact if it's upload and delete action on same checkout
// version
@@ -688,7 +691,7 @@ public class ActionManagerImpl implements ActionManager {
actionLogPreProcessor(ActionSubOperation.DELETE_ACTION_ARTIFACT, TARGET_ENTITY_DB);
actionArtifactDao.delete(artifactDeleteEntity);
}
- actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
}
@@ -716,13 +719,13 @@ public class ActionManagerImpl implements ActionManager {
actionLogPreProcessor(ActionSubOperation.GET_ACTION_VERSION, TARGET_ENTITY_API);
VersionInfo versionInfo = versioningManager.getEntityVersionInfo(ACTION_VERSIONABLE_TYPE,
actionInvariantUuId, user, VersionableEntityAction.Write);
- actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
Version activeVersion = versionInfo.getActiveVersion();
actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_ACTIONINVID, TARGET_ENTITY_DB);
Action action = actionDao.get(new ActionEntity(actionInvariantUuId, activeVersion))
.toDto();
- actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
List<ActionArtifact> actionArtifacts = action.getArtifacts();
ActionArtifact artifactMetadataByUuId = getArtifactMetadataFromAction(actionArtifacts,
@@ -903,7 +906,7 @@ public class ActionManagerImpl implements ActionManager {
actionLogPreProcessor(ActionSubOperation.GET_VERSIONINFO_FOR_ALL_ACTIONS, TARGET_ENTITY_API);
Map<String, VersionInfo> actionVersionMap = versioningManager.listEntitiesVersionInfo(ACTION_VERSIONABLE_TYPE,
"", VersionableEntityAction.Read);
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
for (Action action : actions) {
if (action.getStatus() == ActionStatus.Deleted) {
@@ -1071,7 +1074,7 @@ public class ActionManagerImpl implements ActionManager {
actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_VERSION, TARGET_ENTITY_DB);
entity = actionDao
.get(new ActionEntity(invariantUuId != null ? invariantUuId.toUpperCase() : null, version));
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
}
log.debug("exit getActionsEntityByVersion with invariantUuId= " + invariantUuId + AND_VERSION + version);
@@ -1128,7 +1131,7 @@ public class ActionManagerImpl implements ActionManager {
actionEntity.setTimestamp(getCurrentTimeStampUtc());
actionLogPreProcessor(ActionSubOperation.UPDATE_ACTION, TARGET_ENTITY_DB);
actionDao.update(actionEntity);
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
}
@@ -1164,7 +1167,7 @@ public class ActionManagerImpl implements ActionManager {
actionEntity.setTimestamp(getCurrentTimeStampUtc());
actionLogPreProcessor(ActionSubOperation.UPDATE_ACTION, TARGET_ENTITY_DB);
actionDao.update(actionEntity);
- actionLogPostProcessor(StatusCode.COMPLETE);
+ actionLogPostProcessor(COMPLETE);
log.metrics("");
}
log.debug("exit updateStatusForVersion with invariantUuId= " + invariantUuId + AND_VERSION + version
diff --git a/openecomp-be/backend/openecomp-sdc-security-util/pom.xml b/openecomp-be/backend/openecomp-sdc-security-util/pom.xml
index 3b2fd1da53..78fa00a17b 100644
--- a/openecomp-be/backend/openecomp-sdc-security-util/pom.xml
+++ b/openecomp-be/backend/openecomp-sdc-security-util/pom.xml
@@ -88,6 +88,12 @@
<version>1.7.4</version>
<scope>test</scope>
</dependency>
+
+ <dependency>
+ <groupId>org.onap.logging-analytics</groupId>
+ <artifactId>logging-slf4j</artifactId>
+ <version>1.4.0</version>
+ </dependency>
</dependencies>
</project> \ No newline at end of file
diff --git a/openecomp-be/backend/openecomp-sdc-security-util/src/main/java/org/openecomp/sdc/securityutil/filters/SessionValidationFilter.java b/openecomp-be/backend/openecomp-sdc-security-util/src/main/java/org/openecomp/sdc/securityutil/filters/SessionValidationFilter.java
index 1684df4017..de235bff89 100644
--- a/openecomp-be/backend/openecomp-sdc-security-util/src/main/java/org/openecomp/sdc/securityutil/filters/SessionValidationFilter.java
+++ b/openecomp-be/backend/openecomp-sdc-security-util/src/main/java/org/openecomp/sdc/securityutil/filters/SessionValidationFilter.java
@@ -20,11 +20,14 @@
package org.openecomp.sdc.securityutil.filters;
+import org.onap.logging.ref.slf4j.ONAPLogConstants;
import org.openecomp.sdc.securityutil.AuthenticationCookieUtils;
import org.openecomp.sdc.securityutil.CipherUtilException;
import org.openecomp.sdc.securityutil.ISessionValidationFilterConfiguration;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import org.slf4j.MDC;
+import org.apache.commons.lang.StringUtils;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
@@ -38,6 +41,7 @@ import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.Arrays;
import java.util.List;
+import java.util.UUID;
import java.util.concurrent.TimeUnit;
import java.util.stream.Collectors;
@@ -46,6 +50,19 @@ public abstract class SessionValidationFilter implements Filter {
private ISessionValidationFilterConfiguration filterConfiguration;
private List<String> excludedUrls;
+ private static final String REQUEST_ID = ONAPLogConstants.MDCs.REQUEST_ID;
+ private static final String ONAP_REQUEST_ID_HEADER = ONAPLogConstants.Headers.REQUEST_ID;
+ private static final String REQUEST_ID_HEADER = "X-RequestID";
+ private static final String TRANSACTION_ID_HEADER = "X-TransactionId";
+ private static final String ECOMP_REQUEST_ID_HEADER = "X-ECOMP-RequestID";
+
+ private static final String PARTNER_NAME = ONAPLogConstants.MDCs.PARTNER_NAME;
+ private static final String USER_ID_HEADER = "USER_ID";
+ private static final String ONAP_PARTNER_NAME_HEADER = ONAPLogConstants.Headers.PARTNER_NAME;
+ private static final String USER_AGENT_HEADER = "User-Agent";
+ private static final String UNKNOWN = "UNKNOWN";
+
+
public abstract ISessionValidationFilterConfiguration getFilterConfiguration();
protected abstract Cookie addRoleToCookie(Cookie updatedCookie);
protected abstract boolean isRoleValid(Cookie cookie);
@@ -61,51 +78,45 @@ public abstract class SessionValidationFilter implements Filter {
final HttpServletRequest httpRequest = (HttpServletRequest) servletRequest;
final HttpServletResponse httpResponse = (HttpServletResponse) servletResponse;
- long starTime = System.nanoTime();
+ long startTime = System.nanoTime();
+ fillMDCFromHeaders(httpRequest);
log.debug("SessionValidationFilter: Validation started, received request with URL {}", httpRequest.getRequestURL());
// request preprocessing
- boolean isContinueProcessing = preProcessingRequest(servletRequest, servletResponse, filterChain, httpRequest, httpResponse);
+ boolean isContinueProcessing = preProcessingRequest(servletRequest, servletResponse, filterChain, httpRequest, httpResponse, startTime);
List<Cookie> cookies = null;
+ Cookie extractedCookie = null;
// request processing
if (isContinueProcessing) {
cookies = extractAuthenticationCookies(httpRequest.getCookies());
- isContinueProcessing = processRequest(httpRequest, httpResponse, cookies.get(0));
+ extractedCookie = cookies.get(0);
+ isContinueProcessing = processRequest(httpRequest, httpResponse, extractedCookie);
}
// response processing
if(isContinueProcessing){
log.debug("SessionValidationFilter: Cookie from request {} is valid, passing request to session extension ...", httpRequest.getRequestURL());
- Cookie updatedCookie = processResponse(cookies.get(cookies.size()-1));
-
+ Cookie updatedCookie = processResponse(extractedCookie);
cleanResponceFromLeftoverCookies(httpResponse, cookies);
-
- // Use responce wrapper if servlet remove Cookie header from responce
-// OutputStream out = httpResponse.getOutputStream();
-// ResponceWrapper responceWrapper = new ResponceWrapper(httpResponse);
-
log.debug("SessionValidationFilter: request {} passed all validations, passing request to endpoint ...", httpRequest.getRequestURL());
httpResponse.addCookie(updatedCookie);
+ long durationSec = TimeUnit.NANOSECONDS.toSeconds(System.nanoTime() - startTime);
+ long durationMil = TimeUnit.NANOSECONDS.toMillis(System.nanoTime() - startTime);
+ log.debug("SessionValidationFilter: Validation ended, running time for URL {} is: {} seconds {} miliseconds", httpRequest.getPathInfo(), durationSec, durationMil);
filterChain.doFilter(servletRequest, httpResponse);
-
- // Use responce wrapper if servlet remove Cookie header from responce
-// responceWrapper.addCookie(updatedCookie);
-// httpResponse.setContentLength(responceWrapper.getData().length);
-// out.write(responceWrapper.getData());
-// out.close();
}
- long durationSec = TimeUnit.NANOSECONDS.toSeconds(System.nanoTime() - starTime);
- long durationMil = TimeUnit.NANOSECONDS.toMillis(System.nanoTime() - starTime);
- log.debug("SessionValidationFilter: Validation ended, running time for URL {} is: {} seconds {} miliseconds", httpRequest.getPathInfo(), durationSec, durationMil);
}
- private boolean preProcessingRequest(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain, HttpServletRequest httpRequest, HttpServletResponse httpResponse) throws IOException, ServletException {
+ private boolean preProcessingRequest(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain, HttpServletRequest httpRequest, HttpServletResponse httpResponse, long startTime) throws IOException, ServletException {
boolean isPreProcessingSucceeded = true;
if (isUrlFromWhiteList(httpRequest)) {
log.debug("SessionValidationFilter: URL {} excluded from access validation , passing request to endpoint ... ", httpRequest.getRequestURL());
+ long durationSec = TimeUnit.NANOSECONDS.toSeconds(System.nanoTime() - startTime);
+ long durationMil = TimeUnit.NANOSECONDS.toMillis(System.nanoTime() - startTime);
+ log.debug("SessionValidationFilter: Validation ended, running time for URL {} is: {} seconds {} miliseconds", httpRequest.getPathInfo(), durationSec, durationMil);
filterChain.doFilter(servletRequest, servletResponse);
isPreProcessingSucceeded = false;
@@ -207,6 +218,43 @@ public abstract class SessionValidationFilter implements Filter {
}
}
+ public static void fillMDCFromHeaders(HttpServletRequest httpServletRequest) {
+ fillRequestIdFromHeader(httpServletRequest);
+ fillPartnerNameFromHeader(httpServletRequest);
+
+ }
+
+ private static void fillRequestIdFromHeader(HttpServletRequest httpServletRequest){
+ if (MDC.get(REQUEST_ID) == null) {
+ if (StringUtils.isNotEmpty(httpServletRequest.getHeader(ONAP_REQUEST_ID_HEADER))) {
+ MDC.put(REQUEST_ID, httpServletRequest.getHeader(ONAP_REQUEST_ID_HEADER));
+ } else if (StringUtils.isNotEmpty(httpServletRequest.getHeader(REQUEST_ID_HEADER))) {
+ MDC.put(REQUEST_ID, httpServletRequest.getHeader(REQUEST_ID_HEADER));
+ } else if (StringUtils.isNotEmpty(httpServletRequest.getHeader(TRANSACTION_ID_HEADER))) {
+ MDC.put(REQUEST_ID, httpServletRequest.getHeader(TRANSACTION_ID_HEADER));
+ } else if (StringUtils.isNotEmpty(httpServletRequest.getHeader(ECOMP_REQUEST_ID_HEADER))) {
+ MDC.put(REQUEST_ID, httpServletRequest.getHeader(ECOMP_REQUEST_ID_HEADER));
+ } else {
+ MDC.put(REQUEST_ID, UUID.randomUUID().toString());
+ }
+ }
+ }
+
+ private static void fillPartnerNameFromHeader(HttpServletRequest httpServletRequest){
+ if (MDC.get(PARTNER_NAME) == null) {
+ if (StringUtils.isNotEmpty(httpServletRequest.getHeader(USER_ID_HEADER))) {
+ MDC.put(PARTNER_NAME, httpServletRequest.getHeader(USER_ID_HEADER));
+ } else if (StringUtils.isNotEmpty(httpServletRequest.getHeader(ONAP_PARTNER_NAME_HEADER))) {
+ MDC.put(PARTNER_NAME, httpServletRequest.getHeader(ONAP_PARTNER_NAME_HEADER));
+ } else if (StringUtils.isNotEmpty(httpServletRequest.getHeader(USER_AGENT_HEADER))) {
+ MDC.put(PARTNER_NAME, httpServletRequest.getHeader(USER_AGENT_HEADER));
+ } else {
+ MDC.put(PARTNER_NAME, UNKNOWN);
+ }
+ }
+ }
+
+
@Override
public void destroy() {
diff --git a/openecomp-be/dist/sdc-onboard-backend-docker/artifacts/chef-repo/cookbooks/sdc-onboard-backend/files/default/logback.xml b/openecomp-be/dist/sdc-onboard-backend-docker/artifacts/chef-repo/cookbooks/sdc-onboard-backend/files/default/logback.xml
index de89c7ef2c..34dd8e3e6c 100644
--- a/openecomp-be/dist/sdc-onboard-backend-docker/artifacts/chef-repo/cookbooks/sdc-onboard-backend/files/default/logback.xml
+++ b/openecomp-be/dist/sdc-onboard-backend-docker/artifacts/chef-repo/cookbooks/sdc-onboard-backend/files/default/logback.xml
@@ -1,308 +1,214 @@
<?xml version="1.0" encoding="UTF-8"?>
<configuration scan="true" scanPeriod="5 seconds">
- <property scope="system" name="ECOMP-component-name" value="SDC" />
- <property scope="system" name="ECOMP-subcomponent-name" value="ONBOARD-BE" />
- <property file="${config.home}/catalog-be/configuration.yaml" />
- <property scope="context" name="enable-all-log" value="false" />
-
- <!-- value used by pattern field list (| - is inter-field separator, || - unavailable or not applicable field value) (m - mandatory, o- optional)-->
- <!--timestamp(m)| requestID(m)| serviceInstanceID(o)| threadID(m)| physicalServerName(o)| serviceName(m)| userID(m)| logLevel(m)| severity(o)| serverIpAddress(m)| serverName(m)| clientIpAddress(o)| className(m)| timer(o)| detailedMessage(o)-->
- <property name="default-log-pattern"
- value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{BeginTimestamp}|%X{EndTimestamp}|%X{uuid}|%X{serviceInstanceID}|%thread|%X{ServerName}|%X{ServiceName}|${ECOMP-subcomponent-name}|%X{userId}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%level|%X{alarmSeverity}|%X{localAddr}|%X{ElapsedTime}|${beFqdn}|%X{remoteAddr}|%logger{35}|%X{timer}|ActivityType=&lt;%M&gt;, Desc=&lt;%msg&gt;%n" />
-
- <property name="auditLoggerPattern" value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestId}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}| ActivityType=&lt;%M&gt;, Desc=&lt;%msg&gt;%n" />
-
- <property name="asdc-debug-log-pattern" value="%d{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestId}|%msg %n"/>
-
- <!-- All log -->
- <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
- <then>
- <appender name="ALL_ROLLING"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log</file>
-
- <rollingPolicy
- class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log.%i</fileNamePattern>
- <minIndex>1</minIndex>
- <maxIndex>10</maxIndex>
- </rollingPolicy>
-
- <triggeringPolicy
- class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
- <maxFileSize>20MB</maxFileSize>
- </triggeringPolicy>
- <encoder>
- <pattern>${default-log-pattern}</pattern>
- </encoder>
- </appender>
-
- <appender name="ASYNC_ALL" class="ch.qos.logback.classic.AsyncAppender">
- <appender-ref ref="ALL_ROLLING" />
- </appender>
- </then>
- </if>
-
- <!-- Error log -->
- <appender name="ERROR_ROLLING"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/error.log
- </file>
-
- <!-- Audit messages filter - deny audit messages -->
- <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
- <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
- <marker>AUDIT_MARKER</marker>
- </evaluator>
- <onMismatch>NEUTRAL</onMismatch>
- <onMatch>DENY</onMatch>
- </filter>
-
- <!-- Transaction messages filter - deny Transaction messages -->
- <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
- <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
- <marker>TRANSACTION_MARKER</marker>
- </evaluator>
- <onMismatch>NEUTRAL</onMismatch>
- <onMatch>DENY</onMatch>
- </filter>
-
- <!-- deny all events with a level below INFO, that is TRACE and DEBUG -->
- <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
- <level>INFO</level>
- </filter>
-
- <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/error.log.%i
- </fileNamePattern>
- <minIndex>1</minIndex>
- <maxIndex>10</maxIndex>
- </rollingPolicy>
-
- <triggeringPolicy
- class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
- <maxFileSize>20MB</maxFileSize>
- </triggeringPolicy>
- <encoder>
- <pattern>${default-log-pattern}</pattern>
- </encoder>
- </appender>
-
- <!-- Debug log -->
- <appender name="DEBUG_ROLLING"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log
- </file>
-
- <!-- No need to deny audit messages - they are INFO only, will be denied
- anyway -->
- <!-- Transaction messages filter - deny Transaction messages, there are
- some DEBUG level messages among them -->
- <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
- <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
- <marker>TRANSACTION_MARKER</marker>
- </evaluator>
- <onMismatch>NEUTRAL</onMismatch>
- <onMatch>DENY</onMatch>
- </filter>
-
- <!-- accept DEBUG and TRACE level -->
- <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
- <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">
- <expression>
- e.level.toInt() &lt;= DEBUG.toInt()
- </expression>
- </evaluator>
- <OnMismatch>DENY</OnMismatch>
- <!--<OnMatch>NEUTRAL</OnMatch>-->
- <OnMatch>ACCEPT</OnMatch>
- </filter>
-
- <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log.%i
- </fileNamePattern>
- <minIndex>1</minIndex>
- <maxIndex>10</maxIndex>
- </rollingPolicy>
-
- <triggeringPolicy
- class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
- <maxFileSize>20MB</maxFileSize>
- </triggeringPolicy>
- <encoder>
- <pattern>${default-log-pattern}</pattern>
- </encoder>
- </appender>
-
-
- <!-- ASDC debug by package-->
- <appender name="PACKAGE_DEBUG_ROLLING"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
- <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug_by_package.log
- </file>
-
- <!-- No need to deny audit messages - they are INFO only, will be denied
- anyway -->
- <!-- Transaction messages filter - deny Transaction messages, there are
- some DEBUG level messages among them -->
- <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
- <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
- <marker>TRANSACTION_MARKER</marker>
- </evaluator>
- <onMismatch>NEUTRAL</onMismatch>
- <onMatch>DENY</onMatch>
- </filter>
-
- <!-- accept DEBUG and TRACE level -->
- <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
- <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">
- <expression>
- e.level.toInt() &lt;= DEBUG.toInt()
- </expression>
- </evaluator>
- <OnMismatch>DENY</OnMismatch>
- <OnMatch>NEUTRAL</OnMatch>
- </filter>
-
- <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug_by_package.log.%i
- </fileNamePattern>
- <minIndex>1</minIndex>
- <maxIndex>10</maxIndex>
- </rollingPolicy>
-
- <triggeringPolicy
- class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
- <maxFileSize>20MB</maxFileSize>
- </triggeringPolicy>
- <encoder>
- <pattern>${asdc-debug-log-pattern}</pattern>
- </encoder>
- </appender>
-
- <!-- Audit log -->
- <appender name="AUDIT_ROLLING"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
-
- <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/audit.log
- </file>
-
- <!-- Audit messages filter - accept audit messages -->
- <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
- <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
- <marker>AUDIT_MARKER</marker>
- <marker>AUDIT</marker>
- </evaluator>
- <onMismatch>DENY</onMismatch>
- <onMatch>ACCEPT</onMatch>
- </filter>
-
- <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/audit.log.%i
- </fileNamePattern>
- <minIndex>1</minIndex>
- <maxIndex>10</maxIndex>
- </rollingPolicy>
-
- <triggeringPolicy
- class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
- <maxFileSize>20MB</maxFileSize>
- </triggeringPolicy>
- <encoder>
- <pattern>${auditLoggerPattern}</pattern>
- </encoder>
- </appender>
-
- <!-- Metrics log -->
- <appender name="METRICS_ROLLING"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
-
- <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/metrics.log
- </file>
-
- <!-- Metric messages filter - accept metric messages -->
- <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
- <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
- <marker>METRICS</marker>
- </evaluator>
- <onMismatch>DENY</onMismatch>
- <onMatch>ACCEPT</onMatch>
- </filter>
-
- <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/metrics.log.%i
- </fileNamePattern>
- <minIndex>1</minIndex>
- <maxIndex>10</maxIndex>
- </rollingPolicy>
-
- <triggeringPolicy
- class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
- <maxFileSize>20MB</maxFileSize>
- </triggeringPolicy>
- <encoder>
- <pattern>${default-log-pattern}</pattern>
- </encoder>
- </appender>
-
- <!-- SdncTransaction log -->
- <appender name="TRANSACTION_ROLLING"
- class="ch.qos.logback.core.rolling.RollingFileAppender">
-
- <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/transaction.log
- </file>
-
- <!-- Transaction messages filter - accept audit messages -->
- <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
- <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
- <marker>TRANSACTION_MARKER</marker>
- </evaluator>
- <onMismatch>DENY</onMismatch>
- <onMatch>ACCEPT</onMatch>
- </filter>
-
- <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
- <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/transaction.log.%i
- </fileNamePattern>
- <minIndex>1</minIndex>
- <maxIndex>10</maxIndex>
- </rollingPolicy>
-
- <triggeringPolicy
- class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
- <maxFileSize>20MB</maxFileSize>
- </triggeringPolicy>
- <encoder>
- <pattern>${default-log-pattern}</pattern>
- </encoder>
- </appender>
-
- <!-- Asynchronicity Configurations -->
- <appender name="ASYNC_DEBUG" class="ch.qos.logback.classic.AsyncAppender">
- <appender-ref ref="DEBUG_ROLLING" />
- </appender>
-
- <appender name="ASYNC_TRANSACTION" class="ch.qos.logback.classic.AsyncAppender">
- <appender-ref ref="TRANSACTION_ROLLING" />
- </appender>
-
- <appender name="ASYNC_ERROR" class="ch.qos.logback.classic.AsyncAppender">
- <appender-ref ref="ERROR_ROLLING" />
- </appender>
-
- <root level="INFO">
- <appender-ref ref="ASYNC_ERROR" />
- <appender-ref ref="ASYNC_DEBUG" />
- <appender-ref ref="AUDIT_ROLLING" />
- <appender-ref ref="ASYNC_TRANSACTION" />
- <appender-ref ref="METRICS_ROLLING" />
- <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
- <then>
- <appender-ref ref="ALL_ROLLING" />
- </then>
- </if>
- </root>
-
- <logger name="org.openecomp.sdc" level="INFO" />
+ <property scope="system" name="ECOMP-component-name" value="SDC"/>
+ <property scope="system" name="ECOMP-subcomponent-name" value="ONBOARD-BE"/>
+ <property file="${config.home}/catalog-be/configuration.yaml"/>
+ <property scope="context" name="enable-all-log" value="false"/>
+ <property name="p_msg"
+ value="%replace(%replace(%replace(%replace(%msg){'\t','\\\\t'}){'\n', '\\\\n'}){'\r','\\\\r'}){'\\\|','-'}"/>
+ <property name="p_ex"
+ value="%replace(%replace(%replace(%replace(%exception{full}){'\t','\\\\t'}){'\n', '\\\\n'}){'\r','\\\\r'}){'\\\|','-'}"/>
+ <property name="p_debugInfo"
+ value="%replace(%replace(%replace(%replace(%thread # %level # %logger{35} # %msg){'\t','\\\\t'}){'\n', '\\\\n'}){'\r','\\\\r'}){'\\\|','-'}"/>
+
+ <property name="all-log-pattern"
+ value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{EndTimestamp}|%X{RequestID}|%X{ServiceInstanceId}|%thread|%X{ServerName}|%X{ServiceName}|${ECOMP-subcomponent-name}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%level|%X{AlertSeverity}|%X{ServerIpAddress}|%X{ElapsedTime}|${ServerFQDN}|%X{ClientIPAddress}|%logger{35}|%X{timer}|ActivityType=&lt;%M&gt;, Desc=&lt;${p_msg}&gt;%n"/>
+
+ <property name="debug-log-pattern"
+ value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestID}|${p_debugInfo} ${p_ex}|^\n %n%nopex"/>
+
+ <property name="error-log-pattern"
+ value="%date{yyyy-MM-dd'T'HH:mm:ss.SSSXXX}|%X{RequestID}|%thread|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%.-5level|500|${p_msg} ${p_ex}|%n%nopex"/>
+
+ <property name="audit-log-pattern"
+ value="%X{EntryTimestamp}|%X{EndTimestamp}|%X{RequestID}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIpAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{ClientIPAddress}|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%marker|InvocationID=%X{InvocationID}|%X{CustomField3}|%X{CustomField4}|ActivityType=&lt;%M&gt;, Desc=&lt;${p_msg}&gt;%n"/>
+
+ <property name="metric-log-pattern"
+ value="%X{InvokeTimestamp}|%X{EndTimestamp}|%X{RequestID}|%X{ServiceInstanceId}|%thread|%X{VirtualServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity}|%X{TargetServiceName}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{AlertSeverity}|%X{ServerIpAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{ClientIPAddress }|%X{ClassName}|%X{Unused}|%X{ProcessKey}|%X{TargetVirtualEntity}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|ActivityType=&lt;%M&gt;, Desc=&lt;${p_msg}&gt;%n"/>
+
+ <!-- All log -->
+ <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
+ <then>
+ <appender name="ALL_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log</file>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/all.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+
+ <encoder>
+ <pattern>${all-log-pattern}</pattern>
+ </encoder>
+ </appender>
+ </then>
+ </if>
+
+
+ <!-- Debug log -->
+ <appender name="DEBUG_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log</file>
+
+ <!-- Audit and Metric messages filter - deny audit and metric messages -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>AUDIT</marker>
+ <marker>METRICS</marker>
+ </evaluator>
+ <onMismatch>NEUTRAL</onMismatch>
+ <onMatch>DENY</onMatch>
+ </filter>
+
+ <!-- accept INFO, DEBUG and TRACE level -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.GEventEvaluator">
+ <expression>
+ e.level.toInt() &lt;= INFO.toInt()
+ </expression>
+ </evaluator>
+ <OnMismatch>DENY</OnMismatch>
+ <OnMatch>ACCEPT</OnMatch>
+ </filter>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/debug.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+
+ <encoder>
+ <pattern>${debug-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+
+ <!-- Error log -->
+ <appender name="ERROR_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/error.log</file>
+
+ <!-- deny all events with a level below WARN, that is INFO TRACE and DEBUG -->
+ <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
+ <level>WARN</level>
+ </filter>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/error.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+
+ <encoder>
+ <pattern>${error-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+
+ <!-- Audit log -->
+ <appender name="AUDIT_ROLLING" class="ch.qos.logback.core.rolling.RollingFileAppender">
+ <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/audit.log</file>
+
+ <!-- Audit messages filter - accept audit messages -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>ENTRY</marker>
+ <marker>EXIT</marker>
+ </evaluator>
+ <onMismatch>DENY</onMismatch>
+ <onMatch>ACCEPT</onMatch>
+ </filter>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/audit.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+
+ <encoder>
+ <pattern>${audit-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+
+ <!-- Metrics log -->
+ <appender name="METRICS_ROLLING"
+ class="ch.qos.logback.core.rolling.RollingFileAppender">
+
+ <file>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/metrics.log
+ </file>
+
+ <!-- Metric messages filter - accept metric messages -->
+ <filter class="ch.qos.logback.core.filter.EvaluatorFilter">
+ <evaluator class="ch.qos.logback.classic.boolex.OnMarkerEvaluator">
+ <marker>METRICS</marker>
+ </evaluator>
+ <onMismatch>DENY</onMismatch>
+ <onMatch>ACCEPT</onMatch>
+ </filter>
+
+ <rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
+ <fileNamePattern>${log.home}/${ECOMP-component-name}/${ECOMP-subcomponent-name}/metrics.log.%i
+ </fileNamePattern>
+ <minIndex>1</minIndex>
+ <maxIndex>10</maxIndex>
+ </rollingPolicy>
+
+ <triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
+ <maxFileSize>20MB</maxFileSize>
+ </triggeringPolicy>
+
+ <encoder>
+ <pattern>${metric-log-pattern}</pattern>
+ </encoder>
+ </appender>
+
+
+ <!-- Asynchronicity Configurations -->
+ <appender name="ASYNC_DEBUG" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="DEBUG_ROLLING"/>
+ </appender>
+
+ <appender name="ASYNC_ERROR" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="ERROR_ROLLING"/>
+ </appender>
+
+ <appender name="ASYNC_ALL" class="ch.qos.logback.classic.AsyncAppender">
+ <appender-ref ref="ALL_ROLLING"/>
+ </appender>
+
+
+ <root level="INFO">
+ <appender-ref ref="ASYNC_ERROR"/>
+ <appender-ref ref="ASYNC_DEBUG"/>
+ <appender-ref ref="AUDIT_ROLLING"/>
+ <appender-ref ref="METRICS_ROLLING"/>
+ <if condition='property("enable-all-log").equalsIgnoreCase("true")'>
+ <then>
+ <appender-ref ref="ASYNC_ALL"/>
+ </then>
+ </if>
+ </root>
+
+ <logger name="org.openecomp.sdc" level="INFO"/>
</configuration> \ No newline at end of file
diff --git a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/HeatConstants.java b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/HeatConstants.java
index 31c0b6e437..1e917ea4cd 100644
--- a/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/HeatConstants.java
+++ b/openecomp-be/lib/openecomp-heat-lib/src/main/java/org/openecomp/sdc/heat/services/HeatConstants.java
@@ -16,6 +16,7 @@
package org.openecomp.sdc.heat.services;
+
public class HeatConstants {
public static final String GET_ATTR_FROM_RESOURCE_GROUP_PREFIX = "resource.";
public static final String RESOURCE_GROUP_INDEX_VAR_DEFAULT_VALUE = "%index%";
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/ActionConstants.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/ActionConstants.java
index 25cd06d3ce..1823b752c8 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/ActionConstants.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/ActionConstants.java
@@ -21,6 +21,8 @@
package org.openecomp.sdc.action;
+import org.onap.logging.ref.slf4j.ONAPLogConstants;
+
public class ActionConstants {
//
@@ -73,21 +75,21 @@ public class ActionConstants {
public static final String ARTIFACT_METADATA_ATTR_UUID = "ARTIFACT_UUID";
public static final String ARTIFACT_METADATA_ATTR_NAME = "ARTIFACT_NAME";
- public static final String REQUEST_ID = "uuid";
+ public static final String REQUEST_ID = ONAPLogConstants.MDCs.REQUEST_ID;
public static final String SERVICE_INSTANCE_ID = "serviceInstanceID";
- public static final String PARTNER_NAME = "userId";
- public static final String SERVICE_NAME = "ServiceName";
- public static final String INSTANCE_UUID = "InstanceUUID";
+ public static final String PARTNER_NAME = ONAPLogConstants.MDCs.PARTNER_NAME;
+ public static final String SERVICE_NAME = ONAPLogConstants.MDCs.SERVICE_NAME;
+ public static final String INSTANCE_UUID = ONAPLogConstants.MDCs.INSTANCE_UUID;
public static final String REMOTE_HOST = "RemoteHost";
- public static final String CLIENT_IP = "ClientIP";
+ public static final String CLIENT_IP = ONAPLogConstants.MDCs.CLIENT_IP_ADDRESS;
public static final String CATEGORY_LOG_LEVEL = "level";
- public static final String STATUS_CODE = "StatusCode";
- public static final String RESPONSE_CODE = "ResponseCode";
- public static final String RESPONSE_DESCRIPTION = "ResponseDescription";
+ public static final String STATUS_CODE = ONAPLogConstants.MDCs.RESPONSE_STATUS_CODE;
+ public static final String RESPONSE_CODE = ONAPLogConstants.MDCs.RESPONSE_CODE;
+ public static final String RESPONSE_DESCRIPTION = ONAPLogConstants.MDCs.RESPONSE_DESCRIPTION;
public static final String ELAPSED_TIME = "ElapsedTime";
- public static final String BEGIN_TIMESTAMP = "BeginTimestamp";
- public static final String TARGET_SERVICE_NAME = "TargetServiceName";
- public static final String TARGET_ENTITY = "TargetEntity";
+ public static final String BEGIN_TIMESTAMP = ONAPLogConstants.MDCs.ENTRY_TIMESTAMP;
+ public static final String TARGET_SERVICE_NAME = ONAPLogConstants.MDCs.TARGET_SERVICE_NAME;
+ public static final String TARGET_ENTITY = ONAPLogConstants.MDCs.TARGET_ENTITY;
public static final String TARGET_ENTITY_API = "API";
public static final String TARGET_ENTITY_DB = "DB";
public static final String END_TIMESTAMP = "EndTimestamp";
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/logging/StatusCode.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/logging/StatusCode.java
deleted file mode 100644
index b0d5bab12b..0000000000
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/logging/StatusCode.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * SDC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. 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.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.sdc.action.logging;
-
-public enum StatusCode {
- COMPLETE,
- ERROR
-}
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/util/ActionUtil.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/util/ActionUtil.java
index 5d91a599a9..2fba053b2d 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/util/ActionUtil.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-api/src/main/java/org/openecomp/sdc/action/util/ActionUtil.java
@@ -20,8 +20,8 @@
package org.openecomp.sdc.action.util;
+import org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus;
import org.openecomp.sdc.action.logging.CategoryLogLevel;
-import org.openecomp.sdc.action.logging.StatusCode;
import org.openecomp.sdc.action.types.ActionLogResponseCode;
import org.openecomp.sdc.action.types.ActionSubOperation;
import org.slf4j.MDC;
@@ -93,15 +93,15 @@ public class ActionUtil {
*
* @param statusCode Response code for the current operation
*/
- public static void actionLogPostProcessor(StatusCode statusCode) {
+ public static void actionLogPostProcessor(ResponseStatus statusCode) {
actionLogPostProcessor(statusCode, false);
}
- public static void actionLogPostProcessor(StatusCode statusCode, boolean isServiceMetricLog) {
+ public static void actionLogPostProcessor(ResponseStatus statusCode, boolean isServiceMetricLog) {
actionLogPostProcessor(statusCode, null, isServiceMetricLog);
}
- public static void actionLogPostProcessor(StatusCode statusCode, String responseCode,
+ public static void actionLogPostProcessor(ResponseStatus statusCode, String responseCode,
boolean isServiceMetricLog) {
actionLogPostProcessor(statusCode, responseCode, null, isServiceMetricLog);
}
@@ -114,7 +114,7 @@ public class ActionUtil {
* @param responseDescription the response description
* @param isServiceMetricLog the is service metric log
*/
- public static void actionLogPostProcessor(StatusCode statusCode, String responseCode,
+ public static void actionLogPostProcessor(ResponseStatus statusCode, String responseCode,
String responseDescription,
boolean isServiceMetricLog) {
MDC.put(STATUS_CODE, statusCode.name());
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionArtifactDaoImpl.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionArtifactDaoImpl.java
index efac856788..f9e0b00ff8 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionArtifactDaoImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionArtifactDaoImpl.java
@@ -32,7 +32,6 @@ import org.openecomp.sdc.action.dao.ActionArtifactDao;
import org.openecomp.sdc.action.dao.types.ActionArtifactEntity;
import org.openecomp.sdc.action.errors.ActionException;
import org.openecomp.sdc.action.logging.CategoryLogLevel;
-import org.openecomp.sdc.action.logging.StatusCode;
import org.openecomp.sdc.action.types.ActionArtifact;
import org.openecomp.sdc.action.types.ActionSubOperation;
import org.openecomp.sdc.action.util.ActionUtil;
@@ -42,6 +41,8 @@ import org.openecomp.sdc.logging.api.LoggerFactory;
import java.util.Collection;
import java.util.List;
+import static org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus.COMPLETE;
+import static org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus.ERROR;
import static org.openecomp.sdc.action.ActionConstants.TARGET_ENTITY_DB;
import static org.openecomp.sdc.action.errors.ActionErrorConstants.*;
@@ -77,7 +78,7 @@ public class ActionArtifactDaoImpl extends CassandraBaseDao<ActionArtifactEntity
try {
ActionUtil.actionLogPreProcessor(ActionSubOperation.CREATE_ACTION_ARTIFACT, TARGET_ENTITY_DB);
this.create(data.toEntity());
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ ActionUtil.actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
} catch (NoHostAvailableException noHostAvailableException) {
logGenericException(noHostAvailableException);
@@ -96,7 +97,7 @@ public class ActionArtifactDaoImpl extends CassandraBaseDao<ActionArtifactEntity
.actionLogPreProcessor(ActionSubOperation.GET_ARTIFACT_BY_ARTIFACTUUID, TARGET_ENTITY_DB);
Result<ActionArtifactEntity> result = null;
result = accessor.getArtifactByUuId(effectiveVersion, artifactUuId);
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ ActionUtil.actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
List<ActionArtifactEntity> artifactEntities = result.all();
if (artifactEntities != null && !artifactEntities.isEmpty()) {
@@ -118,7 +119,7 @@ public class ActionArtifactDaoImpl extends CassandraBaseDao<ActionArtifactEntity
try {
ActionUtil.actionLogPreProcessor(ActionSubOperation.UPDATE_ACTION_ARTIFACT, TARGET_ENTITY_DB);
this.update(data.toEntity());
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ ActionUtil.actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
} catch (NoHostAvailableException noHostAvailableException) {
logGenericException(noHostAvailableException);
@@ -129,7 +130,7 @@ public class ActionArtifactDaoImpl extends CassandraBaseDao<ActionArtifactEntity
}
private void logGenericException(Exception exception) {
- ActionUtil.actionLogPostProcessor(StatusCode.ERROR, ACTION_QUERY_FAILURE_CODE,
+ ActionUtil.actionLogPostProcessor(ERROR, ACTION_QUERY_FAILURE_CODE,
ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG, false);
log.metrics("");
ActionUtil.actionErrorLogProcessor(CategoryLogLevel.FATAL, ACTION_QUERY_FAILURE_CODE,
diff --git a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionDaoImpl.java b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionDaoImpl.java
index 4562606339..f22fa08ee3 100644
--- a/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionDaoImpl.java
+++ b/openecomp-be/lib/openecomp-sdc-action-lib/openecomp-sdc-action-core/src/main/java/org/openecomp/sdc/action/dao/impl/ActionDaoImpl.java
@@ -19,6 +19,8 @@ package org.openecomp.sdc.action.dao.impl;
import static com.datastax.driver.core.querybuilder.QueryBuilder.eq;
import static com.datastax.driver.core.querybuilder.QueryBuilder.in;
import static com.datastax.driver.core.querybuilder.QueryBuilder.set;
+import static org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus.COMPLETE;
+import static org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus.ERROR;
import static org.openecomp.core.nosqldb.impl.cassandra.CassandraSessionFactory.getSession;
import static org.openecomp.sdc.action.ActionConstants.FILTER_TYPE_CATEGORY;
import static org.openecomp.sdc.action.ActionConstants.FILTER_TYPE_MODEL;
@@ -69,7 +71,6 @@ import org.openecomp.sdc.action.dao.types.ActionEntity;
import org.openecomp.sdc.action.dao.types.OpenEcompComponentEntity;
import org.openecomp.sdc.action.errors.ActionException;
import org.openecomp.sdc.action.logging.CategoryLogLevel;
-import org.openecomp.sdc.action.logging.StatusCode;
import org.openecomp.sdc.action.types.Action;
import org.openecomp.sdc.action.types.ActionStatus;
import org.openecomp.sdc.action.types.ActionSubOperation;
@@ -127,7 +128,7 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
try {
ActionUtil.actionLogPreProcessor(ActionSubOperation.CREATE_ACTION_ENTITY, TARGET_ENTITY_DB);
this.create(action.toEntity());
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ ActionUtil.actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
return action;
} catch (NoHostAvailableException exception) {
@@ -142,7 +143,7 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
log.debug(" entering updateAction with actionUUID= " + action.getActionUuId());
ActionUtil.actionLogPreProcessor(ActionSubOperation.UPDATE_ACTION, TARGET_ENTITY_DB);
this.update(action.toEntity());
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ ActionUtil.actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
log.debug(" exit updateAction with actionUUID= " + action.getActionUuId());
return action;
@@ -159,7 +160,7 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ACTION_VERSION, TARGET_ENTITY_DB);
VersionInfoDeletedEntity activeVersionEntity = versionInfoDeletedDao
.get(new VersionInfoDeletedEntity(ActionConstants.ACTION_VERSIONABLE_TYPE, actionInvariantUuId));
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ ActionUtil.actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
Version activeVersion = activeVersionEntity.getActiveVersion();
@@ -170,7 +171,7 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
.and(in(VERSION, activeVersion));
ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_NAME_BY_ACTIONINVID, TARGET_ENTITY_DB);
ResultSet results = getSession().execute(getNameFromInvUuId);
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ ActionUtil.actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
if (!results.isExhausted()) {
@@ -196,37 +197,37 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
case FILTER_TYPE_VENDOR:
ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_VENDOR, TARGET_ENTITY_DB);
result = accessor.getActionsByVendor(filterId);
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE);
+ ActionUtil.actionLogPostProcessor(COMPLETE);
log.metrics("");
break;
case FILTER_TYPE_CATEGORY:
ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_CATEGORY, TARGET_ENTITY_DB);
result = accessor.getActionsByCategory(filterId);
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE);
+ ActionUtil.actionLogPostProcessor(COMPLETE);
log.metrics("");
break;
case FILTER_TYPE_MODEL:
ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_MODEL, TARGET_ENTITY_DB);
result = accessor.getActionsByModel(filterId);
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE);
+ ActionUtil.actionLogPostProcessor(COMPLETE);
log.metrics("");
break;
case FILTER_TYPE_OPEN_ECOMP_COMPONENT:
ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_COMPONENT, TARGET_ENTITY_DB);
result = accessor.getActionsByOpenEcompComponent(filterId);
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE);
+ ActionUtil.actionLogPostProcessor(COMPLETE);
log.metrics("");
break;
case FILTER_TYPE_NONE:
ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ALL_ACTIONS, TARGET_ENTITY_DB);
result = accessor.getAllActions();
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE);
+ ActionUtil.actionLogPostProcessor(COMPLETE);
log.metrics("");
break;
case FILTER_TYPE_NAME:
ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ACTIONINVID_BY_NAME, TARGET_ENTITY_DB);
result = accessor.getInvIdByName(filterId);
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE);
+ ActionUtil.actionLogPostProcessor(COMPLETE);
log.metrics("");
List<ActionEntity> actionEntities = result.all();
if (actionEntities != null && !actionEntities.isEmpty()) {
@@ -262,7 +263,7 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
log.debug(" entering getActionsByActionUuId with actionUUID= " + actionUuId);
ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_ACTIONUUID, TARGET_ENTITY_DB);
Result<ActionEntity> result = accessor.actionInvariantUuId(actionUuId);
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ ActionUtil.actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
if (result != null) {
log.debug(" exit getActionsByActionUuId with actionUUID= " + actionUuId);
@@ -287,7 +288,7 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
log.debug(" entering getOpenEcompComponents ");
ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_OPEN_ECOMP_COMPONENTS_ENTITY, TARGET_ENTITY_DB);
result = accessor.getOpenEcompComponents();
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ ActionUtil.actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
if (result != null) {
openEcompComponents.addAll(result.all()
@@ -342,7 +343,7 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
}
MDC.put(TARGET_ENTITY, TARGET_ENTITY_DB);
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ ActionUtil.actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
log.debug("Found " + viewableVersions + " viewable version for action with actionInvariantUuId "
@@ -353,7 +354,7 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
ActionUtil.actionLogPreProcessor(ActionSubOperation.GET_ACTIONENTITY_BY_ACTIONINVID, TARGET_ENTITY_DB);
Result<ActionEntity> result = accessor.getActionsByInvId(actionInvariantUuId,
new ArrayList<>(viewableVersions));
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ ActionUtil.actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
if (result != null) {
actions.addAll(result.all()
@@ -377,7 +378,7 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
Action action = null;
VersionInfoEntity versionInfoEntity = versionInfoDao
.get(new VersionInfoEntity(ActionConstants.ACTION_VERSIONABLE_TYPE, actionInvariantUuId));
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ ActionUtil.actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
if (versionInfoEntity != null) {
if (versionInfoEntity.getCandidate() != null) {
@@ -391,7 +392,7 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
TARGET_ENTITY_DB);
Result<ActionEntity> result = accessor.getActionsByInvId(actionInvariantUuId,
new ArrayList<>(versions));
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ ActionUtil.actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
if (result != null) {
ActionEntity actionEntity = result.one();
@@ -411,7 +412,7 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
}
private void logGenericException(Exception exception) {
- ActionUtil.actionLogPostProcessor(StatusCode.ERROR, ACTION_QUERY_FAILURE_CODE,
+ ActionUtil.actionLogPostProcessor(ERROR, ACTION_QUERY_FAILURE_CODE,
ACTION_ENTITY_INTERNAL_SERVER_ERROR_MSG, false);
log.metrics("");
ActionUtil.actionErrorLogProcessor(CategoryLogLevel.FATAL, ACTION_QUERY_FAILURE_CODE, ACTION_QUERY_FAILURE_MSG);
@@ -444,7 +445,7 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
.where(eq("actioninvariantuuid", actionInvariantUuId))
.and(in(VERSION, versions));
getSession().execute(updateStatusStatement);
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ ActionUtil.actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
// Update the status in the data field of action table
updateStatusInActionData(actionInvariantUuId, versions, ActionStatus.Deleted);
@@ -494,7 +495,7 @@ public class ActionDaoImpl extends CassandraBaseDao<ActionEntity> implements Act
.from("dox", ACTION)
.where(eq("name", name));
ResultSet results = getSession().execute(statement);
- ActionUtil.actionLogPostProcessor(StatusCode.COMPLETE, null, "", false);
+ ActionUtil.actionLogPostProcessor(COMPLETE, null, "", false);
log.metrics("");
List<Version> versionList = new ArrayList<>();
diff --git a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/data/priorexecution.json b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/data/priorexecution.json
index f8e1db85df..ca2fb415e2 100644
--- a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/data/priorexecution.json
+++ b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/data/priorexecution.json
@@ -14,7 +14,7 @@
"results": {
"hello": "world"
},
- "status": "COMPLETED",
+ "status": "COMPLETE",
"startTime": 1550780567585,
"endTime": 1550780567585
}
diff --git a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ExecutionRequestTest.java b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ExecutionRequestTest.java
index 541f636841..5c3e9695db 100644
--- a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ExecutionRequestTest.java
+++ b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-api/src/test/java/org/openecomp/core/externaltesting/api/ExecutionRequestTest.java
@@ -86,7 +86,7 @@ public class ExecutionRequestTest {
Assert.assertTrue(UUID.fromString(rsp.getExecutionId()).getLeastSignificantBits() != 0);
Assert.assertEquals("parameters", 6, rsp.getParameters().size());
Assert.assertNotNull(rsp.getResults());
- Assert.assertEquals("COMPLETED", rsp.getStatus());
+ Assert.assertEquals("COMPLETE", rsp.getStatus());
Assert.assertNotNull(rsp.getStartTime());
Assert.assertNotNull(rsp.getEndTime());
diff --git a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/data/priorexecution.json b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/data/priorexecution.json
index ca01d3676a..4b7bc6cf90 100644
--- a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/data/priorexecution.json
+++ b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/data/priorexecution.json
@@ -15,7 +15,7 @@
"results": {
"this is": "a fake result"
},
- "status": "COMPLETED",
+ "status": "COMPLETE",
"startTime": "2019-03-08T21:43:10.527",
"endTime": "2019-03-08T21:43:10.617"
}
diff --git a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ExternalTestingManagerImplTest.java b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ExternalTestingManagerImplTest.java
index c429709182..4f9631250d 100644
--- a/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ExternalTestingManagerImplTest.java
+++ b/openecomp-be/lib/openecomp-sdc-externaltesting-lib/openecomp-sdc-externaltesting-impl/src/test/java/org/openecomp/core/externaltesting/impl/ExternalTestingManagerImplTest.java
@@ -320,7 +320,7 @@ public class ExternalTestingManagerImplTest {
// send a request for a prior execution.
VtpTestExecutionResponse execRsp = m.getExecution("repository", "execId");
- Assert.assertEquals("COMPLETED", execRsp.getStatus());
+ Assert.assertEquals("COMPLETE", execRsp.getStatus());
}
@Test
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/pom.xml b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/pom.xml
index b14ece7012..bd680aff7f 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/pom.xml
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/pom.xml
@@ -44,6 +44,11 @@
<version>${powermock.version}</version>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.projectlombok</groupId>
+ <artifactId>lombok</artifactId>
+ <scope>compile</scope>
+ </dependency>
</dependencies>
</project>
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/AuditData.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/AuditData.java
index b7c4e0d78f..090f680aa7 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/AuditData.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/AuditData.java
@@ -16,6 +16,9 @@
package org.openecomp.sdc.logging.api;
+import org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus;
+import lombok.Getter;
+
/**
* Builder to populate <i>audit</i> data. This includes only data known to an application, and not otherwise available
* to the logging framework. As opposed, for example, to local runtime, host address, etc.
@@ -23,13 +26,14 @@ package org.openecomp.sdc.logging.api;
* @author KATYR, evitaliy
* @since February 15, 2018
*/
+@Getter
public class AuditData {
// don't inherit from MetricsData because it has a very different meaning
private final long startTime;
private final long endTime;
- private final StatusCode statusCode;
+ private final ResponseStatus statusCode;
private final String responseCode;
private final String responseDescription;
private final String clientIpAddress;
@@ -43,60 +47,6 @@ public class AuditData {
this.clientIpAddress = builder.clientIpAddress;
}
- /**
- * Begin timestamp of an API invocation.
- *
- * @return timestamp
- */
- public long getStartTime() {
- return startTime;
- }
-
- /**
- * End timestamp of an API invocation.
- *
- * @return timestamp
- */
- public long getEndTime() {
- return endTime;
- }
-
- /**
- * Result status of an API invocation.
- *
- * @return protocol and application agnostic status code
- */
- public StatusCode getStatusCode() {
- return statusCode;
- }
-
- /**
- * Application/protocol specific response status of an API invocation.
- *
- * @return response code
- */
- public String getResponseCode() {
- return responseCode;
- }
-
- /**
- * Application/protocol specific response in a human-friendly way.
- *
- * @return human-friendly response description
- */
- public String getResponseDescription() {
- return responseDescription;
- }
-
- /**
- * IP address of the invoking client when available.
- *
- * @return IP address
- */
- public String getClientIpAddress() {
- return clientIpAddress;
- }
-
@Override
public String toString() {
return "AuditData{startTime=" + startTime + ", endTime=" + endTime + ", statusCode=" + statusCode
@@ -115,7 +65,7 @@ public class AuditData {
private long startTime;
private long endTime;
- private StatusCode statusCode;
+ private ResponseStatus statusCode;
private String responseCode;
private String responseDescription;
private String clientIpAddress;
@@ -151,7 +101,7 @@ public class AuditData {
* @param statusCode invocation status success/failure
* @return this builder for fluent API
*/
- public AuditDataBuilder statusCode(final StatusCode statusCode) {
+ public AuditDataBuilder statusCode(final ResponseStatus statusCode) {
this.statusCode = statusCode;
return this;
}
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/Logger.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/Logger.java
index ed028e34d5..6fbd25a134 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/Logger.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/Logger.java
@@ -43,7 +43,9 @@ public interface Logger {
boolean isAuditEnabled();
- void audit(AuditData data);
+ void auditEntry(AuditData data);
+
+ void auditExit(AuditData data);
boolean isDebugEnabled();
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/LoggerFactory.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/LoggerFactory.java
index 96debb56b0..6ef57761d8 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/LoggerFactory.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/LoggerFactory.java
@@ -83,7 +83,12 @@ public class LoggerFactory {
}
@Override
- public void audit(AuditData data) {
+ public void auditEntry(AuditData data) {
+ // no-op
+ }
+
+ @Override
+ public void auditExit(AuditData data) {
// no-op
}
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/MetricsData.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/MetricsData.java
index c44ab42efa..2fef96d2bb 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/MetricsData.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/MetricsData.java
@@ -16,6 +16,9 @@
package org.openecomp.sdc.logging.api;
+import org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus;
+import lombok.Getter;
+
/**
* Builder to populate <i>metrics</i> data. This includes only data known to an application, and not otherwise available
* to the logging framework.
@@ -23,13 +26,14 @@ package org.openecomp.sdc.logging.api;
* @author evitaliy
* @since 26 Mar 2018
*/
+@Getter
public class MetricsData {
// don't inherit from AuditData because it has a very different meaning
private final long startTime;
private final long endTime;
- private final StatusCode statusCode;
+ private final ResponseStatus statusCode;
private final String responseCode;
private final String responseDescription;
private final String clientIpAddress;
@@ -47,78 +51,6 @@ public class MetricsData {
this.targetVirtualEntity = builder.targetVirtualEntity;
}
- /**
- * Begin timestamp of an API invocation.
- *
- * @return timestamp
- */
- public long getStartTime() {
- return startTime;
- }
-
- /**
- * End timestamp of an API invocation.
- *
- * @return timestamp
- */
- public long getEndTime() {
- return endTime;
- }
-
- /**
- * Result status of an API invocation.
- *
- * @return protocol and application agnostic status code
- */
- public StatusCode getStatusCode() {
- return statusCode;
- }
-
- /**
- * Application/protocol specific response status of an API invocation.
- *
- * @return response code
- */
- public String getResponseCode() {
- return responseCode;
- }
-
- /**
- * Application/protocol specific response in a human-friendly way.
- *
- * @return human-friendly response description
- */
- public String getResponseDescription() {
- return responseDescription;
- }
-
- /**
- * IP address of the invoking client when available.
- *
- * @return IP address
- */
- public String getClientIpAddress() {
- return clientIpAddress;
- }
-
- /**
- * External entity invoked by the local system.
- *
- * @return identifier of an external entity (system, component, sub-component)
- */
- public String getTargetEntity() {
- return targetEntity;
- }
-
- /**
- * External API invoked by the local system.
- *
- * @return name of an external API
- */
- public String getTargetVirtualEntity() {
- return targetVirtualEntity;
- }
-
@Override
public String toString() {
return "AuditData{startTime=" + startTime + ", endTime=" + endTime + ", statusCode=" + statusCode
@@ -137,7 +69,7 @@ public class MetricsData {
private long startTime;
private long endTime;
- private StatusCode statusCode;
+ private ResponseStatus statusCode;
private String responseCode;
private String responseDescription;
private String clientIpAddress;
@@ -175,7 +107,7 @@ public class MetricsData {
* @param statusCode invocation status success/failure
* @return this builder for fluent API
*/
- public MetricsDataBuilder statusCode(final StatusCode statusCode) {
+ public MetricsDataBuilder statusCode(final ResponseStatus statusCode) {
this.statusCode = statusCode;
return this;
}
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/StatusCode.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/StatusCode.java
deleted file mode 100644
index dd8bd57dcc..0000000000
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/api/StatusCode.java
+++ /dev/null
@@ -1,27 +0,0 @@
-/*
- * Copyright © 2016-2018 European Support Limited
- *
- * 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.
- */
-
-package org.openecomp.sdc.logging.api;
-
-/**
- * Protocol-agnostic status codes to indicate the result status (success, failure) of an API invocation.
- *
- * @author EVITALIY
- * @since 04 Mar 18
- */
-public enum StatusCode {
- COMPLETE, ERROR
-}
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/AuditTracker.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/AuditTracker.java
index af9b5061fd..2aeacf1ad5 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/AuditTracker.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/AuditTracker.java
@@ -22,6 +22,8 @@ import org.openecomp.sdc.logging.api.AuditData;
import org.openecomp.sdc.logging.api.Logger;
import org.openecomp.sdc.logging.api.LoggerFactory;
+import static org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus.COMPLETE;
+
/**
* Tracks and logs audit information when a request is being processed. An instance of this class cannot be reused, and
* the pre- and post-request methods must be called only once.
@@ -62,6 +64,10 @@ public class AuditTracker implements Tracker {
this.started = System.currentTimeMillis();
this.clientIpAddress = request.getRemoteAddr();
+ AuditData auditData = AuditData.builder().startTime(started).endTime(started).statusCode(COMPLETE)
+ .clientIpAddress(clientIpAddress)
+ .build();
+ logger.auditEntry(auditData);
}
@Override
@@ -80,6 +86,6 @@ public class AuditTracker implements Tracker {
.responseCode(Integer.toString(result.getStatus()))
.responseDescription(result.getStatusPhrase()).clientIpAddress(clientIpAddress)
.build();
- logger.audit(auditData);
+ logger.auditExit(auditData);
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/ContextTracker.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/ContextTracker.java
index 2334f373bc..2aa5a83818 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/ContextTracker.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/ContextTracker.java
@@ -54,8 +54,9 @@ public class ContextTracker implements Tracker {
String requestId = requestIdHeaders.getAny(request::getHeader).orElse(UUID.randomUUID().toString());
ContextData.ContextDataBuilder contextBuilder =
ContextData.builder().serviceName(serviceName).requestId(requestId);
+ String partnerName = partnerNameHeaders.getAny(request::getHeader).orElse("UNKNOWN");
+ contextBuilder.partnerName(partnerName);
- partnerNameHeaders.getAny(request::getHeader).ifPresent(contextBuilder::partnerName);
LoggingContext.put(contextBuilder.build());
}
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/RequestProcessingResult.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/RequestProcessingResult.java
index d3625ed303..ff77ef8a93 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/RequestProcessingResult.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/RequestProcessingResult.java
@@ -16,7 +16,7 @@
package org.openecomp.sdc.logging.servlet;
-import org.openecomp.sdc.logging.api.StatusCode;
+import org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus;
/**
* Interpretation of request processing results.
@@ -38,7 +38,7 @@ public interface RequestProcessingResult {
*
* @return on of pre-defined status codes
*/
- StatusCode getStatusCode();
+ ResponseStatus getStatusCode();
/**
* Human-friendly description of the numeric status.
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/jaxrs/LoggingResponseFilter.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/jaxrs/LoggingResponseFilter.java
index fa9e815db8..b0ae88ccaa 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/jaxrs/LoggingResponseFilter.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/main/java/org/openecomp/sdc/logging/servlet/jaxrs/LoggingResponseFilter.java
@@ -18,8 +18,7 @@ package org.openecomp.sdc.logging.servlet.jaxrs;
import static javax.ws.rs.core.Response.Status.Family.REDIRECTION;
import static javax.ws.rs.core.Response.Status.Family.SUCCESSFUL;
-import static org.openecomp.sdc.logging.api.StatusCode.COMPLETE;
-import static org.openecomp.sdc.logging.api.StatusCode.ERROR;
+import static org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus.*;
import static org.openecomp.sdc.logging.servlet.jaxrs.LoggingRequestFilter.LOGGING_TRACKER_KEY;
import javax.ws.rs.container.ContainerRequestContext;
@@ -27,9 +26,10 @@ import javax.ws.rs.container.ContainerResponseContext;
import javax.ws.rs.container.ContainerResponseFilter;
import javax.ws.rs.core.Response;
import javax.ws.rs.ext.Provider;
+
+import org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus;
import org.openecomp.sdc.logging.api.Logger;
import org.openecomp.sdc.logging.api.LoggerFactory;
-import org.openecomp.sdc.logging.api.StatusCode;
import org.openecomp.sdc.logging.servlet.RequestProcessingResult;
import org.openecomp.sdc.logging.servlet.Tracker;
@@ -82,7 +82,7 @@ public class LoggingResponseFilter implements ContainerResponseFilter {
}
@Override
- public StatusCode getStatusCode() {
+ public ResponseStatus getStatusCode() {
Response.Status.Family family = statusInfo.getFamily();
return family.equals(SUCCESSFUL) || family.equals(REDIRECTION) ? COMPLETE : ERROR;
}
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/api/AuditDataTest.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/api/AuditDataTest.java
index 98da27dcc5..b4e2d96348 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/api/AuditDataTest.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/api/AuditDataTest.java
@@ -18,6 +18,7 @@ package org.openecomp.sdc.logging.api;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNull;
+import static org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus.COMPLETE;
import org.junit.Test;
@@ -38,7 +39,7 @@ public class AuditDataTest {
final String responseDescription = "Response-Description";
final String ipAddress = "DUMMY.IP.ADDRESS";
- AuditData data = AuditData.builder().startTime(start).endTime(end).statusCode(StatusCode.COMPLETE)
+ AuditData data = AuditData.builder().startTime(start).endTime(end).statusCode(COMPLETE)
.responseCode(responseCode).responseDescription(responseDescription)
.clientIpAddress(ipAddress).build();
@@ -47,7 +48,7 @@ public class AuditDataTest {
assertEquals(start, data.getStartTime());
assertEquals(responseCode, data.getResponseCode());
assertEquals(responseDescription, data.getResponseDescription());
- assertEquals(StatusCode.COMPLETE, data.getStatusCode());
+ assertEquals(COMPLETE, data.getStatusCode());
}
@Test
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/api/LoggerFactoryTest.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/api/LoggerFactoryTest.java
index 6f860af60a..e6998f35e8 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/api/LoggerFactoryTest.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/api/LoggerFactoryTest.java
@@ -71,7 +71,7 @@ public class LoggerFactoryTest {
logger.warn("");
logger.info("");
logger.debug("");
- logger.audit(null);
+ logger.auditExit(null);
logger.metrics(MetricsData.builder().build());
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/api/MetricsDataTest.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/api/MetricsDataTest.java
index 43f913ecab..9c9aa81bc7 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/api/MetricsDataTest.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/api/MetricsDataTest.java
@@ -18,6 +18,7 @@ package org.openecomp.sdc.logging.api;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNull;
+import static org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus.COMPLETE;
import org.junit.Test;
@@ -40,7 +41,7 @@ public class MetricsDataTest {
final String targetEntity = "Metrics-Target-Entity";
final String targetVirtualEntity = "Metrics-Target-Virtual-Entity";
- MetricsData data = MetricsData.builder().startTime(start).endTime(end).statusCode(StatusCode.COMPLETE)
+ MetricsData data = MetricsData.builder().startTime(start).endTime(end).statusCode(COMPLETE)
.responseCode(responseCode).responseDescription(responseDescription)
.clientIpAddress(ipAddress).targetEntity(targetEntity)
.targetVirtualEntity(targetVirtualEntity).build();
@@ -50,7 +51,7 @@ public class MetricsDataTest {
assertEquals(start, data.getStartTime());
assertEquals(responseCode, data.getResponseCode());
assertEquals(responseDescription, data.getResponseDescription());
- assertEquals(StatusCode.COMPLETE, data.getStatusCode());
+ assertEquals(COMPLETE, data.getStatusCode());
assertEquals(targetEntity, data.getTargetEntity());
assertEquals(targetVirtualEntity, data.getTargetVirtualEntity());
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/servlet/AuditTrackerTest.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/servlet/AuditTrackerTest.java
index 1bd13a9dfd..36c0957069 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/servlet/AuditTrackerTest.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/servlet/AuditTrackerTest.java
@@ -27,9 +27,9 @@ import static org.mockito.Mockito.when;
import javax.servlet.http.HttpServletRequest;
import org.junit.Test;
import org.mockito.ArgumentCaptor;
+import org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus;
import org.openecomp.sdc.logging.api.AuditData;
import org.openecomp.sdc.logging.api.Logger;
-import org.openecomp.sdc.logging.api.StatusCode;
/**
* Test initialization and of audit tracker and log invocation.
@@ -73,7 +73,7 @@ public class AuditTrackerTest {
tracker.preRequest(mock(HttpServletRequest.class));
tracker.postRequest(mock(RequestProcessingResult.class));
- verify(logger, never()).audit(any(AuditData.class));
+ verify(logger, never()).auditExit(any(AuditData.class));
}
@Test
@@ -87,7 +87,7 @@ public class AuditTrackerTest {
tracker.postRequest(mock(RequestProcessingResult.class));
ArgumentCaptor<AuditData> auditDataCaptor = ArgumentCaptor.forClass(AuditData.class);
- verify(logger).audit(auditDataCaptor.capture());
+ verify(logger).auditExit(auditDataCaptor.capture());
assertTrue(auditDataCaptor.getValue().getEndTime() > 0);
}
@@ -104,7 +104,7 @@ public class AuditTrackerTest {
tracker.postRequest(result);
ArgumentCaptor<AuditData> auditDataCaptor = ArgumentCaptor.forClass(AuditData.class);
- verify(logger).audit(auditDataCaptor.capture());
+ verify(logger).auditExit(auditDataCaptor.capture());
AuditData capturedAuditData = auditDataCaptor.getValue();
assertEquals(Integer.toString(result.getStatus()), capturedAuditData.getResponseCode());
@@ -127,7 +127,7 @@ public class AuditTrackerTest {
tracker.postRequest(mock(RequestProcessingResult.class));
ArgumentCaptor<AuditData> auditDataCaptor = ArgumentCaptor.forClass(AuditData.class);
- verify(logger).audit(auditDataCaptor.capture());
+ verify(logger).auditExit(auditDataCaptor.capture());
AuditData capturedAuditData = auditDataCaptor.getValue();
assertEquals(address, capturedAuditData.getClientIpAddress());
@@ -141,8 +141,8 @@ public class AuditTrackerTest {
}
@Override
- public StatusCode getStatusCode() {
- return StatusCode.ERROR;
+ public ResponseStatus getStatusCode() {
+ return ResponseStatus.ERROR;
}
@Override
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/servlet/ContextTrackerTest.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/servlet/ContextTrackerTest.java
index 59c690d763..f1066c447b 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/servlet/ContextTrackerTest.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-api/src/test/java/org/openecomp/sdc/logging/servlet/ContextTrackerTest.java
@@ -119,7 +119,7 @@ public class ContextTrackerTest {
}
@Test
- public void partnerNameAbsentWhenNotGiven() {
+ public void partnerNameIsUnknownWhenNotGiven() {
mockStatic(LoggingContext.class);
@@ -131,7 +131,7 @@ public class ContextTrackerTest {
LoggingContext.put(contextDataCaptor.capture());
- assertNull(contextDataCaptor.getValue().getPartnerName());
+ assertEquals(contextDataCaptor.getValue().getPartnerName(), "UNKNOWN");
}
@Test
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/logback/EventTypeDiscriminator.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/logback/EventTypeDiscriminator.java
index b6f8cfa8ff..aa4657f83e 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/logback/EventTypeDiscriminator.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/logback/EventTypeDiscriminator.java
@@ -95,7 +95,7 @@ public class EventTypeDiscriminator extends AbstractDiscriminator<ILoggingEvent>
final Marker marker = event.getMarker();
if (marker != null) {
- if (marker.contains(Markers.AUDIT)) {
+ if (marker.contains(Markers.ENTRY) || marker.contains(Markers.EXIT)){
return AUDIT;
}
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/AuditField.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/AuditField.java
index 3e44a34722..c4e780fa8f 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/AuditField.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/AuditField.java
@@ -16,6 +16,8 @@
package org.openecomp.sdc.logging.slf4j;
+import org.onap.logging.ref.slf4j.ONAPLogConstants;
+
/**
* MDC fields that represent audit data.
*
@@ -24,13 +26,13 @@ package org.openecomp.sdc.logging.slf4j;
*/
enum AuditField implements MDCField {
- BEGIN_TIMESTAMP("BeginTimestamp"),
+ BEGIN_TIMESTAMP(ONAPLogConstants.MDCs.ENTRY_TIMESTAMP),
END_TIMESTAMP("EndTimestamp"),
ELAPSED_TIME("ElapsedTime"),
- STATUS_CODE("StatusCode"),
- RESPONSE_CODE("ResponseCode"),
- RESPONSE_DESCRIPTION("ResponseDescription"),
- CLIENT_IP_ADDRESS("ClientIpAddress");
+ STATUS_CODE(ONAPLogConstants.MDCs.RESPONSE_STATUS_CODE),
+ RESPONSE_CODE(ONAPLogConstants.MDCs.RESPONSE_CODE),
+ RESPONSE_DESCRIPTION(ONAPLogConstants.MDCs.RESPONSE_DESCRIPTION),
+ CLIENT_IP_ADDRESS(ONAPLogConstants.MDCs.CLIENT_IP_ADDRESS);
private final String key;
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/ContextField.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/ContextField.java
index cce5f44863..87aa0e3a32 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/ContextField.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/ContextField.java
@@ -16,6 +16,8 @@
package org.openecomp.sdc.logging.slf4j;
+import org.onap.logging.ref.slf4j.ONAPLogConstants;
+
/**
* MDC fields that represent context data.
*
@@ -24,11 +26,11 @@ package org.openecomp.sdc.logging.slf4j;
*/
enum ContextField implements MDCField {
- REQUEST_ID("RequestId"),
- SERVICE_NAME("ServiceName"),
- PARTNER_NAME("PartnerName"),
- INSTANCE_ID("InstanceId"),
- SERVER("Server"),
+ REQUEST_ID(ONAPLogConstants.MDCs.REQUEST_ID),
+ SERVICE_NAME(ONAPLogConstants.MDCs.SERVICE_NAME),
+ PARTNER_NAME(ONAPLogConstants.MDCs.PARTNER_NAME),
+ INSTANCE_ID(ONAPLogConstants.MDCs.INSTANCE_UUID),
+ SERVER(ONAPLogConstants.MDCs.SERVER_FQDN),
SERVER_IP_ADDRESS("ServerIpAddress");
private final String key;
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/Markers.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/Markers.java
index 17439da161..3d9bbcfa53 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/Markers.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/Markers.java
@@ -16,6 +16,7 @@
package org.openecomp.sdc.logging.slf4j;
+import org.onap.logging.ref.slf4j.ONAPLogConstants;
import org.slf4j.Marker;
import org.slf4j.MarkerFactory;
@@ -41,7 +42,9 @@ import org.slf4j.MarkerFactory;
*/
public class Markers {
- public static final Marker AUDIT = MarkerFactory.getMarker("AUDIT");
+ public static final Marker ENTRY = MarkerFactory.getMarker(ONAPLogConstants.Markers.ENTRY.getName());
+ public static final Marker EXIT = MarkerFactory.getMarker(ONAPLogConstants.Markers.EXIT.getName());
+
public static final Marker METRICS = MarkerFactory.getMarker("METRICS");
private Markers() {
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/MetricsField.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/MetricsField.java
index fda0c8b683..c4e8e143af 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/MetricsField.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/MetricsField.java
@@ -16,6 +16,8 @@
package org.openecomp.sdc.logging.slf4j;
+import org.onap.logging.ref.slf4j.ONAPLogConstants;
+
/**
* DC fields that represent metrics data.
*
@@ -24,15 +26,15 @@ package org.openecomp.sdc.logging.slf4j;
*/
public enum MetricsField implements MDCField {
- BEGIN_TIMESTAMP("BeginTimestamp"),
+ BEGIN_TIMESTAMP(ONAPLogConstants.MDCs.INVOKE_TIMESTAMP),
END_TIMESTAMP("EndTimestamp"),
ELAPSED_TIME("ElapsedTime"),
- STATUS_CODE("StatusCode"),
- RESPONSE_CODE("ResponseCode"),
- RESPONSE_DESCRIPTION("ResponseDescription"),
- CLIENT_IP_ADDRESS("ClientIpAddress"),
+ STATUS_CODE(ONAPLogConstants.MDCs.RESPONSE_STATUS_CODE),
+ RESPONSE_CODE(ONAPLogConstants.MDCs.RESPONSE_CODE),
+ RESPONSE_DESCRIPTION(ONAPLogConstants.MDCs.RESPONSE_DESCRIPTION),
+ CLIENT_IP_ADDRESS(ONAPLogConstants.MDCs.CLIENT_IP_ADDRESS),
TARGET_VIRTUAL_ENTITY("TargetVirtualEntity"),
- TARGET_ENTITY("TargetEntity");
+ TARGET_ENTITY(ONAPLogConstants.MDCs.TARGET_ENTITY);
private final String key;
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/RequestContextProvider.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/RequestContextProvider.java
index 40684cc132..70e3dd6479 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/RequestContextProvider.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/RequestContextProvider.java
@@ -40,9 +40,9 @@ class RequestContextProvider implements ContextProvider {
static ContextData to(Map<ContextField, String> values) {
return ContextData.builder()
- .requestId(values.get(ContextField.REQUEST_ID))
- .serviceName(values.get(ContextField.SERVICE_NAME))
- .partnerName(values.get(ContextField.PARTNER_NAME)).build();
+ .requestId(values.get(ContextField.REQUEST_ID))
+ .serviceName(values.get(ContextField.SERVICE_NAME))
+ .partnerName(values.get(ContextField.PARTNER_NAME)).build();
}
@Override
@@ -58,7 +58,6 @@ class RequestContextProvider implements ContextProvider {
}
private void putIfNotNull(Map<ContextField, String> values, ContextField field, String value) {
-
if (value != null) {
values.put(field, value);
}
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/SLF4JLoggerWrapper.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/SLF4JLoggerWrapper.java
index fbb5fbf1f2..f85a6bbe95 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/SLF4JLoggerWrapper.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/main/java/org/openecomp/sdc/logging/slf4j/SLF4JLoggerWrapper.java
@@ -114,11 +114,11 @@ class SLF4JLoggerWrapper implements Logger {
@Override
public boolean isAuditEnabled() {
- return logger.isInfoEnabled(Markers.AUDIT);
+ return logger.isInfoEnabled(Markers.EXIT);
}
@Override
- public void audit(AuditData data) {
+ public void auditEntry(AuditData data) {
if (data == null) {
return; // not failing if null
@@ -126,7 +126,23 @@ class SLF4JLoggerWrapper implements Logger {
try {
putAuditOnMdc(data);
- logger.info(Markers.AUDIT, "");
+ logger.info(Markers.ENTRY, "");
+ } finally {
+ clearAuditFromMdc();
+ }
+ }
+
+
+ @Override
+ public void auditExit(AuditData data) {
+
+ if (data == null) {
+ return; // not failing if null
+ }
+
+ try {
+ putAuditOnMdc(data);
+ logger.info(Markers.EXIT, "");
} finally {
clearAuditFromMdc();
}
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/RoutingTest.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/RoutingTest.java
index 7be90264d6..d2e75b1ac1 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/RoutingTest.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/RoutingTest.java
@@ -113,7 +113,7 @@ public class RoutingTest {
@Test
public void testAudit() {
String msg = "This is a test audit";
- logger.info(Markers.AUDIT, msg);
+ logger.info(Markers.EXIT, msg);
TestAppender appender = result.get(AUDIT);
Assert.assertTrue(appender.contains(
(event) -> Level.INFO.equals(event.getLevel()) && msg.equals(event.getFormattedMessage())));
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/logback/EventTypeDiscriminatorTest.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/logback/EventTypeDiscriminatorTest.java
index 2a71f72063..2001e16264 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/logback/EventTypeDiscriminatorTest.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/logback/EventTypeDiscriminatorTest.java
@@ -79,7 +79,7 @@ public class EventTypeDiscriminatorTest {
EventTypeDiscriminator discriminator = new EventTypeDiscriminator();
LoggingEvent event = new LoggingEvent();
event.setLevel(Level.ERROR);
- event.setMarker(Markers.AUDIT);
+ event.setMarker(Markers.EXIT);
assertEquals(ERROR, discriminator.getDiscriminatingValue(event));
}
@@ -97,7 +97,7 @@ public class EventTypeDiscriminatorTest {
EventTypeDiscriminator discriminator = new EventTypeDiscriminator();
LoggingEvent event = new LoggingEvent();
event.setLevel(Level.WARN);
- event.setMarker(Markers.AUDIT);
+ event.setMarker(Markers.EXIT);
assertEquals(ERROR, discriminator.getDiscriminatingValue(event));
}
@@ -115,7 +115,7 @@ public class EventTypeDiscriminatorTest {
EventTypeDiscriminator discriminator = new EventTypeDiscriminator();
LoggingEvent event = new LoggingEvent();
event.setLevel(Level.DEBUG);
- event.setMarker(Markers.AUDIT);
+ event.setMarker(Markers.EXIT);
assertEquals(DEBUG, discriminator.getDiscriminatingValue(event));
}
@@ -133,7 +133,7 @@ public class EventTypeDiscriminatorTest {
EventTypeDiscriminator discriminator = new EventTypeDiscriminator();
LoggingEvent event = new LoggingEvent();
event.setLevel(Level.TRACE);
- event.setMarker(Markers.AUDIT);
+ event.setMarker(Markers.EXIT);
assertEquals(DEBUG, discriminator.getDiscriminatingValue(event));
}
@@ -196,7 +196,7 @@ public class EventTypeDiscriminatorTest {
EventTypeDiscriminator discriminator = new EventTypeDiscriminator();
LoggingEvent event = new LoggingEvent();
event.setLevel(Level.INFO);
- event.setMarker(Markers.AUDIT);
+ event.setMarker(Markers.EXIT);
assertEquals("Audit", discriminator.getDiscriminatingValue(event));
}
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/slf4j/LoggingContextTest.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/slf4j/LoggingContextTest.java
index 1e7cfe834f..9ecd5567e0 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/slf4j/LoggingContextTest.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/slf4j/LoggingContextTest.java
@@ -147,7 +147,7 @@ public class LoggingContextTest {
String random = UUID.randomUUID().toString();
ContextData context = ContextData.builder().serviceName(random).build();
LoggingContext.put(context);
- assertEquals(context, LoggingContext.get());
+ assertEquals(context.getServiceName(), LoggingContext.get().getServiceName());
}
@Test
@@ -156,7 +156,7 @@ public class LoggingContextTest {
String random = UUID.randomUUID().toString();
ContextData context = ContextData.builder().requestId(random).build();
LoggingContext.put(context);
- assertEquals(context, LoggingContext.get());
+ assertEquals(context.getRequestId(), LoggingContext.get().getRequestId());
}
@Test
@@ -165,7 +165,7 @@ public class LoggingContextTest {
String random = UUID.randomUUID().toString();
ContextData context = ContextData.builder().partnerName(random).build();
LoggingContext.put(context);
- assertEquals(context, LoggingContext.get());
+ assertEquals(context.getPartnerName(), LoggingContext.get().getPartnerName());
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/slf4j/RequestContextProviderTest.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/slf4j/RequestContextProviderTest.java
index c4c1677637..e0f8e40e4b 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/slf4j/RequestContextProviderTest.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/slf4j/RequestContextProviderTest.java
@@ -16,16 +16,14 @@
package org.openecomp.sdc.logging.slf4j;
-import static org.junit.Assert.assertEquals;
-import static org.junit.Assert.assertNull;
-import static org.junit.Assert.assertTrue;
-
import java.util.Collections;
import java.util.EnumMap;
import java.util.Map;
import org.junit.Test;
import org.openecomp.sdc.logging.api.ContextData;
+import static org.junit.Assert.*;
+
/**
* Unit-test retrieving values from client-provided request data.
*
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/slf4j/SLF4JLoggerWrapperTest.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/slf4j/SLF4JLoggerWrapperTest.java
index c8ee347a8b..2b98fc898f 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/slf4j/SLF4JLoggerWrapperTest.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-core/src/test/java/org/openecomp/sdc/logging/slf4j/SLF4JLoggerWrapperTest.java
@@ -19,6 +19,7 @@ package org.openecomp.sdc.logging.slf4j;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertNull;
+import static org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus.COMPLETE;
import java.lang.reflect.InvocationHandler;
import java.lang.reflect.Method;
@@ -28,7 +29,6 @@ import java.util.Map;
import org.junit.Test;
import org.openecomp.sdc.logging.api.AuditData;
import org.openecomp.sdc.logging.api.MetricsData;
-import org.openecomp.sdc.logging.api.StatusCode;
import org.slf4j.Logger;
import org.slf4j.MDC;
import org.slf4j.Marker;
@@ -44,7 +44,7 @@ public class SLF4JLoggerWrapperTest {
@Test
public void auditDoesNotFailWhenInputNull() {
- new SLF4JLoggerWrapper(this.getClass()).audit(null);
+ new SLF4JLoggerWrapper(this.getClass()).auditExit(null);
}
@Test
@@ -56,7 +56,7 @@ public class SLF4JLoggerWrapperTest {
public void auditBeginTimeAvailableWhenPassed() {
SpyLogger spy = createSpy();
long start = System.currentTimeMillis();
- new SLF4JLoggerWrapper(spy).audit(AuditData.builder().startTime(start).build());
+ new SLF4JLoggerWrapper(spy).auditExit(AuditData.builder().startTime(start).build());
assertNotNull(spy.mdc().get(AuditField.BEGIN_TIMESTAMP.asKey()));
}
@@ -72,7 +72,7 @@ public class SLF4JLoggerWrapperTest {
public void auditEndTimeAvailableWhenPassed() {
SpyLogger spy = createSpy();
long end = System.currentTimeMillis();
- new SLF4JLoggerWrapper(spy).audit(AuditData.builder().endTime(end).build());
+ new SLF4JLoggerWrapper(spy).auditExit(AuditData.builder().endTime(end).build());
assertNotNull(spy.mdc().get(AuditField.END_TIMESTAMP.asKey()));
}
@@ -88,7 +88,7 @@ public class SLF4JLoggerWrapperTest {
public void auditElapsedTimeAvailableWhenPassed() {
SpyLogger spy = createSpy();
long start = System.currentTimeMillis();
- new SLF4JLoggerWrapper(spy).audit(AuditData.builder()
+ new SLF4JLoggerWrapper(spy).auditExit(AuditData.builder()
.startTime(start).endTime(start + 777).build());
assertEquals("777", spy.mdc().get(AuditField.ELAPSED_TIME.asKey()));
}
@@ -105,21 +105,21 @@ public class SLF4JLoggerWrapperTest {
@Test
public void auditStatusCodeAvailableWhenPassed() {
SpyLogger spy = createSpy();
- new SLF4JLoggerWrapper(spy).audit(AuditData.builder().statusCode(StatusCode.COMPLETE).build());
- assertEquals(StatusCode.COMPLETE.name(), spy.mdc().get(AuditField.STATUS_CODE.asKey()));
+ new SLF4JLoggerWrapper(spy).auditExit(AuditData.builder().statusCode(COMPLETE).build());
+ assertEquals(COMPLETE.name(), spy.mdc().get(AuditField.STATUS_CODE.asKey()));
}
@Test
public void metricsStatusCodeAvailableWhenPassed() {
SpyLogger spy = createSpy();
- new SLF4JLoggerWrapper(spy).metrics(MetricsData.builder().statusCode(StatusCode.COMPLETE).build());
- assertEquals(StatusCode.COMPLETE.name(), spy.mdc().get(MetricsField.STATUS_CODE.asKey()));
+ new SLF4JLoggerWrapper(spy).metrics(MetricsData.builder().statusCode(COMPLETE).build());
+ assertEquals(COMPLETE.name(), spy.mdc().get(MetricsField.STATUS_CODE.asKey()));
}
@Test
public void auditStatusCodeEmptyWhenNotPassed() {
SpyLogger spy = createSpy();
- new SLF4JLoggerWrapper(spy).audit(AuditData.builder().build());
+ new SLF4JLoggerWrapper(spy).auditExit(AuditData.builder().build());
assertNull(spy.mdc().get(AuditField.STATUS_CODE.asKey()));
}
@@ -134,7 +134,7 @@ public class SLF4JLoggerWrapperTest {
public void auditResponseCodeAvailableWhenPassed() {
final String responseCode = "AuditSpyResponse";
SpyLogger spy = createSpy();
- new SLF4JLoggerWrapper(spy).audit(AuditData.builder().responseCode(responseCode).build());
+ new SLF4JLoggerWrapper(spy).auditExit(AuditData.builder().responseCode(responseCode).build());
assertEquals(responseCode, spy.mdc().get(AuditField.RESPONSE_CODE.asKey()));
}
@@ -149,7 +149,7 @@ public class SLF4JLoggerWrapperTest {
@Test
public void auditResponseCodeEmptyWhenNotPassed() {
SpyLogger spy = createSpy();
- new SLF4JLoggerWrapper(spy).audit(AuditData.builder().build());
+ new SLF4JLoggerWrapper(spy).auditExit(AuditData.builder().build());
assertNull(spy.mdc().get(AuditField.RESPONSE_CODE.asKey()));
}
@@ -164,7 +164,7 @@ public class SLF4JLoggerWrapperTest {
public void auditResponseDescriptionAvailableWhenPassed() {
final String responseDescription = "AuditSpyDescription";
SpyLogger spy = createSpy();
- new SLF4JLoggerWrapper(spy).audit(AuditData.builder().responseDescription(responseDescription).build());
+ new SLF4JLoggerWrapper(spy).auditExit(AuditData.builder().responseDescription(responseDescription).build());
assertEquals(responseDescription, spy.mdc().get(AuditField.RESPONSE_DESCRIPTION.asKey()));
}
@@ -179,7 +179,7 @@ public class SLF4JLoggerWrapperTest {
@Test
public void auditResponseDescriptionEmptyWhenNotPassed() {
SpyLogger spy = createSpy();
- new SLF4JLoggerWrapper(spy).audit(AuditData.builder().build());
+ new SLF4JLoggerWrapper(spy).auditExit(AuditData.builder().build());
assertNull(spy.mdc().get(AuditField.RESPONSE_DESCRIPTION.asKey()));
}
@@ -194,7 +194,7 @@ public class SLF4JLoggerWrapperTest {
public void auditClientIpAddressAvailableWhenPassed() {
final String ipAddress = "10.56.20.20";
SpyLogger spy = createSpy();
- new SLF4JLoggerWrapper(spy).audit(AuditData.builder().clientIpAddress(ipAddress).build());
+ new SLF4JLoggerWrapper(spy).auditExit(AuditData.builder().clientIpAddress(ipAddress).build());
assertEquals(ipAddress, spy.mdc().get(AuditField.CLIENT_IP_ADDRESS.asKey()));
}
@@ -209,7 +209,7 @@ public class SLF4JLoggerWrapperTest {
@Test
public void auditClientIpAddressEmptyWhenNotPassed() {
SpyLogger spy = createSpy();
- new SLF4JLoggerWrapper(spy).audit(AuditData.builder().build());
+ new SLF4JLoggerWrapper(spy).auditExit(AuditData.builder().build());
assertNull(spy.mdc().get(AuditField.CLIENT_IP_ADDRESS.asKey()));
}
@@ -294,7 +294,7 @@ public class SLF4JLoggerWrapperTest {
}
private boolean isAuditMethod(Method method, Object[] args) {
- return isSpecialLogMethod(method, args, Markers.AUDIT);
+ return isSpecialLogMethod(method, args, Markers.EXIT);
}
private boolean isSpecialLogMethod(Method method, Object[] args, Marker marker) {
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-spring/src/main/java/org/openecomp/sdc/logging/servlet/spring/LoggingInterceptor.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-spring/src/main/java/org/openecomp/sdc/logging/servlet/spring/LoggingInterceptor.java
index 7ee942a180..393a061987 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-spring/src/main/java/org/openecomp/sdc/logging/servlet/spring/LoggingInterceptor.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-spring/src/main/java/org/openecomp/sdc/logging/servlet/spring/LoggingInterceptor.java
@@ -16,17 +16,17 @@
package org.openecomp.sdc.logging.servlet.spring;
-import static org.openecomp.sdc.logging.api.StatusCode.COMPLETE;
-import static org.openecomp.sdc.logging.api.StatusCode.ERROR;
+import static org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus.*;
import static org.springframework.http.HttpStatus.Series.REDIRECTION;
import static org.springframework.http.HttpStatus.Series.SUCCESSFUL;
import java.util.Objects;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
+
+import org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus;
import org.openecomp.sdc.logging.api.Logger;
import org.openecomp.sdc.logging.api.LoggerFactory;
-import org.openecomp.sdc.logging.api.StatusCode;
import org.openecomp.sdc.logging.servlet.AuditTracker;
import org.openecomp.sdc.logging.servlet.CombinedTracker;
import org.openecomp.sdc.logging.servlet.ContextTracker;
@@ -120,7 +120,7 @@ public class LoggingInterceptor extends HandlerInterceptorAdapter {
}
@Override
- public StatusCode getStatusCode() {
+ public ResponseStatus getStatusCode() {
return statusInfo.getStatusCode();
}
@@ -154,7 +154,7 @@ public class LoggingInterceptor extends HandlerInterceptorAdapter {
return reasonPhrase;
}
- private StatusCode getStatusCode() {
+ private ResponseStatus getStatusCode() {
return series.equals(SUCCESSFUL) || series.equals(REDIRECTION) ? COMPLETE : ERROR;
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-spring/src/test/java/org/openecomp/sdc/logging/servlet/spring/LoggingInterceptorTest.java b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-spring/src/test/java/org/openecomp/sdc/logging/servlet/spring/LoggingInterceptorTest.java
index 406f8b6dbd..86a4318ec9 100644
--- a/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-spring/src/test/java/org/openecomp/sdc/logging/servlet/spring/LoggingInterceptorTest.java
+++ b/openecomp-be/lib/openecomp-sdc-logging-lib/openecomp-sdc-logging-spring/src/test/java/org/openecomp/sdc/logging/servlet/spring/LoggingInterceptorTest.java
@@ -22,13 +22,12 @@ import static org.mockito.ArgumentMatchers.eq;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
-import static org.openecomp.sdc.logging.api.StatusCode.COMPLETE;
-import static org.openecomp.sdc.logging.api.StatusCode.ERROR;
import static org.openecomp.sdc.logging.servlet.spring.LoggingInterceptor.LOGGING_TRACKER_KEY;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.junit.Test;
+import org.onap.logging.ref.slf4j.ONAPLogConstants.ResponseStatus;
import org.openecomp.sdc.logging.servlet.HttpHeader;
import org.openecomp.sdc.logging.servlet.RequestProcessingResult;
import org.openecomp.sdc.logging.servlet.Tracker;
@@ -80,7 +79,7 @@ public class LoggingInterceptorTest {
final int status = 101;
LoggingInterceptor.ServletResponseResult result = new LoggingInterceptor.ServletResponseResult(status);
assertEquals(status, result.getStatus());
- assertEquals(ERROR, result.getStatusCode());
+ assertEquals(ResponseStatus.ERROR, result.getStatusCode());
}
@Test
@@ -88,7 +87,7 @@ public class LoggingInterceptorTest {
final int status = 404;
LoggingInterceptor.ServletResponseResult result = new LoggingInterceptor.ServletResponseResult(status);
assertEquals(status, result.getStatus());
- assertEquals(ERROR, result.getStatusCode());
+ assertEquals(ResponseStatus.ERROR, result.getStatusCode());
}
@Test
@@ -96,7 +95,7 @@ public class LoggingInterceptorTest {
final int status = 503;
LoggingInterceptor.ServletResponseResult result = new LoggingInterceptor.ServletResponseResult(status);
assertEquals(status, result.getStatus());
- assertEquals(ERROR, result.getStatusCode());
+ assertEquals(ResponseStatus.ERROR, result.getStatusCode());
}
@Test
@@ -104,7 +103,7 @@ public class LoggingInterceptorTest {
final int status = 204;
LoggingInterceptor.ServletResponseResult result = new LoggingInterceptor.ServletResponseResult(status);
assertEquals(status, result.getStatus());
- assertEquals(COMPLETE, result.getStatusCode());
+ assertEquals(ResponseStatus.COMPLETE, result.getStatusCode());
}
@Test
@@ -112,7 +111,7 @@ public class LoggingInterceptorTest {
final int status = 307;
LoggingInterceptor.ServletResponseResult result = new LoggingInterceptor.ServletResponseResult(status);
assertEquals(status, result.getStatus());
- assertEquals(COMPLETE, result.getStatusCode());
+ assertEquals(ResponseStatus.COMPLETE, result.getStatusCode());
}
@Test
@@ -120,7 +119,7 @@ public class LoggingInterceptorTest {
final int status = 133;
LoggingInterceptor.ServletResponseResult result = new LoggingInterceptor.ServletResponseResult(status);
assertEquals(status, result.getStatus());
- assertEquals(ERROR, result.getStatusCode());
+ assertEquals(ResponseStatus.ERROR, result.getStatusCode());
}
@Test
@@ -128,7 +127,7 @@ public class LoggingInterceptorTest {
final int status = 485;
LoggingInterceptor.ServletResponseResult result = new LoggingInterceptor.ServletResponseResult(status);
assertEquals(status, result.getStatus());
- assertEquals(ERROR, result.getStatusCode());
+ assertEquals(ResponseStatus.ERROR, result.getStatusCode());
}
@Test
@@ -136,7 +135,7 @@ public class LoggingInterceptorTest {
final int status = 547;
LoggingInterceptor.ServletResponseResult result = new LoggingInterceptor.ServletResponseResult(status);
assertEquals(status, result.getStatus());
- assertEquals(ERROR, result.getStatusCode());
+ assertEquals(ResponseStatus.ERROR, result.getStatusCode());
}
@Test
@@ -144,7 +143,7 @@ public class LoggingInterceptorTest {
final int status = 277;
LoggingInterceptor.ServletResponseResult result = new LoggingInterceptor.ServletResponseResult(status);
assertEquals(status, result.getStatus());
- assertEquals(COMPLETE, result.getStatusCode());
+ assertEquals(ResponseStatus.COMPLETE, result.getStatusCode());
}
@Test
@@ -152,6 +151,6 @@ public class LoggingInterceptorTest {
final int status = 364;
LoggingInterceptor.ServletResponseResult result = new LoggingInterceptor.ServletResponseResult(status);
assertEquals(status, result.getStatus());
- assertEquals(COMPLETE, result.getStatusCode());
+ assertEquals(ResponseStatus.COMPLETE, result.getStatusCode());
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NeutronPortNamingConventionValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NeutronPortNamingConventionValidator.java
index 78c01cfdfc..b3d346177b 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NeutronPortNamingConventionValidator.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NeutronPortNamingConventionValidator.java
@@ -58,7 +58,7 @@ public class NeutronPortNamingConventionValidator implements ResourceValidator {
if (MapUtils.isEmpty(heatOrchestrationTemplate.getResources())) {
return;
}
- String[] regexList = new String[]{".*_net_id", ".*_net_name", ".*_net_fqdn"};
+ String[] regexList = {".*_net_id", ".*_net_name", ".*_net_fqdn"};
heatOrchestrationTemplate
.getResources()
@@ -97,9 +97,9 @@ public class NeutronPortNamingConventionValidator implements ResourceValidator {
private void checkNeutronPortFixedIpsName(String fileName,
Map.Entry<String, Resource> resourceEntry,
GlobalValidationContext globalContext) {
- String[] regexList =
- new String[]{"[^_]+_[^_]+_ips", "[^_]+_[^_]+_v6_ips", "[^_]+_[^_]+_ip_(\\d+)",
- "[^_]+_[^_]+_v6_ip_(\\d+)"};
+ String[] regexList = {"[^_]+_[^_]+_ips", "[^_]+_[^_]+_v6_ips", "[^_]+_[^_]+_ip_(\\d+)",
+ "[^_]+_[^_]+_v6_ip_(\\d+)", "[^_]+_[^_]+_[^_]+_ips", "[^_]+_[^_]+_[^_]+_v6_ips",
+ "[^_]+_[^_]+_[^_]+_ip_(\\d+)", "[^_]+_[^_]+_[^_]+_v6_ip_(\\d+)"};
if (MapUtils.isEmpty(resourceEntry.getValue().getProperties())) {
return;
@@ -128,13 +128,9 @@ public class NeutronPortNamingConventionValidator implements ResourceValidator {
String fixedIpsName = ValidationUtil
.getWantedNameFromPropertyValueGetParam(fixedIpsEntry.getValue());
- if (nonNull(fixedIpsName) && !ValidationUtil
- .evalPattern(fixedIpsName, regexList)) {
- globalContext.addMessage(
- fileName,
- ErrorLevel.WARNING, ErrorMessagesFormatBuilder.getErrorWithParameters(
- ERROR_CODE_NNP1,
- Messages.PARAMETER_NAME_NOT_ALIGNED_WITH_GUIDELINES.getErrorMessage(),
+
+ if (nonNull(fixedIpsName) && !ValidationUtil.evalPattern(fixedIpsName, regexList)) {
+ globalContext.addMessage(fileName, ErrorLevel.WARNING, ErrorMessagesFormatBuilder.getErrorWithParameters(ERROR_CODE_NNP1, Messages.PARAMETER_NAME_NOT_ALIGNED_WITH_GUIDELINES.getErrorMessage(),
"Port", "Fixed_IPS", fixedIpsName, resourceEntry.getKey()));
}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidator.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidator.java
index 4f640dff29..b1a8fe254d 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidator.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/main/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidator.java
@@ -192,15 +192,15 @@ public class NovaServerNamingConventionGuideLineValidator implements ResourceVal
}else if (network instanceof List){
role = getNetworkRole((String)((List) network).get(0));
}
- if (role != null && uniqueResourcePortNetworkRole.containsKey(role)) {
+ if (role != null && (uniqueResourcePortNetworkRole.containsKey(role))) {
globalValidationContext.addMessage(
fileName,
ErrorLevel.WARNING,
ErrorMessagesFormatBuilder.getErrorWithParameters(
ERROR_CODE_NNS12, Messages.RESOURCE_CONNECTED_TO_TWO_EXTERNAL_NETWORKS_WITH_SAME_ROLE
- .getErrorMessage(), resourceId, role));
+ .getErrorMessage(), role, resourceId));
} else {
- uniqueResourcePortNetworkRole.put(role, portResourceId);
+ uniqueResourcePortNetworkRole.put(role, resourceId);
}
}
}
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NeutronPortNamingConventionValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NeutronPortNamingConventionValidatorTest.java
index de047b8fee..00f95ef383 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NeutronPortNamingConventionValidatorTest.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NeutronPortNamingConventionValidatorTest.java
@@ -64,7 +64,7 @@ public class NeutronPortNamingConventionValidatorTest {
PATH + "negativeFixedIP/");
Assert.assertNotNull(messages);
Assert.assertEquals(messages.size(), 1);
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 4);
+ Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 3);
Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
"WARNING: [NNP1]: Port 'Fixed_IPS' Parameter Name not aligned with Guidelines, Parameter Name [pcrf_net_v6_ip_a], Resource ID [port_resource_0]. As a result, VF/VFC Profile may miss this information");
Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(1).getMessage(),
@@ -72,9 +72,6 @@ public class NeutronPortNamingConventionValidatorTest {
Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(2).getMessage(),
"WARNING: [NNP1]: Port 'Fixed_IPS' Parameter Name not aligned with Guidelines, Parameter Name [pcrf_net_ipz], Resource ID [port_resource_2]. As a result, VF/VFC Profile may miss this information");
-
- Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(3).getMessage(),
- "WARNING: [NNP1]: Port 'Fixed_IPS' Parameter Name not aligned with Guidelines, Parameter Name [pcrf_net_v0_ip_3], Resource ID [port_resource_2]. As a result, VF/VFC Profile may miss this information");
}
@Test
diff --git a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidatorTest.java b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidatorTest.java
index 759b376b97..01750c5f54 100644
--- a/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidatorTest.java
+++ b/openecomp-be/lib/openecomp-sdc-validation-lib/openecomp-sdc-validation-impl/src/test/java/org/openecomp/sdc/validation/impl/validators/namingconvention/NovaServerNamingConventionGuideLineValidatorTest.java
@@ -118,7 +118,7 @@ public class NovaServerNamingConventionGuideLineValidatorTest {
Assert.assertEquals(messages.size(), 1);
Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().size(), 1);
Assert.assertEquals(messages.get("first.yaml").getErrorMessageList().get(0).getMessage(),
- "WARNING: [NNS12]: A resource is connected twice to the same network role, Network Role [FSB2], Resource ID [Internal1]");
+ "WARNING: [NNS12]: A resource is connected twice to the same network role, Network Role [Internal1], Resource ID [FSB2]");
}
@Test
diff --git a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaConstants.java b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaConstants.java
index 14b216a040..ea9a6cde04 100644
--- a/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaConstants.java
+++ b/openecomp-be/lib/openecomp-tosca-lib/src/main/java/org/openecomp/sdc/tosca/services/ToscaConstants.java
@@ -17,6 +17,7 @@
package org.openecomp.sdc.tosca.services;
+
public class ToscaConstants {
//TOSCA Requirement Ids
diff --git a/openecomp-be/pom.xml b/openecomp-be/pom.xml
index c51a7926ad..18df108921 100644
--- a/openecomp-be/pom.xml
+++ b/openecomp-be/pom.xml
@@ -40,6 +40,11 @@
<scope>test</scope>
</dependency>
<dependency>
+ <groupId>org.onap.logging-analytics</groupId>
+ <artifactId>logging-slf4j</artifactId>
+ <version>${onap.logging.version}</version>
+ </dependency>
+ <dependency>
<groupId>org.togglz</groupId>
<artifactId>togglz-core</artifactId>
<version>${togglz.version}</version>