1 | 0 | package pt.digitalis.dif.utils.logging; |
2 | |
|
3 | |
import java.io.PrintWriter; |
4 | |
import java.io.StringWriter; |
5 | |
|
6 | |
import pt.digitalis.dif.utils.mail.MailSender; |
7 | |
import pt.digitalis.dif.utils.mail.MailType; |
8 | |
import pt.digitalis.log.LogLevel; |
9 | |
import pt.digitalis.utils.common.StringUtils; |
10 | |
|
11 | |
|
12 | |
|
13 | |
|
14 | |
|
15 | 0 | public class ErrorLogManagerDIFLoggerImpl implements IErrorLogManager { |
16 | |
|
17 | |
|
18 | |
|
19 | |
|
20 | |
|
21 | |
public void logError(String applicationName, String processName, Exception e) |
22 | |
{ |
23 | |
|
24 | 0 | String errorMessage = ""; |
25 | 0 | StringWriter errors = new StringWriter(); |
26 | 0 | e.printStackTrace(new PrintWriter(errors)); |
27 | 0 | errorMessage += "Exception: " + errors.toString() + "\n"; |
28 | |
|
29 | 0 | this.logError(applicationName, processName, errorMessage); |
30 | 0 | } |
31 | |
|
32 | |
|
33 | |
|
34 | |
|
35 | |
|
36 | |
public void logError(String applicationName, String processName, String errorDescription) |
37 | |
{ |
38 | |
|
39 | 0 | DIFLogger.getLogger().error( |
40 | 0 | "AplicationName: " + applicationName + " - ProcessName: " + processName + " - ErrorDescription: " |
41 | 0 | + errorDescription); |
42 | |
|
43 | 0 | if (!StringUtils.isBlank(LoggingConfiguration.getInstance().getErrorLogEmailAddress()) |
44 | 0 | && !StringUtils.isBlank(LoggingConfiguration.getInstance().getErrorLogEmailBody()) |
45 | 0 | && !StringUtils.isBlank(LoggingConfiguration.getInstance().getErrorLogEmailSubject())) |
46 | |
{ |
47 | |
try |
48 | |
{ |
49 | 0 | MailSender.getInstance().sendEmail(MailType.PLAIN_TEXT, |
50 | 0 | MailSender.getInstance().getConfiguration().getDefaultFromAddress(), |
51 | 0 | LoggingConfiguration.getInstance().getErrorLogEmailAddress(), null, null, |
52 | 0 | LoggingConfiguration.getInstance().getErrorLogEmailSubject(), |
53 | 0 | LoggingConfiguration.getInstance().getErrorLogEmailBody(), null, null, true); |
54 | |
} |
55 | 0 | catch (Exception e) |
56 | |
{ |
57 | 0 | DIFLogger.getLogger().log(LogLevel.INFO, "Error sending Email in ErrorLogManager" + e); |
58 | |
} |
59 | |
} |
60 | 0 | } |
61 | |
} |