Skip to content

Commit a5f9454

Browse files
committed
Updating SensitiveLogger
1 parent d489904 commit a5f9454

File tree

1 file changed

+47
-37
lines changed

1 file changed

+47
-37
lines changed

src/main/java/net/authorize/util/SensitiveFilterLayout.java

Lines changed: 47 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -24,49 +24,59 @@ public class SensitiveFilterLayout extends PatternLayout{
2424
private static Gson gson;
2525

2626
public SensitiveFilterLayout() throws UnsupportedEncodingException, FileNotFoundException, IOException {
27-
GsonBuilder gsonBuilder = new GsonBuilder();
28-
gsonBuilder.registerTypeAdapter(SensitiveDataConfigType.class, new SensitiveTagsDeserializer());
29-
gson = gsonBuilder.create();
30-
31-
InputStream in = getClass().getResourceAsStream("/AuthorizedNetSensitiveTagsConfig.json");
32-
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
33-
SensitiveDataConfigType configType = gson.fromJson(reader, SensitiveDataConfigType.class);
34-
cardPatterns = new Pattern[configType.sensitiveStringRegexes.length];
27+
try {
28+
GsonBuilder gsonBuilder = new GsonBuilder();
29+
gsonBuilder.registerTypeAdapter(SensitiveDataConfigType.class, new SensitiveTagsDeserializer());
30+
gson = gsonBuilder.create();
31+
32+
InputStream in = getClass().getResourceAsStream("/AuthorizedNetSensitiveTagsConfig.json");
33+
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
34+
SensitiveDataConfigType configType = gson.fromJson(reader, SensitiveDataConfigType.class);
35+
cardPatterns = new Pattern[configType.sensitiveStringRegexes.length];
3536

36-
for(int i = 0; i < configType.sensitiveStringRegexes.length; i++) {
37-
cardPatterns[i] = Pattern.compile(configType.sensitiveStringRegexes[i]);
38-
}
39-
40-
int noOfSensitiveTags = configType.sensitiveTags.length;
41-
tagPatterns = new Pattern[noOfSensitiveTags];
42-
tagReplacements = new String[noOfSensitiveTags];
43-
44-
for(int j=0; j<noOfSensitiveTags; j++) {
45-
String tagName = configType.sensitiveTags[j].tagName;
46-
String pattern = configType.sensitiveTags[j].pattern;
47-
String replacement = configType.sensitiveTags[j].replacement;
48-
49-
if(pattern != null && !pattern.isEmpty())
50-
tagPatterns[j] = Pattern.compile("<"+tagName+">"+pattern+"</"+tagName+">");
51-
else
52-
tagPatterns[j] = Pattern.compile("<"+tagName+">"+".+"+"</"+tagName+">");
53-
tagReplacements[j] = "<"+tagName+">"+replacement+"</"+tagName+">";
54-
}
55-
if(reader!=null)
56-
reader.close();
37+
for(int i = 0; i < configType.sensitiveStringRegexes.length; i++) {
38+
cardPatterns[i] = Pattern.compile(configType.sensitiveStringRegexes[i]);
39+
}
40+
41+
int noOfSensitiveTags = configType.sensitiveTags.length;
42+
tagPatterns = new Pattern[noOfSensitiveTags];
43+
tagReplacements = new String[noOfSensitiveTags];
44+
45+
for(int j=0; j<noOfSensitiveTags; j++) {
46+
String tagName = configType.sensitiveTags[j].tagName;
47+
String pattern = configType.sensitiveTags[j].pattern;
48+
String replacement = configType.sensitiveTags[j].replacement;
49+
50+
if(pattern != null && !pattern.isEmpty())
51+
tagPatterns[j] = Pattern.compile("<"+tagName+">"+pattern+"</"+tagName+">");
52+
else
53+
tagPatterns[j] = Pattern.compile("<"+tagName+">"+".+"+"</"+tagName+">");
54+
tagReplacements[j] = "<"+tagName+">"+replacement+"</"+tagName+">";
55+
}
56+
if(reader!=null)
57+
reader.close();
58+
}
59+
catch(Exception e) {
60+
61+
}
5762
}
5863

5964
@Override
6065
public String format(LoggingEvent event) {
61-
if(event.getMessage() instanceof String) {
62-
String message = event.getRenderedMessage();
63-
String maskXmlMessage = SensitiveFilterLayout.maskSensitiveXmlString(message);
64-
String maskCardNumber = SensitiveFilterLayout.maskCreditCards(maskXmlMessage);
66+
try {
67+
if(event.getMessage() instanceof String) {
68+
String message = event.getRenderedMessage();
69+
String maskXmlMessage = SensitiveFilterLayout.maskSensitiveXmlString(message);
70+
String maskCardNumber = SensitiveFilterLayout.maskCreditCards(maskXmlMessage);
71+
72+
Throwable throwable = event.getThrowableInformation() != null ? event.getThrowableInformation().getThrowable() : null;
73+
LoggingEvent maskedEvent = new LoggingEvent(event.fqnOfCategoryClass, Logger.getLogger(event.getLoggerName()), event.timeStamp, event.getLevel(), maskCardNumber, throwable);
74+
return super.format(maskedEvent);
75+
}
76+
}
77+
catch(Exception e) {
6578

66-
Throwable throwable = event.getThrowableInformation() != null ? event.getThrowableInformation().getThrowable() : null;
67-
LoggingEvent maskedEvent = new LoggingEvent(event.fqnOfCategoryClass, Logger.getLogger(event.getLoggerName()), event.timeStamp, event.getLevel(), maskCardNumber, throwable);
68-
return super.format(maskedEvent);
69-
}
79+
}
7080
return null;
7181
}
7282

0 commit comments

Comments
 (0)