aboutsummaryrefslogtreecommitdiffstats
path: root/cmso-ticketmgt/src/main/java/org/onap/observations/Mdc.java
diff options
context:
space:
mode:
Diffstat (limited to 'cmso-ticketmgt/src/main/java/org/onap/observations/Mdc.java')
-rw-r--r--cmso-ticketmgt/src/main/java/org/onap/observations/Mdc.java314
1 files changed, 149 insertions, 165 deletions
diff --git a/cmso-ticketmgt/src/main/java/org/onap/observations/Mdc.java b/cmso-ticketmgt/src/main/java/org/onap/observations/Mdc.java
index cf49ccd..e2b8220 100644
--- a/cmso-ticketmgt/src/main/java/org/onap/observations/Mdc.java
+++ b/cmso-ticketmgt/src/main/java/org/onap/observations/Mdc.java
@@ -39,12 +39,11 @@ import static com.att.eelf.configuration.Configuration.MDC_RESPONSE_DESC;
import static com.att.eelf.configuration.Configuration.MDC_STATUS_CODE;
import static com.att.eelf.configuration.Configuration.MDC_TARGET_ENTITY;
import static com.att.eelf.configuration.Configuration.MDC_TARGET_SERVICE_NAME;
-
+import com.att.eelf.utils.Stopwatch;
import java.net.URI;
import java.util.Date;
import java.util.Map;
import java.util.UUID;
-
import javax.servlet.http.HttpServletRequest;
import javax.ws.rs.client.ClientRequestContext;
import javax.ws.rs.client.ClientResponseContext;
@@ -52,172 +51,157 @@ import javax.ws.rs.container.ContainerRequestContext;
import javax.ws.rs.container.ContainerResponseContext;
import javax.ws.rs.core.MultivaluedMap;
import javax.ws.rs.core.Response.StatusType;
-
import org.onap.observations.MessageHeaders.HeadersEnum;
import org.slf4j.MDC;
-import com.att.eelf.utils.Stopwatch;
-
/**
- * ECOMP EELF logging MDC fields not defined in the MDC Configuration (i.e.
- * MDC_ALERT_SEVERITY)
+ * ECOMP EELF logging MDC fields not defined in the MDC Configuration (i.e. MDC_ALERT_SEVERITY)
**/
public class Mdc {
- public static final String SERVICE_NAME = "CSS-Scheduler";
- public enum Enum {
- // BeginTimestamp,
- // EndTimeStamp,
- // RequestId,
- // ServiceInstanceId,
- VirtualServerName,
- // ServiceName,
- // PartnerName,
- // StatusCOde,
- // ResponseCode,
- // ResponseDescription,
- // InstanceUUID,
- // AlertSeverity,
- // ServerIPAddress,
- // ElapsedTime,
- // ServerFQDN,
- // RemoteHost,
- ClassName, Unused,
- // ProcessKey,
- CustomField1, CustomField2, CustomField3, CustomField4,
- // TargetVirtualEntity,
- // TargetEntity,
- // TargetServiceName,
- ErrorCode, ErrorDescription, Timer,
- }
-
- public static String getCaller(int back)
- {
- StackTraceElement[] stackTraceElements = Thread.currentThread().getStackTrace();
- return stackTraceElements[back].getClassName() + "." + stackTraceElements[back].getMethodName();
- }
-
- public static void setCaller(int back)
- {
- String caller = MDC.get(Enum.ClassName.name());
- if (caller == null)
- MDC.put(Enum.ClassName.name(), getCaller(back));
- }
-
- public static void setObservation(ObservationInterface o)
- {
- MDC.put(Enum.CustomField4.name(), o.name());
- }
-
- public static void clearCaller()
- {
- MDC.remove(Enum.ClassName.name());
- }
-
- public static Map<String, String> save()
- {
- Map<String, String> save = MDC.getCopyOfContextMap();
- return save;
- }
-
- public static void restore(Map<String, String> mdcSave)
- {
- MDC.clear();
- for (String name : mdcSave.keySet())
- MDC.put(name, mdcSave.get(name));
- }
-
-
-
- public static void setRequestIdIfNotSet(String requestId) {
- if (MDC.get(MDC_KEY_REQUEST_ID) == null || MDC.get(MDC_KEY_REQUEST_ID).equals(""))
- {
- setRequestId(requestId);
- }
- }
-
- public static void setRequestId(String requestId) {
- MDC.put(MDC_KEY_REQUEST_ID, requestId);
- }
-
- public static void metricStart(ClientRequestContext requestContext) {
- MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(new Date()));
- MDC.put(MDC_END_TIMESTAMP, MDC.get(MDC_BEGIN_TIMESTAMP));
- setPartnerTargetFromUri(requestContext.getUri());
- }
-
- public static void metricEnd(ClientResponseContext response)
- {
-
- Date now = new Date();
- //MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(now));
- MDC.put(MDC_END_TIMESTAMP, Stopwatch.isoFormatter.format(now));
- setResponseInfo(response.getStatusInfo());
-
- }
- public static void auditStart(ContainerRequestContext requestContext, HttpServletRequest servletRequest)
- {
- MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(new Date()));
- MDC.put(MDC_END_TIMESTAMP, MDC.get(MDC_BEGIN_TIMESTAMP));
- MDC.put(MDC_REMOTE_HOST, servletRequest.getRemoteHost());
- MDC.put(Enum.ClassName.name(), getCaller(4));
- MultivaluedMap<String, String> headers = requestContext.getHeaders();
- String transactionId = (String) headers.getFirst(HeadersEnum.TransactionID.toString());
- if (transactionId != null)
- {
- setRequestId(transactionId);
- }
- else
- {
- setRequestId(UUID.randomUUID().toString());
- }
-
- }
-
- public static void auditEnd(ContainerRequestContext requestContext, ContainerResponseContext response)
- {
- Date now = new Date();
- //MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(now));
- MDC.put(MDC_END_TIMESTAMP, Stopwatch.isoFormatter.format(now));
- MDC.put(Enum.ClassName.name(), getCaller(4));
-
- setResponseInfo(response.getStatusInfo());
-
- }
-
- private static void setResponseInfo(StatusType statusInfo)
- {
- Integer status = statusInfo.getStatusCode();
- String completed = "ERROR";
- if (status >=200 && status < 300)
- {
- completed = "COMPLETE";
- }
- MDC.put(MDC_RESPONSE_CODE, status.toString());
- MDC.put(MDC_RESPONSE_DESC, statusInfo.getReasonPhrase());
- MDC.put(MDC_STATUS_CODE, completed);
- }
-
- public static void setEvent(String requestID) {
- MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(new Date()));
- MDC.put(MDC_END_TIMESTAMP, MDC.get(MDC_BEGIN_TIMESTAMP));
- setRequestId(requestID);
- }
-
- private static void setPartnerTargetFromUri(URI uri)
- {
- try
- {
- MDC.put(MDC_PARTNER_NAME, uri.getHost());
- MDC.put(MDC_TARGET_ENTITY, uri.getScheme() + "://" + uri.getHost() + ":" + uri.getPort());
- MDC.put(MDC_TARGET_SERVICE_NAME, uri.getPath());
- }
- catch (Exception e)
- {
- MDC.put(MDC_PARTNER_NAME, "UNKNOWN");
- MDC.put(MDC_TARGET_ENTITY, "UNKNOWN");
- MDC.put(MDC_TARGET_SERVICE_NAME, "UNKNOWN");
- }
- }
-
-
-} \ No newline at end of file
+ public static final String SERVICE_NAME = "CSS-Scheduler";
+
+ public enum Enum {
+ // BeginTimestamp,
+ // EndTimeStamp,
+ // RequestId,
+ // ServiceInstanceId,
+ VirtualServerName,
+ // ServiceName,
+ // PartnerName,
+ // StatusCOde,
+ // ResponseCode,
+ // ResponseDescription,
+ // InstanceUUID,
+ // AlertSeverity,
+ // ServerIPAddress,
+ // ElapsedTime,
+ // ServerFQDN,
+ // RemoteHost,
+ ClassName,
+ Unused,
+ // ProcessKey,
+ CustomField1,
+ CustomField2,
+ CustomField3,
+ CustomField4,
+ // TargetVirtualEntity,
+ // TargetEntity,
+ // TargetServiceName,
+ ErrorCode,
+ ErrorDescription,
+ Timer,
+ }
+
+ public static String getCaller(int back) {
+ StackTraceElement[] stackTraceElements = Thread.currentThread().getStackTrace();
+ return stackTraceElements[back].getClassName() + "." + stackTraceElements[back].getMethodName();
+ }
+
+ public static void setCaller(int back) {
+ String caller = MDC.get(Enum.ClassName.name());
+ if (caller == null)
+ MDC.put(Enum.ClassName.name(), getCaller(back));
+ }
+
+ public static void setObservation(ObservationInterface o) {
+ MDC.put(Enum.CustomField4.name(), o.name());
+ }
+
+ public static void clearCaller() {
+ MDC.remove(Enum.ClassName.name());
+ }
+
+ public static Map<String, String> save() {
+ Map<String, String> save = MDC.getCopyOfContextMap();
+ return save;
+ }
+
+ public static void restore(Map<String, String> mdcSave) {
+ MDC.clear();
+ for (String name : mdcSave.keySet())
+ MDC.put(name, mdcSave.get(name));
+ }
+
+
+
+ public static void setRequestIdIfNotSet(String requestId) {
+ if (MDC.get(MDC_KEY_REQUEST_ID) == null || MDC.get(MDC_KEY_REQUEST_ID).equals("")) {
+ setRequestId(requestId);
+ }
+ }
+
+ public static void setRequestId(String requestId) {
+ MDC.put(MDC_KEY_REQUEST_ID, requestId);
+ }
+
+ public static void metricStart(ClientRequestContext requestContext) {
+ MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(new Date()));
+ MDC.put(MDC_END_TIMESTAMP, MDC.get(MDC_BEGIN_TIMESTAMP));
+ setPartnerTargetFromUri(requestContext.getUri());
+ }
+
+ public static void metricEnd(ClientResponseContext response) {
+
+ Date now = new Date();
+ // MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(now));
+ MDC.put(MDC_END_TIMESTAMP, Stopwatch.isoFormatter.format(now));
+ setResponseInfo(response.getStatusInfo());
+
+ }
+
+ public static void auditStart(ContainerRequestContext requestContext, HttpServletRequest servletRequest) {
+ MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(new Date()));
+ MDC.put(MDC_END_TIMESTAMP, MDC.get(MDC_BEGIN_TIMESTAMP));
+ MDC.put(MDC_REMOTE_HOST, servletRequest.getRemoteHost());
+ MDC.put(Enum.ClassName.name(), getCaller(4));
+ MultivaluedMap<String, String> headers = requestContext.getHeaders();
+ String transactionId = (String) headers.getFirst(HeadersEnum.TransactionID.toString());
+ if (transactionId != null) {
+ setRequestId(transactionId);
+ } else {
+ setRequestId(UUID.randomUUID().toString());
+ }
+
+ }
+
+ public static void auditEnd(ContainerRequestContext requestContext, ContainerResponseContext response) {
+ Date now = new Date();
+ // MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(now));
+ MDC.put(MDC_END_TIMESTAMP, Stopwatch.isoFormatter.format(now));
+ MDC.put(Enum.ClassName.name(), getCaller(4));
+
+ setResponseInfo(response.getStatusInfo());
+
+ }
+
+ private static void setResponseInfo(StatusType statusInfo) {
+ Integer status = statusInfo.getStatusCode();
+ String completed = "ERROR";
+ if (status >= 200 && status < 300) {
+ completed = "COMPLETE";
+ }
+ MDC.put(MDC_RESPONSE_CODE, status.toString());
+ MDC.put(MDC_RESPONSE_DESC, statusInfo.getReasonPhrase());
+ MDC.put(MDC_STATUS_CODE, completed);
+ }
+
+ public static void setEvent(String requestID) {
+ MDC.put(MDC_BEGIN_TIMESTAMP, Stopwatch.isoFormatter.format(new Date()));
+ MDC.put(MDC_END_TIMESTAMP, MDC.get(MDC_BEGIN_TIMESTAMP));
+ setRequestId(requestID);
+ }
+
+ private static void setPartnerTargetFromUri(URI uri) {
+ try {
+ MDC.put(MDC_PARTNER_NAME, uri.getHost());
+ MDC.put(MDC_TARGET_ENTITY, uri.getScheme() + "://" + uri.getHost() + ":" + uri.getPort());
+ MDC.put(MDC_TARGET_SERVICE_NAME, uri.getPath());
+ } catch (Exception e) {
+ MDC.put(MDC_PARTNER_NAME, "UNKNOWN");
+ MDC.put(MDC_TARGET_ENTITY, "UNKNOWN");
+ MDC.put(MDC_TARGET_SERVICE_NAME, "UNKNOWN");
+ }
+ }
+
+
+}