Skip to content

Commit 8d3f6ee

Browse files
Formatter added in Java Util Logging Handler
Update: - Event message with string formatter issue is fixed by adding Formatter while sending events.
1 parent 27f862d commit 8d3f6ee

File tree

2 files changed

+18
-5
lines changed

2 files changed

+18
-5
lines changed

src/main/java/com/splunk/logging/HttpEventCollectorLoggingHandler.java

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,10 @@
8383
import com.google.gson.Gson;
8484
import com.splunk.logging.hec.MetadataTags;
8585

86-
import java.util.*;
86+
import java.util.HashMap;
87+
import java.util.LinkedHashMap;
88+
import java.util.Locale;
89+
import java.util.Map;
8790
import java.util.logging.*;
8891

8992
/**
@@ -258,10 +261,19 @@ public void publish(LogRecord record) {
258261
isExceptionOccured = true;
259262
}
260263

264+
/*
265+
Initializing a formatter for Java Util Logging.
266+
This will be used when placeholders are used for event logging in log methods.
267+
*/
268+
Formatter messageFormatter = getFormatter();
269+
if (messageFormatter == null) {
270+
messageFormatter = new SimpleFormatter();
271+
}
272+
261273
this.sender.send(
262274
record.getMillis(),
263275
record.getLevel().toString(),
264-
record.getMessage(),
276+
messageFormatter.formatMessage(record),
265277
includeLoggerName ? record.getLoggerName() : null,
266278
includeThreadName ? String.format(Locale.US, "%d", record.getThreadID()) : null,
267279
null, // no property map available

src/test/java/HttpEventCollector_JavaLoggingTest.java

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,17 +14,18 @@
1414
* under the License.
1515
*/
1616

17-
import java.util.*;
18-
1917
import com.google.gson.JsonObject;
2018
import com.google.gson.JsonPrimitive;
2119
import com.splunk.logging.HttpEventCollectorErrorHandler;
2220
import com.splunk.logging.HttpEventCollectorEventInfo;
23-
2421
import org.apache.commons.lang3.StringUtils;
2522
import org.junit.Assert;
2623
import org.junit.Test;
2724

25+
import java.util.ArrayList;
26+
import java.util.Date;
27+
import java.util.HashMap;
28+
import java.util.List;
2829
import java.util.logging.Logger;
2930

3031
public final class HttpEventCollector_JavaLoggingTest {

0 commit comments

Comments
 (0)