From 44162d56a81c1a04a70bfeca0b79d8d50f1a82a8 Mon Sep 17 00:00:00 2001 From: Joseph Chou Date: Tue, 9 Jun 2020 14:14:56 -0400 Subject: change audit and metric formats in feature-controlloop-trans logging enhancement Issue-ID: POLICY-2579 Change-Id: Id1e0230d3cd2ac6d921be86f127f3721c65f3e52 Signed-off-by: Joseph Chou --- .../trans/CacheBasedControlLoopMetricsManager.java | 33 +++++++++++++++++++++- .../src/test/resources/logback.xml | 10 +++---- 2 files changed, 37 insertions(+), 6 deletions(-) (limited to 'controlloop/common/feature-controlloop-trans') diff --git a/controlloop/common/feature-controlloop-trans/src/main/java/org/onap/policy/drools/apps/controlloop/feature/trans/CacheBasedControlLoopMetricsManager.java b/controlloop/common/feature-controlloop-trans/src/main/java/org/onap/policy/drools/apps/controlloop/feature/trans/CacheBasedControlLoopMetricsManager.java index 75e0f1f4d..956d28ed8 100644 --- a/controlloop/common/feature-controlloop-trans/src/main/java/org/onap/policy/drools/apps/controlloop/feature/trans/CacheBasedControlLoopMetricsManager.java +++ b/controlloop/common/feature-controlloop-trans/src/main/java/org/onap/policy/drools/apps/controlloop/feature/trans/CacheBasedControlLoopMetricsManager.java @@ -28,10 +28,12 @@ import java.time.Instant; import java.time.ZonedDateTime; import java.util.ArrayList; import java.util.List; +import java.util.Map; import java.util.Properties; import java.util.UUID; import java.util.concurrent.TimeUnit; import org.apache.commons.collections4.CollectionUtils; +import org.onap.policy.controlloop.ControlLoopNotificationType; import org.onap.policy.controlloop.ControlLoopOperation; import org.onap.policy.controlloop.VirtualControlLoopNotification; import org.onap.policy.drools.persistence.SystemPersistenceConstants; @@ -54,6 +56,22 @@ class CacheBasedControlLoopMetricsManager implements ControlLoopMetrics { private long transactionTimeout = ControlLoopMetricsFeature.CL_CACHE_TRANS_TIMEOUT_SECONDS_DEFAULT; + /** + * Numeric response code. + */ + private static final Map note2code = Map.of( + ControlLoopNotificationType.ACTIVE.name(), "100", + ControlLoopNotificationType.REJECTED.name(), "200", + ControlLoopNotificationType.OPERATION.name(), "300", + ControlLoopNotificationType.OPERATION_SUCCESS.name(), "301", + ControlLoopNotificationType.OPERATION_FAILURE.name(), "302", + ControlLoopNotificationType.FINAL_FAILURE.name(), "400", + ControlLoopNotificationType.FINAL_SUCCESS.name(), "401", + ControlLoopNotificationType.FINAL_OPENLOOP.name(), "402" + ); + + private static final String UNKNOWN_RESPONSE_CODE = "900"; + public CacheBasedControlLoopMetricsManager() { Properties properties = SystemPersistenceConstants.getManager() @@ -288,7 +306,11 @@ class CacheBasedControlLoopMetricsManager implements ControlLoopMetrics { + ":" + notification.getPolicyName() + ":" + notification.getPolicyVersion()) .setProcessKey("" + notification.getAai()) .setTargetEntity(notification.getTargetType() + "." + notification.getTarget()) - .setResponseCode((notification.getNotification() != null) ? notification.getNotification().name() : "-") + .setResponseCode((notification.getNotification() != null) + ? notificationTypeToResponseCode(notification.getNotification().name()) + : UNKNOWN_RESPONSE_CODE) + .setCustomField1((notification.getNotification() != null) + ? notification.getNotification().name() : "") .setResponseDescription(notification.getMessage()) .setClientIpAddress(notification.getClosedLoopEventClient()); } @@ -362,4 +384,13 @@ class CacheBasedControlLoopMetricsManager implements ControlLoopMetrics { + getCacheOccupancy() + "}"; } + + private String notificationTypeToResponseCode(String notificationType) { + String code = note2code.get(notificationType); + if (code != null) { + return code; + } else { + return UNKNOWN_RESPONSE_CODE; + } + } } diff --git a/controlloop/common/feature-controlloop-trans/src/test/resources/logback.xml b/controlloop/common/feature-controlloop-trans/src/test/resources/logback.xml index 6a25769e3..f2acc70e7 100644 --- a/controlloop/common/feature-controlloop-trans/src/test/resources/logback.xml +++ b/controlloop/common/feature-controlloop-trans/src/test/resources/logback.xml @@ -2,7 +2,7 @@ ============LICENSE_START======================================================= policy-management ================================================================================ - Copyright (C) 2017-2019 AT&T Intellectual Property. All rights reserved. + Copyright (C) 2017-2020 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. @@ -20,7 +20,7 @@ - + @@ -37,9 +37,9 @@ value="[%d{yyyy-MM-dd'T'HH:mm:ss.SSS+00:00, UTC}] [%X{networkEventType:-NULL}|%X{networkProtocol:-NULL}|%X{networkTopic:-NULL}|%X{requestID:-NULL}]%n" /> - - + value="%X{BeginTimestamp}|%X{EndTimestamp}|%X{RequestID}|%X{ServiceInstanceId}|%thread|%X{ServerName}|%X{ServiceName}|%X{PartnerName}|%X{TargetEntity:-NA}|%X{TargetServiceName:-NA}|%X{StatusCode}|%X{ResponseCode}|%X{ResponseDescription}|%X{InstanceUUID}|%.-5level|%X{Severity}|%X{ServerIPAddress}|%X{ElapsedTime}|%X{ServerFQDN}|%X{RemoteHost}|%class||%X{ProcessKey}|%X{TargetVirtualEntity}|%X{CustomField1}|%X{CustomField2}|%X{CustomField3}|%X{CustomField4}|%msg%n" /> + ${logDir}/${errorLog}.log -- cgit 1.2.3-korg