private void dumpYamlDiff(final String path,
                              final InputStream in,
                              final ObjectMapper mapper,
                              final JsonNode rootNode) throws IOException {
        in.reset();
        try {
            final String originalYaml = StreamUtil.streamToString(in);
            final String newYaml = mapper.writeValueAsString(rootNode);
            DiffUtil.unifiedDiff(
                    originalYaml,
                    newYaml,
                    true,
                    3,
                    diffLines ->
                            log("Comparing original and modified yaml:\n{}",
                                    String.join("\n", diffLines)));
        } catch (IOException e) {
            log("Unable to read file " + path, e);
        }
    }
Merge our compile time defaults with the de-serialised config so we have a full tree
stroom-config/stroom-config-app/src/main/java/stroom/config/app/StroomConfigurationSourceProvider.java