@@ -5,6 +5,7 @@ module Katip.Scribes.ElasticSearch where
55import Control.Monad
66import Data.UUID
77import Database.Bloodhound
8+import Network.HTTP.Client
89import System.Random
910-------------------------------------------------------------------------------
1011import Katip.Core
@@ -13,16 +14,22 @@ import Katip.Core
1314
1415-------------------------------------------------------------------------------
1516mkEsScribe
16− :: Server
17+ :: ManagerSettings
18+ -> Server
1719 -> IndexName
1820 -> MappingName
1921 -> Severity
2022 -> Verbosity
2123 -> IO Scribe
22−mkEsScribe server ix mapping sev verb = return $ Scribe $ \ i -> do
23− did <- mkDocId
24− when (_itemSeverity i >= sev) $
25− void $ indexDocument server ix mapping (itemJson verb i) did
24+mkEsScribe ms server ix mapping sev verb =
25+ withManager ms $ \mgr -> do
26+ let env = BHEnv { bhServer = server
27+ , bhManager = mgr
28+ }
29+ return $ Scribe $ \ i -> do
30+ did <- mkDocId
31+ when (_itemSeverity i >= sev) $
32+ void $ runBH env $ indexDocument ix mapping (itemJson verb i) did
2633
2734
2835-------------------------------------------------------------------------------