@Test public void testBuilder() { final String testMsg = "Test message {}"; final StringMapMessage msg = new StringMapMessage() .with("message", testMsg) .with("project", "Log4j"); final String result = msg.getFormattedMessage(); final String expected = "message=\"Test message {}\" project=\"Log4j\""; assertEquals(expected, result); }
@Test public void testMapMessageFormatXml() throws Exception { final MessagePatternConverter converter = MessagePatternConverter.newInstance(null, new String[]{"xml"}); Message msg = new StringMapMessage() .with("key", "val"); LogEvent event = Log4jLogEvent.newBuilder() // .setLoggerName("MyLogger") // .setLevel(Level.DEBUG) // .setMessage(msg).build(); StringBuilder sb = new StringBuilder(); converter.format(event, sb); assertEquals("Unexpected result", "<Map>\n <Entry key=\"key\">val</Entry>\n</Map>", sb.toString()); }
logger.error("Sample error message"); logger.error("Test parameterized message {}", "param"); logger.error(new StringMapMessage().with("eventId", "Login")); // initialize GelfLayout's messageStringBuilder for (int i = 0; i < 256; i++) { logger.debug("ensure all ringbuffer slots have been used once"); // allocate MutableLogEvent.messageText final StringMapMessage mapMessage = new StringMapMessage().with("eventId", "Login"); AllocationRecorder.addSampler(sampler);
@Test public void testMapMessageFormatDefault() throws Exception { final MessagePatternConverter converter = MessagePatternConverter.newInstance(null, null); Message msg = new StringMapMessage() .with("key", "val"); LogEvent event = Log4jLogEvent.newBuilder() // .setLoggerName("MyLogger") // .setLevel(Level.DEBUG) // .setMessage(msg).build(); StringBuilder sb = new StringBuilder(); converter.format(event, sb); assertEquals("Unexpected result", "key=\"val\"", sb.toString()); }
@Test public void testMapMessageFormatJson() throws Exception { final MessagePatternConverter converter = MessagePatternConverter.newInstance(null, new String[]{"json"}); Message msg = new StringMapMessage() .with("key", "val"); LogEvent event = Log4jLogEvent.newBuilder() // .setLoggerName("MyLogger") // .setLevel(Level.DEBUG) // .setMessage(msg).build(); StringBuilder sb = new StringBuilder(); converter.format(event, sb); assertEquals("Unexpected result", "{\"key\":\"val\"}", sb.toString()); }