diff --git a/connectivity/service/src/main/java/org/eclipse/ditto/connectivity/service/messaging/monitoring/logs/FluentPublishingConnectionLogger.java b/connectivity/service/src/main/java/org/eclipse/ditto/connectivity/service/messaging/monitoring/logs/FluentPublishingConnectionLogger.java index 20327fef98..941b03309c 100644 --- a/connectivity/service/src/main/java/org/eclipse/ditto/connectivity/service/messaging/monitoring/logs/FluentPublishingConnectionLogger.java +++ b/connectivity/service/src/main/java/org/eclipse/ditto/connectivity/service/messaging/monitoring/logs/FluentPublishingConnectionLogger.java @@ -157,6 +157,8 @@ private void emitLogEntry(final ConnectionMonitor.InfoProvider infoProvider, fin private void emitLogEntry(final LogEntry logEntry) { if (logLevels.contains(logEntry.getLogLevel())) { + final String correlationId = InfoProviderFactory.FALLBACK_CORRELATION_ID + .equals(logEntry.getCorrelationId()) ? null : logEntry.getCorrelationId(); try { final Instant timestamp = logEntry.getTimestamp(); final EventTime eventTime = EventTime.fromEpoch(timestamp.getEpochSecond(), timestamp.getNano()); @@ -166,7 +168,9 @@ private void emitLogEntry(final LogEntry logEntry) { logMap.put(TAG_LEVEL, logEntry.getLogLevel().toString()); logMap.put(TAG_CATEGORY, logEntry.getLogCategory().toString()); logMap.put(TAG_TYPE, logEntry.getLogType().toString()); - logMap.put(TAG_CORRELATION_ID, logEntry.getCorrelationId()); + if (null != correlationId) { + logMap.put(TAG_CORRELATION_ID, correlationId); + } logEntry.getAddress().ifPresent(address -> logMap.put(TAG_ADDRESS, address)); logEntry.getEntityId().ifPresent(entityId -> { logMap.put(TAG_ENTITY_TYPE, entityId.getEntityType().toString()); @@ -180,11 +184,11 @@ private void emitLogEntry(final LogEntry logEntry) { fluencyForwarder.emit(fluentTag, eventTime, logMap); } catch (final BufferFullException e) { - LOGGER.withCorrelationId(logEntry.getCorrelationId()) + LOGGER.withCorrelationId(correlationId) .error("Got BufferFullException when trying to emit further connection log entries to fluentd: {}", e.getMessage()); } catch (final IOException e) { - LOGGER.withCorrelationId(logEntry.getCorrelationId()) + LOGGER.withCorrelationId(correlationId) .error("Got IOException when trying to emit further connection log entries to fluentd: <{}>: {}", e.getClass().getSimpleName(), e.getMessage()); } diff --git a/connectivity/service/src/main/java/org/eclipse/ditto/connectivity/service/messaging/monitoring/logs/InfoProviderFactory.java b/connectivity/service/src/main/java/org/eclipse/ditto/connectivity/service/messaging/monitoring/logs/InfoProviderFactory.java index 77b092f11e..df3c916f59 100644 --- a/connectivity/service/src/main/java/org/eclipse/ditto/connectivity/service/messaging/monitoring/logs/InfoProviderFactory.java +++ b/connectivity/service/src/main/java/org/eclipse/ditto/connectivity/service/messaging/monitoring/logs/InfoProviderFactory.java @@ -34,7 +34,7 @@ */ public final class InfoProviderFactory { - private static final String FALLBACK_CORRELATION_ID = ""; + public static final String FALLBACK_CORRELATION_ID = ""; private InfoProviderFactory() { throw new AssertionError();