tracing 0.0.2.0 → 0.0.2.1
raw patch · 2 files changed
+11/−11 lines, 2 filesPVP: major bump suggested
API removals or changes: PVP suggests a major version bump
API changes (from Hackage documentation)
- Monitor.Tracing.Zipkin: Settings :: !HostName -> !PortNumber -> !Maybe Endpoint -> !Maybe Manager -> !NominalDiffTime -> Settings
+ Monitor.Tracing.Zipkin: Settings :: !Maybe HostName -> !Maybe PortNumber -> !Maybe Endpoint -> !Maybe Manager -> !Maybe NominalDiffTime -> Settings
- Monitor.Tracing.Zipkin: [settingsHostname] :: Settings -> !HostName
+ Monitor.Tracing.Zipkin: [settingsHostname] :: Settings -> !Maybe HostName
- Monitor.Tracing.Zipkin: [settingsPort] :: Settings -> !PortNumber
+ Monitor.Tracing.Zipkin: [settingsPort] :: Settings -> !Maybe PortNumber
- Monitor.Tracing.Zipkin: [settingsPublishPeriod] :: Settings -> !NominalDiffTime
+ Monitor.Tracing.Zipkin: [settingsPublishPeriod] :: Settings -> !Maybe NominalDiffTime
Files
- src/Monitor/Tracing/Zipkin.hs +10/−10
- tracing.cabal +1/−1
src/Monitor/Tracing/Zipkin.hs view
@@ -32,8 +32,8 @@ import Data.IORef (modifyIORef, newIORef, readIORef) import Data.Map.Strict (Map) import qualified Data.Map.Strict as Map-import Data.Maybe (catMaybes, listToMaybe, maybe, maybeToList)-import Data.Monoid (Endo(..))+import Data.Maybe (catMaybes, fromMaybe, listToMaybe, maybe, maybeToList)+import Data.Monoid ((<>), Endo(..)) import Data.Set (Set) import Data.Text (Text) import qualified Data.Text as T@@ -48,22 +48,22 @@ -- | Zipkin creating settings. data Settings = Settings- { settingsHostname :: !HostName+ { settingsHostname :: !(Maybe HostName) -- ^ The Zipkin server's hostname.- , settingsPort :: !PortNumber+ , settingsPort :: !(Maybe PortNumber) -- ^ The port the Zipkin server is listening on. , settingsEndpoint :: !(Maybe Endpoint) -- ^ Local endpoint used for all published spans. , settingsManager :: !(Maybe Manager) -- ^ An optional HTTP manager to use for publishing spans on the Zipkin server.- , settingsPublishPeriod :: !NominalDiffTime+ , settingsPublishPeriod :: !(Maybe NominalDiffTime) -- ^ If set to a positive value, traces will be flushed in the background every such period. } -- | Creates 'Settings' pointing to a Zikpin server at host @"localhost"@ and port @9411@, without -- background flushing. defaultSettings :: Settings-defaultSettings = Settings "localhost" 9411 Nothing Nothing 0+defaultSettings = Settings Nothing Nothing Nothing Nothing Nothing -- | A Zipkin trace publisher. data Zipkin = Zipkin@@ -87,16 +87,16 @@ -- | Creates a 'Zipkin' publisher for the input 'Settings'. new :: MonadIO m => Settings -> m Zipkin-new (Settings hostname port mbEpt mbMgr prd) = liftIO $ do+new (Settings mbHostname mbPort mbEpt mbMgr mbPrd) = liftIO $ do mgr <- maybe (HTTP.newManager HTTP.defaultManagerSettings) pure mbMgr tracer <- newTracer let req = HTTP.defaultRequest { HTTP.method = "POST"- , HTTP.host = BS.pack hostname+ , HTTP.host = BS.pack (fromMaybe "localhost" mbHostname) , HTTP.path = "/api/v2/spans"- , HTTP.port = fromIntegral port }- void $ if prd <= 0+ , HTTP.port = maybe 9411 fromIntegral mbPort }+ void $ let prd = fromMaybe 0 mbPrd in if prd <= 0 then pure Nothing else fmap Just $ forkIO $ forever $ do threadDelay (microSeconds prd)
tracing.cabal view
@@ -1,5 +1,5 @@ name: tracing-version: 0.0.2.0+version: 0.0.2.1 synopsis: Distributed tracing description: https://github.com/mtth/tracing homepage: https://github.com/mtth/tracing