Commit 67f8327cdec720ec242f201e9f946bba4cad84d5
1 parent
872a6fb4
Minor improvements for event truncation
Showing
1 changed file
with
6 additions
and
6 deletions
... | ... | @@ -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 | } | ... | ... |