Commit 67f8327cdec720ec242f201e9f946bba4cad84d5

Authored by Andrii Shvaika
1 parent 872a6fb4

Minor improvements for event truncation

... ... @@ -37,7 +37,7 @@ import java.util.Optional;
37 37 @Slf4j
38 38 public class BaseEventService implements EventService {
39 39
40   - private static final int MAX_DEBUG_EVENT_IN_BYTES = 10 * 1024;
  40 + private static final int MAX_DEBUG_EVENT_SYMBOLS = 4 * 1024;
41 41
42 42 @Autowired
43 43 public EventDao eventDao;
... ... @@ -66,12 +66,12 @@ public class BaseEventService implements EventService {
66 66 }
67 67
68 68 private void checkAndTruncateDebugEvent(Event event) {
69   - if (event.getType().startsWith("DEBUG")) {
  69 + if (event.getType().startsWith("DEBUG") && event.getBody() != null && event.getBody().has("data")) {
70 70 String dataStr = event.getBody().get("data").asText();
71   - int dataSize = dataStr.getBytes(StandardCharsets.UTF_8).length;
72   - if (dataSize > MAX_DEBUG_EVENT_IN_BYTES) {
73   - ((ObjectNode) event.getBody()).put("data", dataStr.substring(0, 1024));
74   - log.trace("[{}] Event was truncated.", event.getId());
  71 + int length = dataStr.length();
  72 + if (length > MAX_DEBUG_EVENT_SYMBOLS) {
  73 + ((ObjectNode) event.getBody()).put("data", dataStr.substring(0, MAX_DEBUG_EVENT_SYMBOLS) + "...[truncated " + (length - MAX_DEBUG_EVENT_SYMBOLS) + " symbols]");
  74 + log.trace("[{}] Event was truncated: {}", event.getId(), dataStr);
75 75 }
76 76 }
77 77 }
... ...