Standalone TCA with EELF Logger
[dcaegen2/analytics/tca-gen2.git] / eelf-logger / eelf-logger-api / src / main / java / org / onap / dcae / utils / eelf / logger / api / info / MessageLogInfo.java
1 /*
2  * ================================================================================
3  * Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
4  * ================================================================================
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  *      http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  * ============LICENSE_END=========================================================
17  *
18  */
19
20 package org.onap.dcae.utils.eelf.logger.api.info;
21
22 import java.util.Date;
23
24 /**
25  * Captures fields required for message level logging. These fields are mostly derived fields. For example: creation
26  * timestamp can be auto generated based on system time, {@link RequestStatusCode} and {@link NagiosAlertLevel} can be
27  * derived based on {@link LogLevelCategory}
28  *
29  * @author Rajiv Singla
30  */
31 public interface MessageLogInfo extends LogInfo {
32
33
34     /**
35      * Required field to capture when the message was created
36      * The value should be represented in UTC and formatted according to ISO 8601.
37      * <p>
38      * <b>Example: 2015-06-03T13:21:58+00:00</b>
39      * </p>
40      *
41      * @return message creation creationTimestamp
42      */
43     Date getCreationTimestamp();
44
45     /**
46      * Required field contains a value of COMPLETE or ERROR to indicate high level success or failure of the
47      * request related activities.
48      *
49      * @return value to indicate high level success or failure of the request related activities
50      */
51     RequestStatusCode getStatusCode();
52
53
54     /**
55      * Optional field for Nagios monitoring/alerting severity code
56      *
57      * @return nagios monitoring/alerting severity code
58      */
59     NagiosAlertLevel getAlertSeverity();
60
61
62 }