Package org.zalando.logbook.json
Class JsonHttpLogFormatter
- java.lang.Object
-
- org.zalando.logbook.json.JsonHttpLogFormatter
-
- All Implemented Interfaces:
HttpLogFormatter,StructuredHttpLogFormatter
@API(status=STABLE) public final class JsonHttpLogFormatter extends Object implements StructuredHttpLogFormatter
A customHttpLogFormatterthat produces JSON objects. It can be augmented with composition:public class CustomsFormatter implements HttpLogFormatter { private final JsonHttpLogFormatter delegate; public CustomsFormatter(ObjectMapper mapper) { this.delegate = new JsonHttpLogFormatter(mapper); } public String format(Precorrelation precorrelation, HttpRequest request) throws IOException { Map<String, Object> content = delegate.prepare(precorrelation, request); // modify request here return delegate.format(content); } public String format(Correlation correlation, HttpResponse response) throws IOException { Map<String, Object> content = delegate.prepare(correlation, response); // modify response here return delegate.format(content); } }
-
-
Constructor Summary
Constructors Constructor Description JsonHttpLogFormatter()JsonHttpLogFormatter(com.fasterxml.jackson.databind.ObjectMapper mapper)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description Stringformat(Map<String,Object> content)Optional<Object>prepareBody(HttpMessage message)-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.zalando.logbook.StructuredHttpLogFormatter
format, format, prepare, prepare, prepareHeaders
-
-
-
-
Method Detail
-
prepareBody
public Optional<Object> prepareBody(HttpMessage message) throws IOException
- Specified by:
prepareBodyin interfaceStructuredHttpLogFormatter- Throws:
IOException
-
format
public String format(Map<String,Object> content) throws IOException
- Specified by:
formatin interfaceStructuredHttpLogFormatter- Throws:
IOException
-
-