diff options
Diffstat (limited to 'container-accesslogging/src')
-rw-r--r-- | container-accesslogging/src/main/java/com/yahoo/container/logging/TraceRenderer.java | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/container-accesslogging/src/main/java/com/yahoo/container/logging/TraceRenderer.java b/container-accesslogging/src/main/java/com/yahoo/container/logging/TraceRenderer.java index b974111b007..0c03dcad8dd 100644 --- a/container-accesslogging/src/main/java/com/yahoo/container/logging/TraceRenderer.java +++ b/container-accesslogging/src/main/java/com/yahoo/container/logging/TraceRenderer.java @@ -1,5 +1,8 @@ package com.yahoo.container.logging; +import com.yahoo.data.access.Inspectable; +import com.yahoo.data.access.Inspector; +import com.yahoo.data.access.simple.JsonRender; import com.yahoo.yolean.trace.TraceNode; import com.yahoo.yolean.trace.TraceVisitor; import com.fasterxml.jackson.core.JsonGenerator; @@ -33,7 +36,16 @@ public class TraceRenderer extends TraceVisitor { @Override public void consume(Object object) throws IOException { - generator.writeObject(object); + if (object instanceof Inspectable) { + renderInspectorDirect(((Inspectable) object).inspect()); + } else { + generator.writeObject(object); + } + } + private void renderInspectorDirect(Inspector data) throws IOException { + StringBuilder intermediate = new StringBuilder(); + JsonRender.render(data, intermediate, true); + generator.writeRawValue(intermediate.toString()); } } |