Skip to content

Commit

Permalink
Endret servlet logging oppsett til å følge samme oppsett som reactive…
Browse files Browse the repository at this point in the history
… versjonen
  • Loading branch information
stigus committed Apr 30, 2024
1 parent 045cafa commit 44a18fc
Showing 1 changed file with 21 additions and 3 deletions.
Original file line number Diff line number Diff line change
@@ -1,15 +1,19 @@
package no.nav.testnav.libs.servletcore.logging;

import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.classic.spi.ThrowableProxyUtil;
import ch.qos.logback.classic.spi.ThrowableProxy;
import com.fasterxml.jackson.core.JsonFactory;
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import net.logstash.logback.encoder.LogstashEncoder;

import java.io.ByteArrayOutputStream;
import java.io.PrintWriter;
import java.io.StringWriter;
import java.util.regex.Pattern;

import static java.util.Objects.isNull;

@Slf4j
public class TestnavLogbackEncoder extends LogstashEncoder {

Expand All @@ -32,8 +36,17 @@ public byte[] encode(ILoggingEvent event) {
generator.writeStringField("thread_name", event.getThreadName());
generator.writeStringField("level", event.getLevel().toString());

if (event.getThrowableProxy() != null) {
generator.writeStringField("stack_trace", ThrowableProxyUtil.asString(event.getThrowableProxy()));
if (!isNull(event.getThrowableProxy())) {
var exception = (ThrowableProxy) event.getThrowableProxy();
if (!isNull(exception.getThrowable())) {
StringWriter sw = new StringWriter();
PrintWriter pw = new PrintWriter(sw);
for (StackTraceElement element : exception.getThrowable().getStackTrace()) {
pw.println("\tat " + element);
}
String stackTrace = sw.toString().substring(0, 480); //Limit the stack trace to 480 characters
generator.writeStringField("stack_trace", stackTrace);
}
}

generator.writeEndObject();
Expand All @@ -47,6 +60,11 @@ public byte[] encode(ILoggingEvent event) {
private String formatMessage(String message) {
var matcher = pattern.matcher(message);

if (!matcher.find()) {
return message;
}

matcher.reset();
var result = new StringBuilder();

while (matcher.find()) {
Expand Down

0 comments on commit 44a18fc

Please sign in to comment.