@@ -8,6 +8,7 @@ import Data.Aeson
88import Data.Aeson.Text
99import Data.ByteString.Builder as B
1010import Data.ByteString.Lazy as BL (hPutStr)
11+import Data.ByteString.Lazy.Char8 as BL (singleton)
1112import Data.Monoid as M
1213import Data.Scientific as S
1314import Data.Text (Text)
@@ -29,8 +30,8 @@ brackets m = fromText "[" M.<> m <> fromText "]"
2930textBuilderToBS :: TL.Builder -> B.Builder
3031textBuilderToBS = B.lazyByteString . encodeUtf8 . toLazyText
3132
32−appendNL :: TL.Builder -> TL.Builder
33−appendNL b = b <> TL.singleton '\n'
33+appendNL :: B.Builder -> B.Builder
34+appendNL b = b <> B.lazyByteString (BL.singleton '\n')
3435
3536-------------------------------------------------------------------------------
3637getKeys :: LogItem s => Verbosity -> s -> [TL.Builder]
@@ -137,7 +138,7 @@ formatItem = bracketFormat
137138-- > [2016-05-11 21:01:15][MyApp.confrabulation][Debug][myhost.example.com][PID 1724][ThreadId 1154][confrab_factor:42.0][main:Helpers.Logging Helpers/Logging.hs:41:9] Confrabulating widgets, with extra namespace and context
138139-- > [2016-05-11 21:01:15][MyApp][Info][myhost.example.com][PID 1724][ThreadId 1154][main:Helpers.Logging Helpers/Logging.hs:43:7] Namespace and context are back to normal
139140bracketFormat :: LogItem a => ItemFormatter a
140−bracketFormat withColor verb Item{..} = textBuilderToBS $ appendNL $
141+bracketFormat withColor verb Item{..} = appendNL $ textBuilderToBS $
141142 brackets nowStr <>
142143 brackets (mconcat $ map fromText $ intercalateNs _itemNamespace) <>
143144 brackets (renderSeverity' _itemSeverity) <>
@@ -161,8 +162,8 @@ bracketFormat withColor verb Item{..} = textBuilderToBS $ appendNL $
161162-- > {"at":"2018-10-02T21:50:30.4523848Z","env":"production","ns":["MyApp","confrabulation"],"data":{"confrab_factor":42},"app":["MyApp"],"msg":"Confrabulating widgets, with extra namespace and context","pid":"10456","loc":{"loc_col":11,"loc_pkg":"main","loc_mod":"Helpers.Logging","loc_fn":"Helpers\\Logging.hs","loc_ln":53},"host":"myhost.example.com","sev":"Debug","thread":"ThreadId 139"}
162163-- > {"at":"2018-10-02T21:50:30.4523848Z","env":"production","ns":["MyApp"],"data":{},"app":["MyApp"],"msg":"Namespace and context are back to normal","pid":"10456","loc":{"loc_col":9,"loc_pkg":"main","loc_mod":"Helpers.Logging","loc_fn":"Helpers\\Logging.hs","loc_ln":55},"host":"myhost.example.com","sev":"Info","thread":"ThreadId 139"}
163164jsonFormat :: LogItem a => ItemFormatter a
164−jsonFormat withColor verb i = textBuilderToBS $
165− appendNL $
165+jsonFormat withColor verb i = appendNL $
166+ textBuilderToBS $
166167 colorBySeverity withColor (_itemSeverity i) $
167168 encodeToTextBuilder $ itemJson verb i
168169