subscriber: Add the closing } to the JSON logs (#415)

## Motivation

JSON log lines are not correct JSON, the ending `}` is missing.

## Solution

Ending the `SerializeMap` correctly.
This commit is contained in:
Julius de Bruijn 2019-11-05 21:17:48 +00:00 committed by Eliza Weisman
parent e53df802de
commit 72bffa2d4f

View File

@ -58,7 +58,8 @@ where
serializer.serialize_entry("target", meta.target())?; serializer.serialize_entry("target", meta.target())?;
} }
serializer.serialize_entry("fields", &event.field_map()) serializer.serialize_entry("fields", &event.field_map())?;
serializer.end()
}; };
visit().map_err(|_| fmt::Error)?; visit().map_err(|_| fmt::Error)?;
@ -264,7 +265,7 @@ mod test {
let make_writer = || MockWriter::new(&BUF); let make_writer = || MockWriter::new(&BUF);
let expected = let expected =
"{\"timestamp\":\"fake time\",\"level\":\"INFO\",\"span\":{\"name\":\"json_span\",\"fields\":\"{\\\"answer\\\":42,\\\"number\\\":3}\"},\"target\":\"tracing_subscriber::fmt::format::json::test\",\"fields\":{\"message\":\"some json test\"}\n"; "{\"timestamp\":\"fake time\",\"level\":\"INFO\",\"span\":{\"name\":\"json_span\",\"fields\":\"{\\\"answer\\\":42,\\\"number\\\":3}\"},\"target\":\"tracing_subscriber::fmt::format::json::test\",\"fields\":{\"message\":\"some json test\"}}\n";
test_json(make_writer, expected, &BUF); test_json(make_writer, expected, &BUF);
} }