2 * ============LICENSE_START==========================================
4 * ===================================================================
5 * Copyright (C) 2019 AT&T Intellectual Property. All rights reserved.
6 * ===================================================================
7 * Modifications Copyright (c) 2019 Samsung
8 * ===================================================================
10 * Unless otherwise specified, all software contained herein is licensed
11 * under the Apache License, Version 2.0 (the "License");
12 * you may not use this software except in compliance with the License.
13 * You may obtain a copy of the License at
15 * http://www.apache.org/licenses/LICENSE-2.0
17 * Unless required by applicable law or agreed to in writing, software
18 * distributed under the License is distributed on an "AS IS" BASIS,
19 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
20 * See the License for the specific language governing permissions and
21 * limitations under the License.
23 * Unless otherwise specified, all documentation contained herein is licensed
24 * under the Creative Commons License, Attribution 4.0 Intl. (the "License");
25 * you may not use this documentation except in compliance with the License.
26 * You may obtain a copy of the License at
28 * https://creativecommons.org/licenses/by/4.0/
30 * Unless required by applicable law or agreed to in writing, documentation
31 * distributed under the License is distributed on an "AS IS" BASIS,
32 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
33 * See the License for the specific language governing permissions and
34 * limitations under the License.
36 * ============LICENSE_END============================================
41 package org.onap.portal.logging.format;
43 import com.att.eelf.i18n.EELFResolvableErrorEnum;
44 import org.onap.portalsdk.core.logging.format.AlarmSeverityEnum;
45 import org.onap.portalsdk.core.logging.format.ErrorSeverityEnum;
46 import org.onap.portalsdk.core.logging.format.ErrorTypeEnum;
49 * Add ONAP Portal Specific Error Code Enums here, for generic ones (ones you think are useful not only Portal but also
50 * SDK), add it to the enum class AppMessagesEnum defined in SDK.
52 public enum EPAppMessagesEnum implements EELFResolvableErrorEnum {
54 100-199 Security/Permission Related
55 - Authentication problems (from external client, to external server)
56 - Certification errors
59 200-299 Availability/Timeout Related
63 300-399 Data Access/Integrity Related
64 - Data in graph in invalid(E.g. no creator is found for service)
65 - Artifact is missing in ES, but exists in graph.
67 400-499 Schema Interface Type/Validation
68 - received Pay-load checksum is invalid
69 - received JSON is not valid
71 500-599 Business/Flow Processing Related
72 - check out to service is not allowed
74 - failed to generate heat file
77 600-899 Reserved - do not use
79 900-999 Unknown Errors
80 - Unexpected exception
83 BeUebAuthenticationError(EPErrorCodesEnum.BEUEBAUTHENTICATIONERROR_ONE_ARGUMENT,
84 ErrorTypeEnum.AUTHENTICATION_PROBLEM, AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
85 "ERR100E", "An Authentication failure occurred during access to UEB server", "Details: {0}.",
86 "Please check UEB server list and keys configured under Portal.Properties file."),
88 BeRestApiAuthenticationError(EPErrorCodesEnum.BERESTAPIAUTHENTICATIONERROR, ErrorTypeEnum.AUTHENTICATION_PROBLEM,
89 AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
90 "ERR101E", "Rejected an incoming REST API request due to invalid credentials", "",
91 "Please check application credentials defined in Database or properties files."),
93 InternalAuthenticationInfo(EPErrorCodesEnum.INTERNALAUTHENTICATIONINFO_ONE_ARGUMENT,
94 ErrorTypeEnum.AUTHENTICATION_PROBLEM, AlarmSeverityEnum.INFORMATIONAL, ErrorSeverityEnum.INFO,
95 "ERR199I", "Internal authentication problem", "Details: {0}.",
96 "Please check the logs for more information."),
98 InternalAuthenticationWarning(EPErrorCodesEnum.INTERNALAUTHENTICATIONWARNING_ONE_ARGUMENT,
99 ErrorTypeEnum.AUTHENTICATION_PROBLEM, AlarmSeverityEnum.MINOR, ErrorSeverityEnum.WARN,
100 "ERR199W", "Internal authentication problem", "Details: {0}.",
101 "Please check the logs for more information."),
103 InternalAuthenticationError(EPErrorCodesEnum.INTERNALAUTHENTICATIONERROR_ONE_ARGUMENT,
104 ErrorTypeEnum.AUTHENTICATION_PROBLEM, AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
105 "ERR199E", "Internal authentication problem", "Details: {0}.",
106 "Please check the logs for more information."),
108 InternalAuthenticationFatal(EPErrorCodesEnum.INTERNALAUTHENTICATIONFATAL_ONE_ARGUMENT,
109 ErrorTypeEnum.AUTHENTICATION_PROBLEM, AlarmSeverityEnum.CRITICAL, ErrorSeverityEnum.FATAL,
110 "ERR199F", "Internal authentication problem", "Details: {0}.",
111 "Please check the logs for more information."),
113 BeHealthCheckError(EPErrorCodesEnum.BeHEALTHCHECKERROR, ErrorTypeEnum.SYSTEM_ERROR, AlarmSeverityEnum.CRITICAL,
114 ErrorSeverityEnum.ERROR,
116 "ECOMP-PORTAL Back-end probably lost connectivity to either one of the following components: MySQL DB, UEB Cluster",
117 "", "Please check the logs for more information."),
119 BeHealthCheckMySqlError(EPErrorCodesEnum.BEHEALTHCHECKMYSQLERROR, ErrorTypeEnum.SYSTEM_ERROR,
120 AlarmSeverityEnum.CRITICAL, ErrorSeverityEnum.ERROR,
121 "ERR201E", "ECOMP-PORTAL Back-end probably lost connectivity to MySQL DB", "",
122 "Check connectivity to MYSQL is configured correctly under system.properties file."),
124 BeHealthCheckUebClusterError(EPErrorCodesEnum.BEHEALTHCHECKUEBCLUSTERERROR, ErrorTypeEnum.SYSTEM_ERROR,
125 AlarmSeverityEnum.CRITICAL, ErrorSeverityEnum.ERROR,
126 "ERR203E", "ECOMP-PORTAL Back-end probably lost connectivity to UEB Cluster", "",
127 "Check connectivity to UEB cluster which is configured under portal.properties file."),
129 FeHealthCheckError(EPErrorCodesEnum.FEHEALTHCHECKERROR, ErrorTypeEnum.SYSTEM_ERROR, AlarmSeverityEnum.CRITICAL,
130 ErrorSeverityEnum.ERROR,
131 "ERR204E", "Unable to connect to a valid ECOMP-PORTAL Back-end Server.", "",
132 "Please check connectivity from this FE instance towards BE or BE Load Balancer."),
134 BeHealthCheckRecovery(EPErrorCodesEnum.BEHEALTHCHECKRECOVERY, ErrorTypeEnum.RECOVERY,
135 AlarmSeverityEnum.INFORMATIONAL, ErrorSeverityEnum.INFO,
137 "ECOMP-PORTAL Back-end Recovery to either one of the following components: MySQL DB, UEB Cluster", "",
138 "Please check logs for more specific information about the problem."),
140 BeHealthCheckMySqlRecovery(EPErrorCodesEnum.BEHEALTHCHECKMYSQLRECOVERY, ErrorTypeEnum.RECOVERY,
141 AlarmSeverityEnum.INFORMATIONAL, ErrorSeverityEnum.INFO,
142 "ERR206I", "ECOMP-PORTAL Back-end connection recovery to MySQL DB", "",
143 "Please check logs for more specific information about the problem."),
145 BeHealthCheckUebClusterRecovery(EPErrorCodesEnum.BEHEALTHCHECKUEBCLUSTERRECOVERY, ErrorTypeEnum.RECOVERY,
146 AlarmSeverityEnum.INFORMATIONAL, ErrorSeverityEnum.INFO,
147 "ERR208I", "ECOMP-PORTAL Back-end connection recovery to UEB Cluster", "",
148 "Please check logs for more specific information about the problem."),
150 FeHealthCheckRecovery(EPErrorCodesEnum.FEHEALTHCHECKRECOVERY, ErrorTypeEnum.RECOVERY,
151 AlarmSeverityEnum.INFORMATIONAL, ErrorSeverityEnum.INFO,
152 "ERR209I", "Connectivity to ECOMP-PORTAL Front-end Server is recovered", "",
153 "Please check logs for more specific information about the problem."),
155 BeUebConnectionError(EPErrorCodesEnum.BEUEBCONNECTIONERROR_ONE_ARGUMENT, ErrorTypeEnum.CONNECTION_PROBLEM,
156 AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
157 "ERR210E", "ECOMP-PORTAL Back-end probably lost connectivity to UEB Cluster", "Details: {0}.",
158 "Please check UEB server list and keys configured under Portal.Properties file."),
160 BeUebUnkownHostError(EPErrorCodesEnum.BEUEBUNKOWNHOSTERROR_ONE_ARGUMENT, ErrorTypeEnum.CONNECTION_PROBLEM,
161 AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
162 "ERR211E", "ECOMP-PORTAL Back-end probably lost connectivity to UEB Cluster", "Cannot reach host: {0}.",
163 "Please check UEB server list and keys configured under Portal.Properties file."),
165 BeUebRegisterOnboardingAppError(EPErrorCodesEnum.BEUEBREGISTERONBOARDINGAPPERROR,
166 ErrorTypeEnum.CONNECTION_PROBLEM, AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
167 "ERR212E", "Failed to register the On-boarding application with UEB Communication server",
168 "Details: {0}.", "Please check UEB server list and keys configured under Portal.Properties file."),
170 BeHttpConnectionError(EPErrorCodesEnum.BEHTTPCONNECTIONERROR_ONE_ARGUMENT, ErrorTypeEnum.CONNECTION_PROBLEM,
171 AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
173 "It could be that communication to an external application might resulted an exception or failed to reach the external application",
174 "Details: {0}.", "Please check logs for more information."),
175 MusicHealthCheckZookeeperError(EPErrorCodesEnum.MUSICHEALTHCHECKZOOKEEPERERROR_ONE_ARGUMENT,
176 ErrorTypeEnum.SYSTEM_ERROR, AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
177 "ERR214E", "Connectivity to Music Cluster -zookeeper server", "Details: {0}.",
178 "Please check zookeeper server list and check the logs for more information"),
180 MusicHealthCheckCassandraError(EPErrorCodesEnum.MUSICHEALTHCHECKCASSANDRAERROR_ONE_ARGUMENT,
181 ErrorTypeEnum.SYSTEM_ERROR, AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
182 "ERR215E", "Connectivity to Music Cluster -Cassandra server", "Details: {0}.",
183 "Please check Cassandra server list and check the logs for more information"),
185 InternalConnectionInfo(EPErrorCodesEnum.INTERNALCONNECTIONINFO_ONE_ARGUMENT, ErrorTypeEnum.CONNECTION_PROBLEM,
186 AlarmSeverityEnum.INFORMATIONAL, ErrorSeverityEnum.INFO,
187 "ERR299I", "Internal Connection problem", "Details: {0}.", "Please check logs for more information."),
189 InternalConnectionWarning(EPErrorCodesEnum.INTERNALCONNECTIONWARNING_ONE_ARGUMENT,
190 ErrorTypeEnum.CONNECTION_PROBLEM, AlarmSeverityEnum.MINOR, ErrorSeverityEnum.WARN,
191 "ERR299W", "Internal Connection problem", "Details: {0}.", "Please check logs for more information."),
193 InternalConnectionError(EPErrorCodesEnum.INTERNALCONNECTIONERROR_ONE_ARGUMENT, ErrorTypeEnum.CONNECTION_PROBLEM,
194 AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
195 "ERR299E", "Internal Connection problem", "Details: {0}.", "Please check logs for more information."),
197 InternalConnectionFatal(EPErrorCodesEnum.INTERNALCONNECTIONFATAL_ONE_ARGUMENT, ErrorTypeEnum.CONNECTION_PROBLEM,
198 AlarmSeverityEnum.CRITICAL, ErrorSeverityEnum.FATAL,
199 "ERR299F", "Internal Connection problem", "Details: {0}.", "Please check logs for more information."),
201 BeUebObjectNotFoundError(EPErrorCodesEnum.BEUEBOBJECTNOTFOUNDERROR_ONE_ARGUMENT, ErrorTypeEnum.DATA_ERROR,
202 AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
203 "ERR303E", "Error occurred during access to U-EB Server.", "Data not found: {0}.",
204 "An error occurred during access to UEB Server, {1} failed to either register or unregister to/from UEB topic."),
206 BeUserMissingError(EPErrorCodesEnum.BEUSERMISSINGERROR_ONE_ARGUMENT, ErrorTypeEnum.DATA_ERROR,
207 AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
208 "ERR310E", "User is not found", "",
209 "User {0} must be added to the corresponding application with proper user roles."),
211 BeUserInactiveWarning(EPErrorCodesEnum.BEUSERINACTIVEWARNING_ONE_ARGUMENT, ErrorTypeEnum.DATA_ERROR,
212 AlarmSeverityEnum.MINOR, ErrorSeverityEnum.WARN,
213 "ERR313W", "User is found but in-active", "",
214 "User {0} must be added to the corresponding application with proper user roles."),
216 BeUserAdminPrivilegesInfo(EPErrorCodesEnum.BEUSERADMINPRIVILEGESINFO_ONE_ARGUMENT, ErrorTypeEnum.DATA_ERROR,
217 AlarmSeverityEnum.MINOR, ErrorSeverityEnum.WARN,
218 "ERR314W", "User is found but don't have administrative privileges", "",
219 "User {0} should be given administrator role for the corresponding application to perform the necessary actions."),
221 BeInvalidJsonInput(EPErrorCodesEnum.BEINVALIDJSONINPUT, ErrorTypeEnum.SYSTEM_ERROR, AlarmSeverityEnum.MAJOR,
222 ErrorSeverityEnum.ERROR,
223 "ERR405E", "Failed to convert JSON input to object", "", "Please check logs for more information."),
225 BeIncorrectHttpStatusError(EPErrorCodesEnum.BEINCORRECTHTTPSTATUSERROR, ErrorTypeEnum.SYSTEM_ERROR,
226 AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
227 "ERR407E", "Communication to an external application is resulted in with Incorrect Http response code",
228 "", "Please check logs for more information."),
230 BeInitializationError(EPErrorCodesEnum.BEINITIALIZATIONERROR, ErrorTypeEnum.SYSTEM_ERROR,
231 AlarmSeverityEnum.CRITICAL, ErrorSeverityEnum.ERROR,
232 "ERR500E", "ECOMP-PORTAL Back-end was not initialized properly", "",
233 "Please check logs for more information."),
235 BeUebSystemError(EPErrorCodesEnum.BEUEBSYSTEMERROR, ErrorTypeEnum.SYSTEM_ERROR, AlarmSeverityEnum.MAJOR,
236 ErrorSeverityEnum.ERROR,
237 "ERR502E", "Error occurred during access to U-EB Server", "Details: {0}.",
238 "An error occurred in {1} distribution mechanism. Please check the logs for more information."),
240 BeDaoSystemError(EPErrorCodesEnum.BEDAOSYSTEMERROR, ErrorTypeEnum.SYSTEM_ERROR, AlarmSeverityEnum.CRITICAL,
241 ErrorSeverityEnum.ERROR,
242 "ERR505E", "Performing DDL or DML operations on database might have failed", "",
243 "Please check MySQL DB health or look at the logs for more details."),
245 BeSystemError(EPErrorCodesEnum.BESYSTEMERROR, ErrorTypeEnum.SYSTEM_ERROR, AlarmSeverityEnum.CRITICAL,
246 ErrorSeverityEnum.ERROR,
247 "ERR506E", "Unexpected error during operation", "", "Please check logs for more information."),
249 BeExecuteRollbackError(EPErrorCodesEnum.BEEXECUTEROLLBACKERROR, ErrorTypeEnum.DATA_ERROR,
250 AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
251 "ERR507E", "Roll-back operation towards database has failed", "",
252 "Please check MYSQL DB health or look at the logs for more details."),
254 FeHttpLoggingError(EPErrorCodesEnum.FEHTTPLOGGINGERROR, ErrorTypeEnum.SYSTEM_ERROR, AlarmSeverityEnum.MINOR,
255 ErrorSeverityEnum.ERROR,
256 "ERR517E", "Error when logging FE HTTP request/response", "",
257 "Please check MYSQL DB health or look at the logs for more details."),
259 FePortalServletError(EPErrorCodesEnum.FEPORTALSERVLETERROR, ErrorTypeEnum.SYSTEM_ERROR, AlarmSeverityEnum.MAJOR,
260 ErrorSeverityEnum.ERROR,
261 "ERR518E", "Error when trying to access FE Portal page.", "", "Please check logs for more information."),
263 BeDaoCloseSessionError(EPErrorCodesEnum.BEDAOCLOSESESSIONERROR, ErrorTypeEnum.SYSTEM_ERROR,
264 AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
265 "ERR519E", "Close local session operation with database failed", "",
266 "Please check MYSQL DB health or look at the logs form more details."),
268 BeRestApiGeneralError(EPErrorCodesEnum.BERESTAPIGENERALERROR, ErrorTypeEnum.SYSTEM_ERROR,
269 AlarmSeverityEnum.CRITICAL, ErrorSeverityEnum.ERROR,
270 "ERR900E", "Unexpected error during ECOMP-PORTAL Back-end REST API execution", "",
271 "Please check error log for more information."),
273 FeHealthCheckGeneralError(EPErrorCodesEnum.FEHEALTHCHECKGENERALERROR, ErrorTypeEnum.SYSTEM_ERROR,
274 AlarmSeverityEnum.CRITICAL, ErrorSeverityEnum.ERROR,
275 "ERR901E", "General error during FE Health Check", "", "Please check error log for more information."),
277 InternalUnexpectedInfo(EPErrorCodesEnum.INTERNALUNEXPECTEDINFO_ONE_ARGUMENT, ErrorTypeEnum.SYSTEM_ERROR,
278 AlarmSeverityEnum.INFORMATIONAL, ErrorSeverityEnum.INFO,
279 "ERR999I", "Unexpected error", "Details: {0}.", "Please check logs for more information."),
281 InternalUnexpectedWarning(EPErrorCodesEnum.INTERNALUNEXPECTEDWARNING_ONE_ARGUMENT, ErrorTypeEnum.SYSTEM_ERROR,
282 AlarmSeverityEnum.MINOR, ErrorSeverityEnum.WARN,
283 "ERR999W", "Unexpected error", "Details: {0}.", "Please check logs for more information."),
285 InternalUnexpectedError(EPErrorCodesEnum.INTERNALUNEXPECTEDERROR_ONE_ARGUMENT, ErrorTypeEnum.SYSTEM_ERROR,
286 AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
287 "ERR999E", "Unexpected error", "Details: {0}.", "Please check logs for more information."),
289 InternalUnexpectedFatal(EPErrorCodesEnum.INTERNALUNEXPECTEDFATAL_ONE_ARGUMENT, ErrorTypeEnum.SYSTEM_ERROR,
290 AlarmSeverityEnum.CRITICAL, ErrorSeverityEnum.FATAL,
291 "ERR999F", "Unexpected error", "Details: {0}.", "Please check logs for more information."),
293 ExternalAuthAccessConnectionError(EPErrorCodesEnum.EXTERNALAUTHACCESS_CONNECTIONERROR,
294 ErrorTypeEnum.CONNECTION_PROBLEM, AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
295 "ERR220E", "AAF Connection problem", "Details: {0}.", "Please check logs for more information."),
297 ExternalAuthAccessAuthenticationError(EPErrorCodesEnum.EXTERNALAUTHACCESS_AUTHENTICATIONERROR,
298 ErrorTypeEnum.AUTHENTICATION_PROBLEM, AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
299 "ERR120E", "AAF authentication problem", "Details: {0}.", "Please check logs for more information."),
301 ExternalAuthAccessGeneralError(EPErrorCodesEnum.EXTERNALAUTHACCESS_GENERALERROR, ErrorTypeEnum.SYSTEM_ERROR,
302 AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
303 "ERR520E", "Unexpected error", "Details: {0}.", "Please check logs for more information."),
305 SchedulerAccessConnectionError(EPErrorCodesEnum.SCHEDULER_ACCESS_CONNECTIONERROR,
306 ErrorTypeEnum.CONNECTION_PROBLEM, AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
307 "ERR240E", "Scheduler Connection problem", "Details: {0}.", "Please check logs for more information."),
309 SchedulerAuxAccessAuthenticationError(EPErrorCodesEnum.SCHEDULERAUX_ACCESS_AUTHENTICATIONERROR,
310 ErrorTypeEnum.AUTHENTICATION_PROBLEM, AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
311 "ERR140E", "SchedulerAux authentication problem", "Details: {0}.",
312 "Please check logs for more information."),
314 SchedulerAccessGeneralError(EPErrorCodesEnum.SCHEDULER_ACCESS_GENERALERROR, ErrorTypeEnum.SYSTEM_ERROR,
315 AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
316 "ERR540E", "Unexpected Scheduler error", "Details: {0}.", "Please check logs for more information."),
318 SchedulerInvalidAttributeError(EPErrorCodesEnum.SCHEDULER_INVALID_ATTRIBUTEERROR, ErrorTypeEnum.SYSTEM_ERROR,
319 AlarmSeverityEnum.MAJOR, ErrorSeverityEnum.ERROR,
320 "ERR515E", "Unable to create Scheduler", "Details: {0}.", "Please check logs for more information."),
324 final ErrorTypeEnum eType;
325 final AlarmSeverityEnum alarmSeverity;
326 final EPErrorCodesEnum messageCode;
327 final ErrorSeverityEnum errorSeverity;
328 final String errorCode;
329 final String errorDescription;
330 final String details;
331 final String resolution;
333 EPAppMessagesEnum(EPErrorCodesEnum messageCode, ErrorTypeEnum eType, AlarmSeverityEnum alarmSeverity,
334 ErrorSeverityEnum errorSeverity, String errorCode, String errorDescription,
335 String details, String resolution) {
336 this.messageCode = messageCode;
338 this.alarmSeverity = alarmSeverity;
339 this.errorSeverity = errorSeverity;
340 this.errorCode = errorCode;
341 this.errorDescription = errorDescription;
342 this.details = details;
343 this.resolution = resolution;
346 public String getDetails() {
350 public String getResolution() {
351 return this.resolution;
354 public String getErrorCode() {
355 return this.errorCode;
358 public String getErrorDescription() {
359 return this.errorDescription;
362 public ErrorSeverityEnum getErrorSeverity() {
363 return this.errorSeverity;
367 public EPErrorCodesEnum getMessageCode() {
372 public AlarmSeverityEnum getAlarmSeverity() {
373 return alarmSeverity;
377 public ErrorTypeEnum getErrorType() {