in jboss-logmanager-ecs-formatter/src/main/java/co/elastic/logging/jboss/logmanager/EcsFormatter.java [59:91]
public String format(ExtLogRecord record) {
StringBuilder builder = new StringBuilder();
EcsJsonSerializer.serializeObjectStart(builder, record.getMillis());
EcsJsonSerializer.serializeLogLevel(builder, record.getLevel().getName());
EcsJsonSerializer.serializeFormattedMessage(builder, record.getFormattedMessage());
EcsJsonSerializer.serializeEcsVersion(builder);
EcsJsonSerializer.serializeServiceName(builder, serviceName);
EcsJsonSerializer.serializeServiceVersion(builder, serviceVersion);
EcsJsonSerializer.serializeServiceEnvironment(builder, serviceEnvironment);
EcsJsonSerializer.serializeServiceNodeName(builder, serviceNodeName);
EcsJsonSerializer.serializeEventDataset(builder, eventDataset);
EcsJsonSerializer.serializeThreadName(builder, record.getThreadName());
EcsJsonSerializer.serializeLoggerName(builder, record.getLoggerName());
EcsJsonSerializer.serializeAdditionalFields(builder, additionalFields);
EcsJsonSerializer.serializeMDC(builder, record.getMdcCopy());
String ndc = record.getNdc();
if (ndc != null && !ndc.isEmpty()) {
EcsJsonSerializer.serializeTagStart(builder);
for (String tag : ndc.split("\\.")) {
EcsJsonSerializer.serializeSingleTag(builder, tag);
}
EcsJsonSerializer.serializeTagEnd(builder);
}
if (includeOrigin && record.getSourceFileName() != null && record.getSourceMethodName() != null) {
EcsJsonSerializer.serializeOrigin(builder, record.getSourceFileName(), record.getSourceMethodName(), record.getSourceLineNumber());
}
Throwable throwable = record.getThrown();
if (throwable != null) {
EcsJsonSerializer.serializeException(builder, throwable, stackTraceAsArray);
}
EcsJsonSerializer.serializeObjectEnd(builder);
return builder.toString();
}